summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2021-05-11 22:49:21 +0800
committerIru Cai <mytbk920423@gmail.com>2021-05-11 22:49:21 +0800
commit64a368a91ddeabc8f9c440bb692f1cbd52aa9471 (patch)
tree18f0b811cc57fabea4d9a30b6949ea78ee43ae8a
parenta4adeb33be9a222042e8cd2a74048a6635459744 (diff)
downloadrich4-64a368a91ddeabc8f9c440bb692f1cbd52aa9471.tar.xz
remove players[] in asm
-rw-r--r--asm/rich4.asm3322
1 files changed, 1585 insertions, 1737 deletions
diff --git a/asm/rich4.asm b/asm/rich4.asm
index 124324b..094e2a0 100644
--- a/asm/rich4.asm
+++ b/asm/rich4.asm
@@ -145,6 +145,7 @@ extern _tool_strings
extern _rich4_players
extern _nplayers
extern _current_player
+extern _players
extern clib_fopen
extern clib_fclose
@@ -307,9 +308,9 @@ loc_0040118f:
cmp edx, ebp
jge short loc_004011af ; jge 0x4011af
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004011ac ; jne 0x4011ac
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
je near loc_00401537 ; je 0x401537
loc_004011ac:
@@ -392,10 +393,10 @@ cmp eax, edx
jne near loc_00401312 ; jne 0x401312
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-cmp byte [eax + ref_00496ba0], 0 ; cmp byte [eax + 0x496ba0], 0
+cmp byte [eax + (_players+56)], 0 ; cmp byte [eax + 0x496ba0], 0
jne near loc_00401523 ; jne 0x401523
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
cmp al, 1
jb short loc_00401306 ; jb 0x401306
jbe short loc_004012c9 ; jbe 0x4012c9
@@ -406,8 +407,8 @@ jmp short loc_00401306 ; jmp 0x401306
loc_004012c9:
imul eax, ecx, 0x68
imul edx, ecx, 0x68
-inc byte [eax + ref_00496b7a] ; inc byte [eax + 0x496b7a]
-cmp byte [edx + ref_00496b7a], 3 ; cmp byte [edx + 0x496b7a], 3
+inc byte [eax + (_players+18)] ; inc byte [eax + 0x496b7a]
+cmp byte [edx + (_players+18)], 3 ; cmp byte [edx + 0x496b7a], 3
jne short loc_00401306 ; jne 0x401306
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
jmp short loc_004012ff ; jmp 0x4012ff
@@ -415,13 +416,13 @@ jmp short loc_004012ff ; jmp 0x4012ff
loc_004012e7:
imul eax, ecx, 0x68
imul edx, ecx, 0x68
-inc byte [eax + ref_00496b7a] ; inc byte [eax + 0x496b7a]
-cmp byte [edx + ref_00496b7a], 4 ; cmp byte [edx + 0x496b7a], 4
+inc byte [eax + (_players+18)] ; inc byte [eax + 0x496b7a]
+cmp byte [edx + (_players+18)], 4 ; cmp byte [edx + 0x496b7a], 4
jne short loc_00401306 ; jne 0x401306
imul eax, ecx, 0x68
loc_004012ff:
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_00401306:
push 1
@@ -2507,7 +2508,7 @@ add esp, 0x10
push ebx
push 4
push 0x68
-push ref_00496b68 ; push 0x496b68
+push (_players+0) ; push 0x496b68
call fcn_004576d0 ; call 0x4576d0
add esp, 0x10
push ebx
@@ -2524,10 +2525,10 @@ cmp ebx, ecx
jge short loc_00402bb7 ; jge 0x402bb7
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
imul edx, edx, 0x68
mov edx, dword [edx + _rich4_players] ; mov edx, dword [edx + 0x47e80c]
-mov dword [eax + ref_00496b68], edx ; mov dword [eax + 0x496b68], edx
+mov dword [eax + (_players+0)], edx ; mov dword [eax + 0x496b68], edx
inc ebx
jmp short loc_00402b96 ; jmp 0x402b96
@@ -2932,7 +2933,7 @@ add esp, 0x10
push ebx
push 4
push 0x68
-push ref_00496b68 ; push 0x496b68
+push (_players+0) ; push 0x496b68
call fcn_00457ada ; call 0x457ada
add esp, 0x10
push ebx
@@ -8154,7 +8155,7 @@ push ref_0048a35c ; push 0x48a35c
call fcn_00456f60 ; call 0x456f60
add esp, 0xc
xor eax, eax
-mov al, byte [ref_00496b7b] ; mov al, byte [0x496b7b]
+mov al, byte [(_players+19)] ; mov al, byte [0x496b7b]
mov byte [eax + ref_004990f4], 1 ; mov byte [eax + 0x4990f4], 1
push eax
push 0
@@ -8310,7 +8311,7 @@ jmp near loc_0040726f ; jmp 0x40726f
loc_004071d4:
xor eax, eax
-mov al, byte [esi + ref_00496b81] ; mov al, byte [esi + 0x496b81]
+mov al, byte [esi + (_players+25)] ; mov al, byte [esi + 0x496b81]
mov dword [esp + 0xc], eax
fild word [esp + 0xc]
fild dword [ref_0049908c] ; fild dword [0x49908c]
@@ -8319,16 +8320,16 @@ fmulp st1 ; fmulp st(1)
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp]
mov eax, dword [esp]
-mov dword [esi + ref_00496b84], eax ; mov dword [esi + 0x496b84], eax
+mov dword [esi + (_players+28)], eax ; mov dword [esi + 0x496b84], eax
mov eax, dword [ref_0049908c] ; mov eax, dword [0x49908c]
-mov edx, dword [esi + ref_00496b84] ; mov edx, dword [esi + 0x496b84]
+mov edx, dword [esi + (_players+28)] ; mov edx, dword [esi + 0x496b84]
sub eax, edx
loc_00407210:
-mov dword [esi + ref_00496b88], eax ; mov dword [esi + 0x496b88], eax
+mov dword [esi + (_players+32)], eax ; mov dword [esi + 0x496b88], eax
imul eax, ebx, 0x68
mov dl, byte [ref_0046cb44] ; mov dl, byte [0x46cb44]
-mov byte [eax + ref_00496b79], dl ; mov byte [eax + 0x496b79], dl
+mov byte [eax + (_players+17)], dl ; mov byte [eax + 0x496b79], dl
test dl, dl
je short loc_00407236 ; je 0x407236
mov al, dl
@@ -8339,8 +8340,8 @@ loc_00407236:
mov dl, byte [ref_0046cb44] ; mov dl, byte [0x46cb44]
inc dl
imul eax, ebx, 0x68
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
-test byte [eax + ref_00496bcc], 1 ; test byte [eax + 0x496bcc], 1
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
+test byte [eax + (_players+100)], 1 ; test byte [eax + 0x496bcc], 1
je short loc_00407265 ; je 0x407265
inc dword [ref_00499104] ; inc dword [0x499104]
jmp short loc_00407265 ; jmp 0x407265
@@ -8359,7 +8360,7 @@ jge near loc_00407319 ; jge 0x407319
loc_0040726f:
imul esi, ebx, 0x68
-mov ebp, ref_00496b68 ; mov ebp, 0x496b68
+mov ebp, (_players+0) ; mov ebp, 0x496b68
add ebp, esi
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00407258 ; jge 0x407258
@@ -8404,12 +8405,12 @@ mov eax, dword [edi + ref_0048a35c] ; mov eax, dword [edi + 0x48a35c]
sar eax, 0x1f
and eax, 1
inc eax
-mov byte [esi + ref_00496bcc], al ; mov byte [esi + 0x496bcc], al
+mov byte [esi + (_players+100)], al ; mov byte [esi + 0x496bcc], al
test al, 1
je near loc_004071d4 ; je 0x4071d4
mov eax, dword [ref_0049908c] ; mov eax, dword [0x49908c]
sar eax, 1
-mov dword [esi + ref_00496b84], eax ; mov dword [esi + 0x496b84], eax
+mov dword [esi + (_players+28)], eax ; mov dword [esi + 0x496b84], eax
jmp near loc_00407210 ; jmp 0x407210
loc_00407319:
@@ -8664,14 +8665,14 @@ loc_0040763f:
cmp ebx, esi
jge short loc_00407652 ; jge 0x407652
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
jne short loc_00407652 ; jne 0x407652
inc ebx
jmp short loc_0040763f ; jmp 0x40763f
loc_00407652:
imul ebx, ebx, 0x68
-movzx ebp, byte [ebx + ref_00496b7b] ; movzx ebp, byte [ebx + 0x496b7b]
+movzx ebp, byte [ebx + (_players+19)] ; movzx ebp, byte [ebx + 0x496b7b]
push 0
push 0
lea eax, [ebp + 0x64]
@@ -8919,7 +8920,7 @@ je near loc_004079de ; je 0x4079de
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -8967,7 +8968,7 @@ loc_004079ae:
cmp eax, dword [_nplayers] ; cmp eax, dword [0x499114]
jge short loc_004079d0 ; jge 0x4079d0
imul edx, eax, 0x68
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
xor bl, bl
mov byte [edx + ref_004990f4], bl ; mov byte [edx + 0x4990f4], bl
@@ -8975,7 +8976,7 @@ inc eax
jmp short loc_004079ae ; jmp 0x4079ae
loc_004079d0:
-mov byte [ref_00496b7d], 1 ; mov byte [0x496b7d], 1
+mov byte [(_players+21)], 1 ; mov byte [0x496b7d], 1
mov ebx, 4
jmp short loc_004079e3 ; jmp 0x4079e3
@@ -9505,7 +9506,7 @@ push 0
push 0
imul esi, ebx, 0x68
xor eax, eax
-mov al, byte [esi + ref_00496b7b] ; mov al, byte [esi + 0x496b7b]
+mov al, byte [esi + (_players+19)] ; mov al, byte [esi + 0x496b7b]
add eax, 0x1b
push eax
push edi
@@ -9514,9 +9515,9 @@ mov edx, eax
add esp, 0x10
imul eax, ebx, 0x34
mov dword [eax + ref_00498eb0], edx ; mov dword [eax + 0x498eb0], edx
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
jne short loc_00407fff ; jne 0x407fff
-cmp byte [esi + ref_00496bcc], 0 ; cmp byte [esi + 0x496bcc], 0
+cmp byte [esi + (_players+100)], 0 ; cmp byte [esi + 0x496bcc], 0
jne short loc_00407fff ; jne 0x407fff
mov eax, dword [eax + ref_00498eb0] ; mov eax, dword [eax + 0x498eb0]
movsx edx, word [eax + 0xe]
@@ -9793,7 +9794,7 @@ mov edx, dword [ref_00498e80] ; mov edx, dword [0x498e80]
add edx, eax
mov dword [esp + 0x48], edx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov word [eax + ref_00496b74], bx ; mov word [eax + 0x496b74], bx
+mov word [eax + (_players+12)], bx ; mov word [eax + 0x496b74], bx
xor ebx, ebx
xor edi, edi
mov ebp, dword [esp + 0x48]
@@ -9821,18 +9822,18 @@ sar edx, 0x1f
idiv edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
mov dx, word [esp + edx*2 + 0x10]
-mov word [eax + ref_00496b76], dx ; mov word [eax + 0x496b76], dx
+mov word [eax + (_players+14)], dx ; mov word [eax + 0x496b76], dx
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
push edx
-mov ax, word [eax + ref_00496b76] ; mov ax, word [eax + 0x496b76]
+mov ax, word [eax + (_players+14)] ; mov ax, word [eax + 0x496b76]
and eax, 0xffff
push eax
call fcn_00407a8c ; call 0x407a8c
add esp, 8
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul edx, ebx, 0x68
-mov byte [edx + ref_00496b78], al ; mov byte [edx + 0x496b78], al
+mov byte [edx + (_players+16)], al ; mov byte [edx + 0x496b78], al
mov eax, dword [esp + 0x48]
movsx eax, word [eax]
mov edx, dword [esp + 0x48]
@@ -10063,22 +10064,22 @@ loc_00408674:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00408919 ; jge 0x408919
imul esi, ebx, 0x68
-cmp word [esi + ref_00496b70], 0 ; cmp word [esi + 0x496b70], 0
+cmp word [esi + (_players+8)], 0 ; cmp word [esi + 0x496b70], 0
je near loc_00408913 ; je 0x408913
-cmp dword [esi + ref_00496b9a], 0 ; cmp dword [esi + 0x496b9a], 0
+cmp dword [esi + (_players+50)], 0 ; cmp dword [esi + 0x496b9a], 0
je short loc_004086a7 ; je 0x4086a7
-test byte [esi + ref_00496b7d], 0x20 ; test byte [esi + 0x496b7d], 0x20
+test byte [esi + (_players+21)], 0x20 ; test byte [esi + 0x496b7d], 0x20
je near loc_00408913 ; je 0x408913
loc_004086a7:
imul edi, ebx, 0x68
xor eax, eax
-mov ax, word [edi + ref_00496b70] ; mov ax, word [edi + 0x496b70]
+mov ax, word [edi + (_players+8)] ; mov ax, word [edi + 0x496b70]
mov esi, eax
sar esi, 5
sub esi, dword [esp + 0x50]
add esi, 0xe
-movzx ebp, word [edi + ref_00496b72] ; movzx ebp, word [edi + 0x496b72]
+movzx ebp, word [edi + (_players+10)] ; movzx ebp, word [edi + 0x496b72]
mov edx, ebp
sar edx, 5
sub edx, dword [esp + 0x4c]
@@ -10149,7 +10150,7 @@ shl edi, 2
mov eax, dword [edx + ref_00498eb4] ; mov eax, dword [edx + 0x498eb4]
mov dword [edi + ref_0048a84c], eax ; mov dword [edi + 0x48a84c], eax
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_004087e6 ; je 0x4087e6
test byte [esi + ref_00498ea0], 0x40 ; test byte [esi + 0x498ea0], 0x40
jne short loc_004087e6 ; jne 0x4087e6
@@ -10176,7 +10177,7 @@ mov eax, dword [eax + 4]
sar eax, 3
imul edi, ebx, 0x68
xor edx, edx
-mov dl, byte [edi + ref_00496b78] ; mov dl, byte [edi + 0x496b78]
+mov dl, byte [edi + (_players+16)] ; mov dl, byte [edi + 0x496b78]
mov ecx, 8
sub ecx, dword [ref_00499088] ; sub ecx, dword [0x499088]
add edx, ecx
@@ -10192,7 +10193,7 @@ mov word [esi*4 + ref_0048a854], ax ; mov word [esi*4 + 0x48a854], ax
mov eax, dword [esp + 0x3c]
mov word [esi*4 + ref_0048a856], ax ; mov word [esi*4 + 0x48a856], ax
inc dword [ref_0048bac8] ; inc dword [0x48bac8]
-cmp byte [edi + ref_00496b9f], 0 ; cmp byte [edi + 0x496b9f], 0
+cmp byte [edi + (_players+55)], 0 ; cmp byte [edi + 0x496b9f], 0
je near loc_00408913 ; je 0x408913
mov eax, dword [esp + 0x3c]
shl eax, 4
@@ -10709,18 +10710,18 @@ dec eax
mov dword [esp + 0x58], eax
imul eax, eax, 0x68
mov dword [esp + 0x38], eax
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_00408f6e ; jne 0x408f6e
xor eax, eax
mov edx, dword [esp + 0x38]
-mov ax, word [edx + ref_00496b70] ; mov ax, word [edx + 0x496b70]
+mov ax, word [edx + (_players+8)] ; mov ax, word [edx + 0x496b70]
mov edx, eax
sar edx, 5
sub edx, dword [esp + 0x50]
lea esi, [edx + 0xe]
xor edx, edx
mov ecx, dword [esp + 0x38]
-mov dx, word [ecx + ref_00496b72] ; mov dx, word [ecx + 0x496b72]
+mov dx, word [ecx + (_players+10)] ; mov dx, word [ecx + 0x496b72]
mov ecx, edx
sar ecx, 5
sub ecx, dword [esp + 0x4c]
@@ -10758,7 +10759,7 @@ add edx, eax
mov dword [esp + 0x3c], edx
xor edx, edx
mov eax, dword [esp + 0x38]
-mov dl, byte [eax + ref_00496b78] ; mov dl, byte [eax + 0x496b78]
+mov dl, byte [eax + (_players+16)] ; mov dl, byte [eax + 0x496b78]
mov eax, 8
sub eax, dword [ref_00499088] ; sub eax, dword [0x499088]
add eax, edx
@@ -10775,7 +10776,7 @@ mov byte [esi*4 + ref_0048a853], dl ; mov byte [esi*4 + 0x48a853], dl
cmp byte [ebp + ref_00496d08], 0x12 ; cmp byte [ebp + 0x496d08], 0x12
jne near loc_00408c65 ; jne 0x408c65
mov eax, dword [esp + 0x38]
-cmp byte [eax + ref_00496ba7], 0 ; cmp byte [eax + 0x496ba7], 0
+cmp byte [eax + (_players+63)], 0 ; cmp byte [eax + 0x496ba7], 0
je near loc_00408c65 ; je 0x408c65
mov esi, dword [esp + 0x54]
mov eax, dword [esi*8 + ref_00474991] ; mov eax, dword [esi*8 + 0x474991]
@@ -10881,7 +10882,7 @@ xor eax, eax
mov al, byte [ebp + 0x19]
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
mov byte [esi + ref_0048a853], al ; mov byte [esi + 0x48a853], al
jmp short loc_00409246 ; jmp 0x409246
@@ -11064,7 +11065,7 @@ xor eax, eax
mov al, byte [ebp + 0x19]
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
mov byte [esi + ref_0048a853], al ; mov byte [esi + 0x48a853], al
jmp short loc_0040948e ; jmp 0x40948e
@@ -11355,7 +11356,7 @@ xor eax, eax
mov al, cl
dec eax
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b6c] ; mov edx, dword [eax + 0x496b6c]
+mov edx, dword [eax + (_players+4)] ; mov edx, dword [eax + 0x496b6c]
push edx
call fcn_004551f0 ; call 0x4551f0
add esp, 4
@@ -11432,9 +11433,9 @@ cmp eax, 4
jge short loc_0040997e ; jge 0x40997e
jge near loc_004099fd ; jge 0x4099fd
imul eax, eax, 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
jne near loc_004099fd ; jne 0x4099fd
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_004099fd ; jne 0x4099fd
loc_0040997e:
@@ -12075,15 +12076,15 @@ add dword [esp + 0x10], 0xdc
call fcn_00456f60 ; call 0x456f60
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b9a] ; mov edx, dword [eax + 0x496b9a]
+mov edx, dword [eax + (_players+50)] ; mov edx, dword [eax + 0x496b9a]
test edx, edx
jne near loc_0040a206 ; jne 0x40a206
-mov dx, word [eax + ref_00496b70] ; mov dx, word [eax + 0x496b70]
+mov dx, word [eax + (_players+8)] ; mov dx, word [eax + 0x496b70]
mov ecx, edx
sar ecx, 5
sub ecx, dword [esp + 0x14]
lea ebx, [ecx + 0xe]
-mov ax, word [eax + ref_00496b72] ; mov ax, word [eax + 0x496b72]
+mov ax, word [eax + (_players+10)] ; mov ax, word [eax + 0x496b72]
and eax, 0xffff
mov ebp, eax
sar ebp, 5
@@ -12508,7 +12509,7 @@ loc_0040a5c5:
movzx ebp, byte [ebx + 0x19]
dec ebp
imul ebp, ebp, 0x68
-push dword [ebp + ref_00496b6c] ; push dword [ebp + 0x496b6c]
+push dword [ebp + (_players+4)] ; push dword [ebp + 0x496b6c]
push edx
push ecx
mov ecx, dword [ref_0048bad8] ; mov ecx, dword [0x48bad8]
@@ -12602,7 +12603,7 @@ loc_0040a6bd:
movzx ebp, byte [ebx + 0x19]
dec ebp
imul ebp, ebp, 0x68
-push dword [ebp + ref_00496b6c] ; push dword [ebp + 0x496b6c]
+push dword [ebp + (_players+4)] ; push dword [ebp + 0x496b6c]
push edx
push ecx
mov ecx, dword [ref_0048bad8] ; mov ecx, dword [0x48bad8]
@@ -12697,7 +12698,7 @@ loc_0040a7b7:
movzx ebp, byte [ebx + 0x18]
dec ebp
imul ebp, ebp, 0x68
-push dword [ebp + ref_00496b6c] ; push dword [ebp + 0x496b6c]
+push dword [ebp + (_players+4)] ; push dword [ebp + 0x496b6c]
push edx
push ecx
mov ecx, dword [ref_0048bad8] ; mov ecx, dword [0x48bad8]
@@ -12789,10 +12790,10 @@ loc_0040a8a1:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_0040a928 ; jge 0x40a928
imul edx, ebx, 0x68
-cmp word [edx + ref_00496b70], 0 ; cmp word [edx + 0x496b70], 0
+cmp word [edx + (_players+8)], 0 ; cmp word [edx + 0x496b70], 0
je short loc_0040a922 ; je 0x40a922
xor ecx, ecx
-mov cx, word [edx + ref_00496b70] ; mov cx, word [edx + 0x496b70]
+mov cx, word [edx + (_players+8)] ; mov cx, word [edx + 0x496b70]
mov eax, ecx
shl eax, 2
sub eax, ecx
@@ -12803,7 +12804,7 @@ add eax, ecx
shl eax, 7
sar eax, 0x10
lea ecx, [eax + 0x14]
-mov dx, word [edx + ref_00496b72] ; mov dx, word [edx + 0x496b72]
+mov dx, word [edx + (_players+10)] ; mov dx, word [edx + 0x496b72]
and edx, 0xffff
mov eax, edx
shl eax, 2
@@ -13497,9 +13498,9 @@ jmp short loc_0040afd9 ; jmp 0x40afd9
loc_0040afe8:
imul edx, edx, 0x68
xor ebx, ebx
-mov bx, word [edx + ref_00496b70] ; mov bx, word [edx + 0x496b70]
+mov bx, word [edx + (_players+8)] ; mov bx, word [edx + 0x496b70]
xor ecx, ecx
-mov cx, word [edx + ref_00496b72] ; mov cx, word [edx + 0x496b72]
+mov cx, word [edx + (_players+10)] ; mov cx, word [edx + 0x496b72]
jmp short loc_0040b058 ; jmp 0x40b058
loc_0040afff:
@@ -13669,7 +13670,7 @@ add ebx, edx
cmp byte [ebx + 0x1a], 0
jne short loc_0040b1f9 ; jne 0x40b1f9
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 6 ; test byte [eax + 0x496b7d], 6
+test byte [eax + (_players+21)], 6 ; test byte [eax + 0x496b7d], 6
je short loc_0040b1e2 ; je 0x40b1e2
xor edx, edx
mov dl, byte [ebx + 0x19]
@@ -13740,9 +13741,9 @@ mov dword [esp + 0x30], 8
loc_0040b24d:
imul eax, dword [esp + 0x2c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov dword [esp + 0xc], edx
-mov ax, word [eax + ref_00496b76] ; mov ax, word [eax + 0x496b76]
+mov ax, word [eax + (_players+14)] ; mov ax, word [eax + 0x496b76]
and eax, 0xffff
mov dword [esp + 0x14], eax
xor edi, edi
@@ -13853,9 +13854,9 @@ mov dword [esp + 0x30], 8
loc_0040b36f:
imul eax, dword [esp + 0x2c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b76] ; mov dx, word [eax + 0x496b76]
+mov dx, word [eax + (_players+14)] ; mov dx, word [eax + 0x496b76]
mov dword [esp + 0xc], edx
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
mov dword [esp + 0x14], eax
xor edi, edi
@@ -14362,14 +14363,14 @@ cmp esi, 4
jge near loc_0040bd43 ; jge 0x40bd43
imul ebp, esi, 0x68
xor eax, eax
-mov al, byte [ebp + ref_00496b7b] ; mov al, byte [ebp + 0x496b7b]
+mov al, byte [ebp + (_players+19)] ; mov al, byte [ebp + 0x496b7b]
mov edi, eax
shl edi, 2
add edi, eax
shl edi, 2
add edi, eax
add edi, 0x80
-mov cl, byte [ebp + ref_00496b7d] ; mov cl, byte [ebp + 0x496b7d]
+mov cl, byte [ebp + (_players+21)] ; mov cl, byte [ebp + 0x496b7d]
test cl, cl
je short loc_0040b97f ; je 0x40b97f
test cl, 0x40
@@ -14427,7 +14428,7 @@ pop ebx
ret
loc_0040ba16:
-cmp byte [ebp + ref_00496b9f], 0 ; cmp byte [ebp + 0x496b9f], 0
+cmp byte [ebp + (_players+55)], 0 ; cmp byte [ebp + 0x496b9f], 0
je near loc_0040bace ; je 0x40bace
mov al, byte [ebx + ref_00498ea0] ; mov al, byte [ebx + 0x498ea0]
and al, 0xf
@@ -14492,7 +14493,7 @@ ret
loc_0040bace:
xor edx, edx
-mov dx, word [ebp + ref_00496b74] ; mov dx, word [ebp + 0x496b74]
+mov dx, word [ebp + (_players+12)] ; mov dx, word [ebp + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -14576,7 +14577,7 @@ pop ebx
ret
loc_0040bbd8:
-mov al, byte [ebp + ref_00496b79] ; mov al, byte [ebp + 0x496b79]
+mov al, byte [ebp + (_players+17)] ; mov al, byte [ebp + 0x496b79]
and al, 3
xor edx, edx
mov dl, al
@@ -14593,7 +14594,7 @@ add esp, 8
mov ch, byte [ebx + ref_00498ea0] ; mov ch, byte [ebx + 0x498ea0]
and ch, 0xf0
mov byte [ebx + ref_00498ea0], ch ; mov byte [ebx + 0x498ea0], ch
-mov al, byte [ebp + ref_00496b79] ; mov al, byte [ebp + 0x496b79]
+mov al, byte [ebp + (_players+17)] ; mov al, byte [ebp + 0x496b79]
and al, 3
mov ah, al
inc ah
@@ -14632,7 +14633,7 @@ push ecx
call fcn_00450441 ; call 0x450441
add esp, 0x10
mov dword [ebx + ref_00498ec4], eax ; mov dword [ebx + 0x498ec4], eax
-mov al, byte [ebp + ref_00496b79] ; mov al, byte [ebp + 0x496b79]
+mov al, byte [ebp + (_players+17)] ; mov al, byte [ebp + 0x496b79]
and al, 3
cmp al, 3
jne short loc_0040bcb3 ; jne 0x40bcb3
@@ -14658,7 +14659,7 @@ imul eax, esi, 0x34
xor bh, bh
mov byte [eax + ref_00498ea1], bh ; mov byte [eax + 0x498ea1], bh
imul esi, esi, 0x68
-mov al, byte [esi + ref_00496b79] ; mov al, byte [esi + 0x496b79]
+mov al, byte [esi + (_players+17)] ; mov al, byte [esi + 0x496b79]
and al, 3
and eax, 0xff
mov edx, dword [ref_004749d4] ; mov edx, dword [0x4749d4]
@@ -14673,7 +14674,7 @@ add eax, ref_0048234a ; add eax, 0x48234a
push eax
call fcn_004542e9 ; call 0x4542e9
add esp, 4
-mov al, byte [esi + ref_00496b79] ; mov al, byte [esi + 0x496b79]
+mov al, byte [esi + (_players+17)] ; mov al, byte [esi + 0x496b79]
and al, 3
and eax, 0xff
add eax, 0xb
@@ -14882,7 +14883,7 @@ push edi
mov edi, dword [esp + 0x10]
imul eax, edi, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
add eax, ebx
@@ -14972,7 +14973,7 @@ cmp dword [ref_004749dc], 0 ; cmp dword [0x4749dc], 0
jne near loc_0040c332 ; jne 0x40c332
imul eax, ecx, 0x68
xor ecx, ecx
-mov cx, word [eax + ref_00496b74] ; mov cx, word [eax + 0x496b74]
+mov cx, word [eax + (_players+12)] ; mov cx, word [eax + 0x496b74]
mov edx, ecx
shl edx, 2
add edx, ecx
@@ -14983,13 +14984,13 @@ mov cl, byte [_current_player] ; mov cl, byte [0x49910c]
mov edx, 0x100
shl edx, cl
mov dword [esp + 0x10], edx
-mov dl, byte [eax + ref_00496b7d] ; mov dl, byte [eax + 0x496b7d]
+mov dl, byte [eax + (_players+21)] ; mov dl, byte [eax + 0x496b7d]
test dl, 0x10
je short loc_0040c0ed ; je 0x40c0ed
xor edx, edx
-mov dx, word [eax + ref_00496b70] ; mov dx, word [eax + 0x496b70]
+mov dx, word [eax + (_players+8)] ; mov dx, word [eax + 0x496b70]
mov dword [esp + 0x18], edx
-mov ax, word [eax + ref_00496b72] ; mov ax, word [eax + 0x496b72]
+mov ax, word [eax + (_players+10)] ; mov ax, word [eax + 0x496b72]
and eax, 0xffff
mov dword [esp + 0x14], eax
movsx eax, word [ebx]
@@ -15004,7 +15005,7 @@ movsx edx, word [ebx]
mov dword [esp + 0x18], edx
movsx edx, word [ebx + 2]
mov dword [esp + 0x14], edx
-movsx edx, word [eax + ref_00496bb2] ; movsx edx, word [eax + 0x496bb2]
+movsx edx, word [eax + (_players+74)] ; movsx edx, word [eax + 0x496bb2]
shl edx, 3
mov eax, edx
shl eax, 3
@@ -15037,7 +15038,7 @@ mov dx, word [ebx + edx*2 + 0x18]
and edx, 0xffff
je short loc_0040c144 ; je 0x40c144
imul edi, ebp, 0x68
-mov di, word [edi + ref_00496b76] ; mov di, word [edi + 0x496b76]
+mov di, word [edi + (_players+14)] ; mov di, word [edi + 0x496b76]
and edi, 0xffff
cmp edx, edi
je short loc_0040c144 ; je 0x40c144
@@ -15051,7 +15052,7 @@ loc_0040c17c:
test esi, esi
jne short loc_0040c196 ; jne 0x40c196
imul edi, dword [_current_player], 0x68 ; imul edi, dword [0x49910c], 0x68
-mov di, word [edi + ref_00496b76] ; mov di, word [edi + 0x496b76]
+mov di, word [edi + (_players+14)] ; mov di, word [edi + 0x496b76]
and edi, 0xffff
jmp short loc_0040c1a9 ; jmp 0x40c1a9
@@ -15065,9 +15066,9 @@ movsx edi, word [esp + edi]
loc_0040c1a9:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
-mov word [eax + ref_00496b76], dx ; mov word [eax + 0x496b76], dx
-mov word [eax + ref_00496b74], di ; mov word [eax + 0x496b74], di
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
+mov word [eax + (_players+14)], dx ; mov word [eax + 0x496b76], dx
+mov word [eax + (_players+12)], di ; mov word [eax + 0x496b74], di
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
push ecx
call fcn_0040fc00 ; call 0x40fc00
@@ -15114,7 +15115,7 @@ imul eax, dword [_current_player], 0x34 ; imul eax, dword [0x49910c], 0x34
cmp byte [eax + ref_00498ea1], 0 ; cmp byte [eax + 0x498ea1], 0
jne short loc_0040c276 ; jne 0x40c276
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
je short loc_0040c282 ; je 0x40c282
loc_0040c276:
@@ -15123,7 +15124,7 @@ fmul dword [ref_004631dc] ; fmul dword [0x4631dc]
jmp short loc_0040c2a2 ; jmp 0x40c2a2
loc_0040c282:
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
xor ecx, ecx
mov cl, al
@@ -15146,13 +15147,13 @@ fstp dword [ref_0048baf0] ; fstp dword [0x48baf0]
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul edx, edi, 0x68
xor eax, eax
-mov ax, word [edx + ref_00496b70] ; mov ax, word [edx + 0x496b70]
+mov ax, word [edx + (_players+8)] ; mov ax, word [edx + 0x496b70]
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
imul ecx, edi, 0x34
fstp dword [ecx + ref_00498ea8] ; fstp dword [ecx + 0x498ea8]
xor eax, eax
-mov ax, word [edx + ref_00496b72] ; mov ax, word [edx + 0x496b72]
+mov ax, word [edx + (_players+10)] ; mov ax, word [edx + 0x496b72]
mov dword [esp + 0x28], eax
fild dword [esp + 0x28]
fstp dword [ecx + ref_00498eac] ; fstp dword [ecx + 0x498eac]
@@ -15185,28 +15186,28 @@ fld dword [edx + ref_00498ea8] ; fld dword [edx + 0x498ea8]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x28]
mov ebx, dword [esp + 0x28]
-mov word [eax + ref_00496b70], bx ; mov word [eax + 0x496b70], bx
+mov word [eax + (_players+8)], bx ; mov word [eax + 0x496b70], bx
fld dword [edx + ref_00498eac] ; fld dword [edx + 0x498eac]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x28]
mov edx, dword [esp + 0x28]
-mov word [eax + ref_00496b72], dx ; mov word [eax + 0x496b72], dx
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+mov word [eax + (_players+10)], dx ; mov word [eax + 0x496b72], dx
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
je short loc_0040c410 ; je 0x40c410
mov edx, dword [ref_004749dc] ; mov edx, dword [0x4749dc]
cmp edx, dword [ref_0048baf4] ; cmp edx, dword [0x48baf4]
jge short loc_0040c410 ; jge 0x40c410
-mov ch, byte [eax + ref_00496b7d] ; mov ch, byte [eax + 0x496b7d]
+mov ch, byte [eax + (_players+21)] ; mov ch, byte [eax + 0x496b7d]
test ch, 0x10
je short loc_0040c3d7 ; je 0x40c3d7
xor ebx, ebx
-mov dword [eax + ref_00496b9a], ebx ; mov dword [eax + 0x496b9a], ebx
+mov dword [eax + (_players+50)], ebx ; mov dword [eax + 0x496b9a], ebx
jmp short loc_0040c3e2 ; jmp 0x40c3e2
loc_0040c3d7:
mov dl, ch
and dl, 0xf
-mov byte [eax + ref_00496b7d], dl ; mov byte [eax + 0x496b7d], dl
+mov byte [eax + (_players+21)], dl ; mov byte [eax + 0x496b7d], dl
loc_0040c3e2:
xor esi, esi
@@ -15215,30 +15216,30 @@ jmp short loc_0040c410 ; jmp 0x40c410
loc_0040c3ec:
mov dx, word [ref_0048bae4] ; mov dx, word [0x48bae4]
-mov word [eax + ref_00496b70], dx ; mov word [eax + 0x496b70], dx
+mov word [eax + (_players+8)], dx ; mov word [eax + 0x496b70], dx
mov dx, word [ref_0048bae8] ; mov dx, word [0x48bae8]
-mov word [eax + ref_00496b72], dx ; mov word [eax + 0x496b72], dx
+mov word [eax + (_players+10)], dx ; mov word [eax + 0x496b72], dx
mov dword [esp + 8], 1
loc_0040c410:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
jne short loc_0040c44c ; jne 0x40c44c
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
push edx
-mov ax, word [eax + ref_00496b76] ; mov ax, word [eax + 0x496b76]
+mov ax, word [eax + (_players+14)] ; mov ax, word [eax + 0x496b76]
and eax, 0xffff
push eax
call fcn_00407a8c ; call 0x407a8c
add esp, 8
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov byte [edx + ref_00496b78], al ; mov byte [edx + 0x496b78], al
+mov byte [edx + (_players+16)], al ; mov byte [edx + 0x496b78], al
loc_0040c44c:
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je near loc_0040c74a ; je 0x40c74a
imul eax, edx, 0x34
mov bh, byte [eax + ref_00498ea4] ; mov bh, byte [eax + 0x498ea4]
@@ -15485,12 +15486,12 @@ mov edx, dword [esp + 0x20]
cmp edx, 4
jge near loc_0040c85e ; jge 0x40c85e
imul eax, edx, 0x68
-mov dl, byte [eax + ref_00496b78] ; mov dl, byte [eax + 0x496b78]
+mov dl, byte [eax + (_players+16)] ; mov dl, byte [eax + 0x496b78]
add dl, 4
and dl, 7
-mov byte [eax + ref_00496b78], dl ; mov byte [eax + 0x496b78], dl
+mov byte [eax + (_players+16)], dl ; mov byte [eax + 0x496b78], dl
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -15516,7 +15517,7 @@ je short loc_0040c7ea ; je 0x40c7ea
test dword [ecx + 0x24], esi
jne short loc_0040c7ea ; jne 0x40c7ea
imul edi, dword [esp + 0x20], 0x68
-mov di, word [edi + ref_00496b76] ; mov di, word [edi + 0x496b76]
+mov di, word [edi + (_players+14)] ; mov di, word [edi + 0x496b76]
and edi, 0xffff
mov dword [esp + 8], edi
xor edi, edi
@@ -15536,12 +15537,12 @@ mov edx, eax
sar edx, 0x1f
idiv ebx
mov ax, word [esp + edx*2]
-mov word [esi + ref_00496b76], ax ; mov word [esi + 0x496b76], ax
+mov word [esi + (_players+14)], ax ; mov word [esi + 0x496b76], ax
jmp near loc_0040c90a ; jmp 0x40c90a
loc_0040c850:
xor ebx, ebx
-mov word [esi + ref_00496b76], bx ; mov word [esi + 0x496b76], bx
+mov word [esi + (_players+14)], bx ; mov word [esi + 0x496b76], bx
jmp near loc_0040c90a ; jmp 0x40c90a
loc_0040c85e:
@@ -15626,19 +15627,19 @@ mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
cmp edx, 4
jge near loc_0040cbdd ; jge 0x40cbdd
imul eax, edx, 0x68
-mov ch, byte [eax + ref_00496b7d] ; mov ch, byte [eax + 0x496b7d]
+mov ch, byte [eax + (_players+21)] ; mov ch, byte [eax + 0x496b7d]
test ch, ch
je near loc_0040cc0d ; je 0x40cc0d
cmp dword [esp + 0xa8], 0
jne near loc_0040cbc2 ; jne 0x40cbc2
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040c962 ; jne 0x40c962
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je near loc_0040cba5 ; je 0x40cba5
loc_0040c962:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
je short loc_0040c97c ; je 0x40c97c
call fcn_0040dd1f ; call 0x40dd1f
jmp near loc_0040cc0d ; jmp 0x40cc0d
@@ -15646,7 +15647,7 @@ jmp near loc_0040cc0d ; jmp 0x40cc0d
loc_0040c97c:
call fcn_0044808a ; call 0x44808a
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -15655,7 +15656,7 @@ add esp, 8
xor dh, dh
mov byte [esp], dh
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov cl, byte [eax + ref_00496b9a] ; mov cl, byte [eax + 0x496b9a]
+mov cl, byte [eax + (_players+50)] ; mov cl, byte [eax + 0x496b9a]
test cl, cl
je short loc_0040c9da ; je 0x40c9da
mov al, cl
@@ -15673,7 +15674,7 @@ add esp, 0x10
loc_0040c9da:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ch, byte [eax + ref_00496b9b] ; mov ch, byte [eax + 0x496b9b]
+mov ch, byte [eax + (_players+51)] ; mov ch, byte [eax + 0x496b9b]
test ch, ch
je short loc_0040ca10 ; je 0x40ca10
mov al, ch
@@ -15691,7 +15692,7 @@ add esp, 0x10
loc_0040ca10:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9c], 0 ; cmp byte [eax + 0x496b9c], 0
+cmp byte [eax + (_players+52)], 0 ; cmp byte [eax + 0x496b9c], 0
je short loc_0040ca89 ; je 0x40ca89
call clib_rand ; call 0x456f2d
test al, 1
@@ -15699,7 +15700,7 @@ je short loc_0040ca59 ; je 0x40ca59
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -15714,7 +15715,7 @@ add esp, 0xc
loc_0040ca59:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b9c] ; mov al, byte [eax + 0x496b9c]
+mov al, byte [eax + (_players+52)] ; mov al, byte [eax + 0x496b9c]
and al, 0x7f
and eax, 0xff
inc eax
@@ -15729,7 +15730,7 @@ add esp, 0x10
loc_0040ca89:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9d], 0 ; cmp byte [eax + 0x496b9d], 0
+cmp byte [eax + (_players+53)], 0 ; cmp byte [eax + 0x496b9d], 0
je short loc_0040cb02 ; je 0x40cb02
call clib_rand ; call 0x456f2d
test al, 1
@@ -15737,7 +15738,7 @@ je short loc_0040cad2 ; je 0x40cad2
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -15752,7 +15753,7 @@ add esp, 0xc
loc_0040cad2:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b9d] ; mov al, byte [eax + 0x496b9d]
+mov al, byte [eax + (_players+53)] ; mov al, byte [eax + 0x496b9d]
and al, 0x7f
and eax, 0xff
inc eax
@@ -15767,9 +15768,9 @@ add esp, 0x10
loc_0040cb02:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_0040cb84 ; je 0x40cb84
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040cb84 ; jne 0x40cb84
call clib_rand ; call 0x456f2d
test al, 1
@@ -15777,7 +15778,7 @@ je short loc_0040cb54 ; je 0x40cb54
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -15792,7 +15793,7 @@ add esp, 0xc
loc_0040cb54:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b9e] ; mov al, byte [eax + 0x496b9e]
+mov al, byte [eax + (_players+54)] ; mov al, byte [eax + 0x496b9e]
and al, 0x7f
and eax, 0xff
inc eax
@@ -15816,22 +15817,22 @@ add esp, 8
jmp near loc_0040cc0d ; jmp 0x40cc0d
loc_0040cba5:
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_0040cbba ; je 0x40cbba
call fcn_0040dd1f ; call 0x40dd1f
mov ebx, 0xffffffff
jmp short loc_0040cc0d ; jmp 0x40cc0d
loc_0040cbba:
-mov bl, byte [eax + ref_00496b7d] ; mov bl, byte [eax + 0x496b7d]
+mov bl, byte [eax + (_players+21)] ; mov bl, byte [eax + 0x496b7d]
jmp short loc_0040cc0d ; jmp 0x40cc0d
loc_0040cbc2:
test ch, 0x30
jne short loc_0040cc0d ; jne 0x40cc0d
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040cc0d ; jne 0x40cc0d
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
jne short loc_0040cc0d ; jne 0x40cc0d
mov bl, ch
jmp short loc_0040cc0d ; jmp 0x40cc0d
@@ -15862,19 +15863,19 @@ fcn_0040cc1a:
push ebx
imul eax, dword [esp + 8], 0x68
xor dl, dl
-mov byte [eax + ref_00496ba5], dl ; mov byte [eax + 0x496ba5], dl
+mov byte [eax + (_players+61)], dl ; mov byte [eax + 0x496ba5], dl
xor edx, edx
-mov dl, byte [eax + ref_00496ba9] ; mov dl, byte [eax + 0x496ba9]
+mov dl, byte [eax + (_players+65)] ; mov dl, byte [eax + 0x496ba9]
dec edx
imul edx, edx, 0x68
xor bl, bl
-mov byte [edx + ref_00496ba9], bl ; mov byte [edx + 0x496ba9], bl
+mov byte [edx + (_players+65)], bl ; mov byte [edx + 0x496ba9], bl
xor edx, edx
-mov dl, byte [eax + ref_00496ba9] ; mov dl, byte [eax + 0x496ba9]
+mov dl, byte [eax + (_players+65)] ; mov dl, byte [eax + 0x496ba9]
dec edx
imul edx, edx, 0x68
-mov byte [edx + ref_00496ba5], bl ; mov byte [edx + 0x496ba5], bl
-mov byte [eax + ref_00496ba9], bl ; mov byte [eax + 0x496ba9], bl
+mov byte [edx + (_players+61)], bl ; mov byte [edx + 0x496ba5], bl
+mov byte [eax + (_players+65)], bl ; mov byte [eax + 0x496ba9], bl
pop ebx
ret
@@ -15887,7 +15888,7 @@ mov edi, 0x100
shl edi, cl
imul edx, dword [esp + 0x10], 0x68
xor ecx, ecx
-mov cx, word [edx + ref_00496b74] ; mov cx, word [edx + 0x496b74]
+mov cx, word [edx + (_players+12)] ; mov cx, word [edx + 0x496b74]
mov eax, ecx
shl eax, 2
add eax, ecx
@@ -15898,7 +15899,7 @@ mov ecx, edi
not ecx
and dword [eax + 0x24], ecx
xor eax, eax
-mov ax, word [edx + ref_00496b74] ; mov ax, word [edx + 0x496b74]
+mov ax, word [edx + (_players+12)] ; mov ax, word [edx + 0x496b74]
push eax
call fcn_0040aa6c ; call 0x40aa6c
add esp, 4
@@ -15925,16 +15926,16 @@ je short loc_0040ccb3 ; je 0x40ccb3
loc_0040ccc8:
imul esi, dword [esp + 0x10], 0x68
mov ax, word [ebx]
-mov word [esi + ref_00496b70], ax ; mov word [esi + 0x496b70], ax
+mov word [esi + (_players+8)], ax ; mov word [esi + 0x496b70], ax
mov ax, word [ebx + 2]
-mov word [esi + ref_00496b72], ax ; mov word [esi + 0x496b72], ax
-mov word [esi + ref_00496b74], cx ; mov word [esi + 0x496b74], cx
-mov word [esi + ref_00496b76], dx ; mov word [esi + 0x496b76], dx
+mov word [esi + (_players+10)], ax ; mov word [esi + 0x496b72], ax
+mov word [esi + (_players+12)], cx ; mov word [esi + 0x496b74], cx
+mov word [esi + (_players+14)], dx ; mov word [esi + 0x496b76], dx
push ecx
push edx
call fcn_00407a8c ; call 0x407a8c
add esp, 8
-mov byte [esi + ref_00496b78], al ; mov byte [esi + 0x496b78], al
+mov byte [esi + (_players+16)], al ; mov byte [esi + 0x496b78], al
or dword [ebx + 0x24], edi
pop edi
pop esi
@@ -15945,11 +15946,11 @@ fcn_0040cd07:
push ebx
mov edx, dword [esp + 8]
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040cd70 ; je 0x40cd70
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040cd70 ; jne 0x40cd70
-mov cl, byte [eax + ref_00496b79] ; mov cl, byte [eax + 0x496b79]
+mov cl, byte [eax + (_players+17)] ; mov cl, byte [eax + 0x496b79]
test cl, cl
je short loc_0040cd5b ; je 0x40cd5b
mov al, cl
@@ -15971,12 +15972,12 @@ inc byte [ref_00497325] ; inc byte [0x497325]
loc_0040cd49:
imul eax, edx, 0x68
xor bl, bl
-mov byte [eax + ref_00496b79], bl ; mov byte [eax + 0x496b79], bl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], bl ; mov byte [eax + 0x496b79], bl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_0040cd5b:
imul eax, edx, 0x68
-or byte [eax + ref_00496b7d], 0x40 ; or byte [eax + 0x496b7d], 0x40
+or byte [eax + (_players+21)], 0x40 ; or byte [eax + 0x496b7d], 0x40
push edx
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -15985,7 +15986,7 @@ ret
loc_0040cd70:
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
jne short loc_0040cd85 ; jne 0x40cd85
push edx
call fcn_0040cc56 ; call 0x40cc56
@@ -16002,27 +16003,27 @@ push edi
push ebp
sub esp, 0x404
imul eax, dword [esp + 0x418], 0x68
-mov dl, byte [eax + ref_00496b7d] ; mov dl, byte [eax + 0x496b7d]
+mov dl, byte [eax + (_players+21)] ; mov dl, byte [eax + 0x496b7d]
mov byte [esp + 0x400], dl
test dl, dl
je near loc_0040d288 ; je 0x40d288
xor ebx, ebx
-mov bx, word [eax + ref_00496b74] ; mov bx, word [eax + 0x496b74]
+mov bx, word [eax + (_players+12)] ; mov bx, word [eax + 0x496b74]
mov edx, ebx
shl edx, 2
add edx, ebx
mov ebx, dword [ref_00498e80] ; mov ebx, dword [0x498e80]
mov dx, word [ebx + edx*8]
-mov word [eax + ref_00496b70], dx ; mov word [eax + 0x496b70], dx
+mov word [eax + (_players+8)], dx ; mov word [eax + 0x496b70], dx
xor esi, esi
-mov si, word [eax + ref_00496b74] ; mov si, word [eax + 0x496b74]
+mov si, word [eax + (_players+12)] ; mov si, word [eax + 0x496b74]
mov edx, esi
shl edx, 2
add edx, esi
mov dx, word [ebx + edx*8 + 2]
-mov word [eax + ref_00496b72], dx ; mov word [eax + 0x496b72], dx
+mov word [eax + (_players+10)], dx ; mov word [eax + 0x496b72], dx
xor esi, esi
-mov si, word [eax + ref_00496b74] ; mov si, word [eax + 0x496b74]
+mov si, word [eax + (_players+12)] ; mov si, word [eax + 0x496b74]
mov edx, esi
shl edx, 2
add edx, esi
@@ -16033,12 +16034,12 @@ mov ebx, 0x100
shl ebx, cl
or dword [edx + 0x24], ebx
xor dh, dh
-mov byte [eax + ref_00496b7d], dh ; mov byte [eax + 0x496b7d], dh
+mov byte [eax + (_players+21)], dh ; mov byte [eax + 0x496b7d], dh
mov edx, dword [esp + 0x418]
xor bl, bl
mov byte [edx + ref_00496b30], bl ; mov byte [edx + 0x496b30], bl
mov byte [edx + ref_00496b60], bl ; mov byte [edx + 0x496b60], bl
-mov cl, byte [eax + ref_00496ba7] ; mov cl, byte [eax + 0x496ba7]
+mov cl, byte [eax + (_players+63)] ; mov cl, byte [eax + 0x496ba7]
test cl, cl
je short loc_0040ce48 ; je 0x40ce48
mov al, cl
@@ -16049,7 +16050,7 @@ add esp, 4
loc_0040ce48:
imul eax, dword [esp + 0x418], 0x68
-mov ch, byte [eax + ref_00496ba8] ; mov ch, byte [eax + 0x496ba8]
+mov ch, byte [eax + (_players+64)] ; mov ch, byte [eax + 0x496ba8]
test ch, ch
je short loc_0040ce6a ; je 0x40ce6a
mov al, ch
@@ -16061,7 +16062,7 @@ add esp, 4
loc_0040ce6a:
mov esi, dword [esp + 0x418]
imul eax, esi, 0x68
-cmp byte [eax + ref_00496ba9], 0 ; cmp byte [eax + 0x496ba9], 0
+cmp byte [eax + (_players+65)], 0 ; cmp byte [eax + 0x496ba9], 0
je short loc_0040ce86 ; je 0x40ce86
push esi
call fcn_0040cc1a ; call 0x40cc1a
@@ -16117,7 +16118,7 @@ jmp short loc_0040cec7 ; jmp 0x40cec7
loc_0040cefd:
imul esi, dword [esp + 0x418], 0x68
-mov ebx, ref_00496b68 ; mov ebx, 0x496b68
+mov ebx, (_players+0) ; mov ebx, 0x496b68
add ebx, esi
lea eax, [ebx + 0x1c]
mov edx, eax
@@ -16131,7 +16132,7 @@ push eax
call fcn_00456f60 ; call 0x456f60
add esp, 0xc
xor eax, eax
-mov al, byte [esi + ref_00496b7b] ; mov al, byte [esi + 0x496b7b]
+mov al, byte [esi + (_players+19)] ; mov al, byte [esi + 0x496b7b]
mov byte [eax + ref_004990f4], 2 ; mov byte [eax + 0x4990f4], 2
mov esi, dword [esp + 0x418]
push esi
@@ -16148,7 +16149,7 @@ je short loc_0040cf6a ; je 0x40cf6a
imul eax, ebx, 0x68
mov edx, esi
xor ebp, ebp
-mov dword [eax + edx*4 + ref_00496bb4], ebp ; mov dword [eax + edx*4 + 0x496bb4], ebp
+mov dword [eax + edx*4 + (_players+76)], ebp ; mov dword [eax + edx*4 + 0x496bb4], ebp
loc_0040cf6a:
inc ebx
@@ -16206,7 +16207,7 @@ loc_0040d008:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0040d029 ; jge 0x40d029
imul edx, ebx, 0x68
-mov cl, byte [edx + ref_00496b7d] ; mov cl, byte [edx + 0x496b7d]
+mov cl, byte [edx + (_players+21)] ; mov cl, byte [edx + 0x496b7d]
test cl, cl
je short loc_0040d026 ; je 0x40d026
test cl, 1
@@ -16232,7 +16233,7 @@ cmp eax, 1
jne short loc_0040d089 ; jne 0x40d089
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -16423,7 +16424,7 @@ call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [esp + 0x418], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -16497,7 +16498,7 @@ loc_0040d2b8:
cmp eax, dword [_nplayers] ; cmp eax, dword [0x499114]
jge short loc_0040d2d0 ; jge 0x40d2d0
imul edx, eax, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je short loc_0040d2cd ; je 0x40d2cd
inc ecx
@@ -16524,13 +16525,13 @@ jge short loc_0040d316 ; jge 0x40d316
cmp eax, esi
je short loc_0040d313 ; je 0x40d313
imul edx, eax, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je short loc_0040d313 ; je 0x40d313
imul edx, esi, 0x68
mov ebx, eax
shl ebx, 2
add edx, ebx
-mov ebx, dword [edx + ref_00496bb4] ; mov ebx, dword [edx + 0x496bb4]
+mov ebx, dword [edx + (_players+76)] ; mov ebx, dword [edx + 0x496bb4]
cmp ecx, ebx
jge short loc_0040d313 ; jge 0x40d313
mov ecx, ebx
@@ -16561,9 +16562,9 @@ jge short loc_0040d351 ; jge 0x40d351
cmp ebx, edx
je short loc_0040d34e ; je 0x40d34e
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040d34e ; je 0x40d34e
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040d34e ; jne 0x40d34e
mov byte [esp + esi], bl
inc esi
@@ -16609,14 +16610,14 @@ shl al, 6
mov ah, byte [esp + 0x1c]
or ah, al
mov byte [esp], ah
-mov ah, byte [ebx + ref_00496b9b] ; mov ah, byte [ebx + 0x496b9b]
+mov ah, byte [ebx + (_players+51)] ; mov ah, byte [ebx + 0x496b9b]
test ah, ah
jne near loc_0040d4c5 ; jne 0x40d4c5
push edx
call fcn_0040d761 ; call 0x40d761
add esp, 4
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -16625,10 +16626,10 @@ mov esi, dword [ref_00498e80] ; mov esi, dword [0x498e80]
add esi, eax
push 0
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
@@ -16655,9 +16656,9 @@ push ecx
call fcn_0044ba63 ; call 0x44ba63
add esp, 0xc
mov al, byte [esp + 0x1c]
-add byte [ebx + ref_00496baa], al ; add byte [ebx + 0x496baa], al
+add byte [ebx + (_players+66)], al ; add byte [ebx + 0x496baa], al
mov al, byte [esp]
-mov byte [ebx + ref_00496b9b], al ; mov byte [ebx + 0x496b9b], al
+mov byte [ebx + (_players+51)], al ; mov byte [ebx + 0x496b9b], al
mov eax, edi
not eax
and dword [esi + 0x24], eax
@@ -16701,19 +16702,19 @@ call fcn_00456e11 ; call 0x456e11
add esp, 4
imul eax, dword [esp + 0x18], 0x68
mov dx, word [esi]
-mov word [eax + ref_00496b70], dx ; mov word [eax + 0x496b70], dx
+mov word [eax + (_players+8)], dx ; mov word [eax + 0x496b70], dx
mov dx, word [esi + 2]
-mov word [eax + ref_00496b72], dx ; mov word [eax + 0x496b72], dx
+mov word [eax + (_players+10)], dx ; mov word [eax + 0x496b72], dx
jmp short loc_0040d4dd ; jmp 0x40d4dd
loc_0040d4c5:
mov dl, ah
and dl, 0x3f
-mov byte [ebx + ref_00496b9b], dl ; mov byte [ebx + 0x496b9b], dl
+mov byte [ebx + (_players+51)], dl ; mov byte [ebx + 0x496b9b], dl
mov al, byte [esp]
mov dh, dl
add dh, al
-mov byte [ebx + ref_00496b9b], dh ; mov byte [ebx + 0x496b9b], dh
+mov byte [ebx + (_players+51)], dh ; mov byte [ebx + 0x496b9b], dh
loc_0040d4dd:
add esp, 4
@@ -16736,17 +16737,17 @@ call fcn_0041906a ; call 0x41906a
add esp, 4
imul edx, dword [esp + 0x14], 0x68
xor eax, eax
-mov al, byte [edx + ref_00496b9b] ; mov al, byte [edx + 0x496b9b]
+mov al, byte [edx + (_players+51)] ; mov al, byte [edx + 0x496b9b]
mov dword [esp], eax
xor ecx, ecx
-mov cx, word [edx + ref_00496b74] ; mov cx, word [edx + 0x496b74]
+mov cx, word [edx + (_players+12)] ; mov cx, word [edx + 0x496b74]
mov eax, ecx
shl eax, 2
add eax, ecx
mov ecx, dword [ref_00498e80] ; mov ecx, dword [0x498e80]
or dword [ecx + eax*8 + 0x24], ebx
xor ah, ah
-mov byte [edx + ref_00496b9b], ah ; mov byte [edx + 0x496b9b], ah
+mov byte [edx + (_players+51)], ah ; mov byte [edx + 0x496b9b], ah
mov edi, dword [esp + 0x14]
push edi
call fcn_0040b93b ; call 0x40b93b
@@ -16803,7 +16804,7 @@ mov ecx, eax
not ecx
imul ebx, dword [esp + 0x10], 0x68
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -16819,42 +16820,42 @@ add eax, edx
movsx edx, word [eax]
movsx eax, word [eax + 2]
xor ecx, ecx
-mov cx, word [ebx + ref_00496b74] ; mov cx, word [ebx + 0x496b74]
+mov cx, word [ebx + (_players+12)] ; mov cx, word [ebx + 0x496b74]
cmp ecx, dword [esp + 0x14]
jne short loc_0040d650 ; jne 0x40d650
mov ecx, dword [esp + 0x10]
cmp ecx, dword [_current_player] ; cmp ecx, dword [0x49910c]
jne short loc_0040d650 ; jne 0x40d650
-or byte [ebx + ref_00496b7d], 0x20 ; or byte [ebx + 0x496b7d], 0x20
-mov cl, byte [ebx + ref_00496b78] ; mov cl, byte [ebx + 0x496b78]
-mov byte [ebx + ref_00496b83], cl ; mov byte [ebx + 0x496b83], cl
+or byte [ebx + (_players+21)], 0x20 ; or byte [ebx + 0x496b7d], 0x20
+mov cl, byte [ebx + (_players+16)] ; mov cl, byte [ebx + 0x496b78]
+mov byte [ebx + (_players+27)], cl ; mov byte [ebx + 0x496b83], cl
xor ecx, ecx
-mov cx, word [ebx + ref_00496b70] ; mov cx, word [ebx + 0x496b70]
+mov cx, word [ebx + (_players+8)] ; mov cx, word [ebx + 0x496b70]
sub edx, ecx
mov ecx, edx
xor edx, edx
-mov dx, word [ebx + ref_00496b72] ; mov dx, word [ebx + 0x496b72]
+mov dx, word [ebx + (_players+10)] ; mov dx, word [ebx + 0x496b72]
sub eax, edx
push eax
push ecx
call fcn_00454fb4 ; call 0x454fb4
add esp, 8
-mov byte [ebx + ref_00496b78], al ; mov byte [ebx + 0x496b78], al
+mov byte [ebx + (_players+16)], al ; mov byte [ebx + 0x496b78], al
call fcn_0040dd1f ; call 0x40dd1f
jmp short loc_0040d6aa ; jmp 0x40d6aa
loc_0040d650:
mov ecx, dword [esp + 0x10]
imul ebx, ecx, 0x68
-mov word [ebx + ref_00496b70], dx ; mov word [ebx + 0x496b70], dx
-mov word [ebx + ref_00496b72], ax ; mov word [ebx + 0x496b72], ax
+mov word [ebx + (_players+8)], dx ; mov word [ebx + 0x496b70], dx
+mov word [ebx + (_players+10)], ax ; mov word [ebx + 0x496b72], ax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
-mov word [ebx + ref_00496b74], dx ; mov word [ebx + 0x496b74], dx
-mov dx, word [eax + ref_00496b76] ; mov dx, word [eax + 0x496b76]
-mov word [ebx + ref_00496b76], dx ; mov word [ebx + 0x496b76], dx
-mov al, byte [eax + ref_00496b78] ; mov al, byte [eax + 0x496b78]
-mov byte [ebx + ref_00496b83], al ; mov byte [ebx + 0x496b83], al
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
+mov word [ebx + (_players+12)], dx ; mov word [ebx + 0x496b74], dx
+mov dx, word [eax + (_players+14)] ; mov dx, word [eax + 0x496b76]
+mov word [ebx + (_players+14)], dx ; mov word [ebx + 0x496b76], dx
+mov al, byte [eax + (_players+16)] ; mov al, byte [eax + 0x496b78]
+mov byte [ebx + (_players+27)], al ; mov byte [ebx + 0x496b83], al
mov edi, ecx
push ecx
call fcn_0040b93b ; call 0x40b93b
@@ -16867,7 +16868,7 @@ add esp, 4
loc_0040d6aa:
imul eax, dword [esp + 0x10], 0x68
mov edx, dword [esp + 0x18]
-mov word [eax + ref_00496bb2], dx ; mov word [eax + 0x496bb2], dx
+mov word [eax + (_players+74)], dx ; mov word [eax + 0x496bb2], dx
pop ebp
pop edi
pop ebx
@@ -16882,9 +16883,9 @@ mov cl, bl
mov esi, 0x100
shl esi, cl
imul ebx, ebx, 0x68
-or byte [ebx + ref_00496b7d], 0x10 ; or byte [ebx + 0x496b7d], 0x10
+or byte [ebx + (_players+21)], 0x10 ; or byte [ebx + 0x496b7d], 0x10
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -16892,17 +16893,17 @@ mov edx, dword [ref_00498e80] ; mov edx, dword [0x498e80]
movsx ecx, word [edx + eax*8]
movsx edi, word [edx + eax*8 + 2]
xor edx, edx
-mov dx, word [ebx + ref_00496b70] ; mov dx, word [ebx + 0x496b70]
+mov dx, word [ebx + (_players+8)] ; mov dx, word [ebx + 0x496b70]
sub ecx, edx
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
sub edi, eax
push edi
push ecx
call fcn_00454fb4 ; call 0x454fb4
add esp, 8
-mov byte [ebx + ref_00496b78], al ; mov byte [ebx + 0x496b78], al
-mov bx, word [ebx + ref_00496b74] ; mov bx, word [ebx + 0x496b74]
+mov byte [ebx + (_players+16)], al ; mov byte [ebx + 0x496b78], al
+mov bx, word [ebx + (_players+12)] ; mov bx, word [ebx + 0x496b74]
and ebx, 0xffff
mov eax, ebx
shl eax, 2
@@ -16917,8 +16918,8 @@ ret
fcn_0040d73f:
xor edx, edx
imul eax, dword [esp + 4], 0x68
-mov ecx, dword [eax + ref_00496b9a] ; mov ecx, dword [eax + 0x496b9a]
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+mov ecx, dword [eax + (_players+50)] ; mov ecx, dword [eax + 0x496b9a]
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040d75e ; je 0x40d75e
test ecx, ecx
jne short loc_0040d75e ; jne 0x40d75e
@@ -16932,7 +16933,7 @@ fcn_0040d761:
push ebx
mov ebx, dword [esp + 8]
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9c], 0 ; cmp byte [eax + 0x496b9c], 0
+cmp byte [eax + (_players+52)], 0 ; cmp byte [eax + 0x496b9c], 0
je short loc_0040d785 ; je 0x40d785
xor dh, dh
mov byte [ebx + ref_00496b30], dh ; mov byte [ebx + 0x496b30], dh
@@ -16943,7 +16944,7 @@ add esp, 8
loc_0040d785:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9d], 0 ; cmp byte [eax + 0x496b9d], 0
+cmp byte [eax + (_players+53)], 0 ; cmp byte [eax + 0x496b9d], 0
je short loc_0040d7a4 ; je 0x40d7a4
xor ch, ch
mov byte [ebx + ref_00496b60], ch ; mov byte [ebx + 0x496b60], ch
@@ -16955,7 +16956,7 @@ add esp, 8
loc_0040d7a4:
imul ebx, ebx, 0x68
xor edx, edx
-mov dword [ebx + ref_00496b9a], edx ; mov dword [ebx + 0x496b9a], edx
+mov dword [ebx + (_players+50)], edx ; mov dword [ebx + 0x496b9a], edx
pop ebx
ret
@@ -17044,9 +17045,9 @@ jge near loc_0040dcc4 ; jge 0x40dcc4
mov edx, ebp
imul eax, ebp, 0x68
xor edx, ebp
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
loc_0040d8c8:
and eax, 0xffff
@@ -17066,7 +17067,7 @@ mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp ebp, 4
jge short loc_0040d916 ; jge 0x40d916
imul eax, ebp, 0x68
-cmp byte [eax + ref_00496ba8], 0 ; cmp byte [eax + 0x496ba8], 0
+cmp byte [eax + (_players+64)], 0 ; cmp byte [eax + 0x496ba8], 0
je short loc_0040d916 ; je 0x40d916
push ref_00482362 ; push 0x482362
call fcn_004542e9 ; call 0x4542e9
@@ -17129,7 +17130,7 @@ jmp short loc_0040d9f2 ; jmp 0x40d9f2
loc_0040d9da:
imul eax, esi, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
and eax, 0xff
add eax, 0xb
@@ -17147,7 +17148,7 @@ mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
cmp edx, 4
jge short loc_0040da30 ; jge 0x40da30
imul eax, edx, 0x68
-cmp byte [eax + ref_00496ba8], 0 ; cmp byte [eax + 0x496ba8], 0
+cmp byte [eax + (_players+64)], 0 ; cmp byte [eax + 0x496ba8], 0
je short loc_0040da30 ; je 0x40da30
push 1
push ref_00482362 ; push 0x482362
@@ -17176,7 +17177,7 @@ mov cl, byte [edx + ref_00498ea3] ; mov cl, byte [edx + 0x498ea3]
test cl, cl
jne near loc_0040dbde ; jne 0x40dbde
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -17248,8 +17249,8 @@ add esp, 0xc
loc_0040db3e:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b78] ; mov dl, byte [eax + 0x496b78]
-mov byte [eax + ref_00496b83], dl ; mov byte [eax + 0x496b83], dl
+mov dl, byte [eax + (_players+16)] ; mov dl, byte [eax + 0x496b78]
+mov byte [eax + (_players+27)], dl ; mov byte [eax + 0x496b83], dl
movsx eax, word [ebx + 2]
mov edx, dword [esp + 4]
sub edx, eax
@@ -17262,7 +17263,7 @@ call fcn_00454fb4 ; call 0x454fb4
mov edx, eax
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov byte [eax + ref_00496b78], dl ; mov byte [eax + 0x496b78], dl
+mov byte [eax + (_players+16)], dl ; mov byte [eax + 0x496b78], dl
push 0
lea eax, [esp + 8]
push eax
@@ -17305,7 +17306,7 @@ cmp eax, 3
jne short loc_0040dc21 ; jne 0x40dc21
push 2
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -17357,8 +17358,8 @@ call fcn_00456e11 ; call 0x456e11
add esp, 4
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
-mov dl, byte [eax + ref_00496b83] ; mov dl, byte [eax + 0x496b83]
-mov byte [eax + ref_00496b78], dl ; mov byte [eax + 0x496b78], dl
+mov dl, byte [eax + (_players+27)] ; mov dl, byte [eax + 0x496b83]
+mov byte [eax + (_players+16)], dl ; mov byte [eax + 0x496b78], dl
imul eax, esi, 0x34
xor dl, dl
mov byte [eax + ref_00498ea2], dl ; mov byte [eax + 0x498ea2], dl
@@ -17407,7 +17408,7 @@ imul eax, edx, 0x34
cmp edx, 4
jge near loc_0040de09 ; jge 0x40de09
imul edx, edx, 0x68
-test byte [edx + ref_00496b7d], 0x30 ; test byte [edx + 0x496b7d], 0x30
+test byte [edx + (_players+21)], 0x30 ; test byte [edx + 0x496b7d], 0x30
je short loc_0040dd53 ; je 0x40dd53
loc_0040dd40:
@@ -17420,7 +17421,7 @@ call fcn_0044808a ; call 0x44808a
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul edx, edi, 0x68
imul eax, edi, 0x34
-cmp byte [edx + ref_00496ba0], 0 ; cmp byte [edx + 0x496ba0], 0
+cmp byte [edx + (_players+56)], 0 ; cmp byte [edx + 0x496ba0], 0
je short loc_0040dd7e ; je 0x40dd7e
xor dh, dh
mov byte [eax + ref_00498ea2], dh ; mov byte [eax + 0x498ea2], dh
@@ -17428,7 +17429,7 @@ mov byte [eax + ref_00498ea5], 2 ; mov byte [eax + 0x498ea5], 2
jmp short loc_0040dd8e ; jmp 0x40dd8e
loc_0040dd7e:
-cmp byte [edx + ref_00496ba1], 0 ; cmp byte [edx + 0x496ba1], 0
+cmp byte [edx + (_players+57)], 0 ; cmp byte [edx + 0x496ba1], 0
jne short loc_0040dd40 ; jne 0x40dd40
mov byte [eax + ref_00498ea2], 2 ; mov byte [eax + 0x498ea2], 2
@@ -17444,7 +17445,7 @@ jmp short loc_0040ddd1 ; jmp 0x40ddd1
loc_0040ddb9:
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
and eax, 0xff
add eax, 0xb
@@ -17459,7 +17460,7 @@ push eax
call fcn_004542ce ; call 0x4542ce
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba8], 0 ; cmp byte [eax + 0x496ba8], 0
+cmp byte [eax + (_players+64)], 0 ; cmp byte [eax + 0x496ba8], 0
je near loc_0040dee4 ; je 0x40dee4
push 1
push ref_00482362 ; push 0x482362
@@ -17545,13 +17546,13 @@ mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
cmp edx, 4
jge short loc_0040df41 ; jge 0x40df41
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0040df30 ; jne 0x40df30
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_0040df30 ; jne 0x40df30
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne short loc_0040df30 ; jne 0x40df30
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_0040df41 ; je 0x40df41
loc_0040df30:
@@ -17584,7 +17585,7 @@ cmp dword [esp + 0x14], 0
jge short loc_0040df8d ; jge 0x40df8d
imul eax, edx, 0x68
mov ecx, ebx
-cmp dword [eax + ecx*4 + ref_00496bb4], 0 ; cmp dword [eax + ecx*4 + 0x496bb4], 0
+cmp dword [eax + ecx*4 + (_players+76)], 0 ; cmp dword [eax + ecx*4 + 0x496bb4], 0
je short loc_0040dfd7 ; je 0x40dfd7
loc_0040df8d:
@@ -17593,20 +17594,20 @@ mov ecx, ebx
shl ecx, 2
add eax, ecx
mov ecx, dword [esp + 0x14]
-mov edi, dword [eax + ref_00496bb4] ; mov edi, dword [eax + 0x496bb4]
+mov edi, dword [eax + (_players+76)] ; mov edi, dword [eax + 0x496bb4]
add edi, ecx
-mov dword [eax + ref_00496bb4], edi ; mov dword [eax + 0x496bb4], edi
+mov dword [eax + (_players+76)], edi ; mov dword [eax + 0x496bb4], edi
test edi, edi
jge short loc_0040dfb5 ; jge 0x40dfb5
xor ecx, ecx
-mov dword [eax + ref_00496bb4], ecx ; mov dword [eax + 0x496bb4], ecx
+mov dword [eax + (_players+76)], ecx ; mov dword [eax + 0x496bb4], ecx
loc_0040dfb5:
cmp dword [esp + 0x14], 0
jle short loc_0040dfd7 ; jle 0x40dfd7
imul eax, edx, 0x68
xor ecx, ecx
-mov cl, byte [eax + ref_00496ba9] ; mov cl, byte [eax + 0x496ba9]
+mov cl, byte [eax + (_players+65)] ; mov cl, byte [eax + 0x496ba9]
lea eax, [ebx + 1]
cmp ecx, eax
jne short loc_0040dfd7 ; jne 0x40dfd7
@@ -17629,7 +17630,7 @@ loc_0040dfde:
cmp eax, dword [_nplayers] ; cmp eax, dword [0x499114]
jge near loc_0040d2d0 ; jge 0x40d2d0
imul edx, eax, 0x68
-test byte [edx + ref_00496b7d], 1 ; test byte [edx + 0x496b7d], 1
+test byte [edx + (_players+21)], 1 ; test byte [edx + 0x496b7d], 1
je short loc_0040dff7 ; je 0x40dff7
inc ecx
@@ -17644,11 +17645,11 @@ loc_0040dffc:
cmp edx, dword [_nplayers] ; cmp edx, dword [0x499114]
jge short loc_0040dfd9 ; jge 0x40dfd9
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040e020 ; je 0x40e020
-cmp byte [eax + ref_00496b9a], 0 ; cmp byte [eax + 0x496b9a], 0
+cmp byte [eax + (_players+50)], 0 ; cmp byte [eax + 0x496b9a], 0
je short loc_0040e020 ; je 0x40e020
-mov byte [eax + ref_00496b9a], 0x80 ; mov byte [eax + 0x496b9a], 0x80
+mov byte [eax + (_players+50)], 0x80 ; mov byte [eax + 0x496b9a], 0x80
loc_0040e020:
inc edx
@@ -17815,7 +17816,7 @@ and eax, 0xff
dec eax
imul eax, eax, 0x68
xor cl, cl
-mov byte [eax + ref_00496ba8], cl ; mov byte [eax + 0x496ba8], cl
+mov byte [eax + (_players+64)], cl ; mov byte [eax + 0x496ba8], cl
jmp short loc_0040e21a ; jmp 0x40e21a
loc_0040e1ba:
@@ -17830,15 +17831,15 @@ mov al, byte [ecx + ref_00496d0d] ; mov al, byte [ecx + 0x496d0d]
dec eax
imul eax, eax, 0x68
xor bl, bl
-mov byte [eax + ref_00496ba7], bl ; mov byte [eax + 0x496ba7], bl
+mov byte [eax + (_players+63)], bl ; mov byte [eax + 0x496ba7], bl
mov cl, byte [ecx + ref_00496d08] ; mov cl, byte [ecx + 0x496d08]
and ecx, 0xff
mov bx, word [ecx*2 + ref_004749e2] ; mov bx, word [ecx*2 + 0x4749e2]
-sub word [eax + ref_00496bac], bx ; sub word [eax + 0x496bac], bx
+sub word [eax + (_players+68)], bx ; sub word [eax + 0x496bac], bx
mov bx, word [ecx*2 + ref_00474a06] ; mov bx, word [ecx*2 + 0x474a06]
-sub word [eax + ref_00496bae], bx ; sub word [eax + 0x496bae], bx
+sub word [eax + (_players+70)], bx ; sub word [eax + 0x496bae], bx
mov bx, word [ecx*2 + ref_00474a2a] ; mov bx, word [ecx*2 + 0x474a2a]
-sub word [eax + ref_00496bb0], bx ; sub word [eax + 0x496bb0], bx
+sub word [eax + (_players+72)], bx ; sub word [eax + 0x496bb0], bx
loc_0040e21a:
mov eax, edx
@@ -17942,7 +17943,7 @@ push ebp
sub esp, 0x30
imul ebx, dword [esp + 0x44], 0x68
xor eax, eax
-mov al, byte [ebx + ref_00496ba7] ; mov al, byte [ebx + 0x496ba7]
+mov al, byte [ebx + (_players+63)] ; mov al, byte [ebx + 0x496ba7]
dec eax
mov dword [esp + 0x2c], eax
mov edi, eax
@@ -17950,7 +17951,7 @@ shl edi, 2
sub edi, eax
shl edi, 3
movzx ebp, byte [edi + ref_00496d08] ; movzx ebp, byte [edi + 0x496d08]
-cmp dword [ebx + ref_00496b9a], 0 ; cmp dword [ebx + 0x496b9a], 0
+cmp dword [ebx + (_players+50)], 0 ; cmp dword [ebx + 0x496b9a], 0
je short loc_0040e36e ; je 0x40e36e
inc eax
push eax
@@ -17961,10 +17962,10 @@ jmp near loc_0040e661 ; jmp 0x40e661
loc_0040e36e:
push 4
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
@@ -17987,7 +17988,7 @@ push 0
push 0xffffffffffffffff
call fcn_0040829d ; call 0x40829d
add esp, 8
-mov ax, word [ebx + ref_00496b74] ; mov ax, word [ebx + 0x496b74]
+mov ax, word [ebx + (_players+12)] ; mov ax, word [ebx + 0x496b74]
mov word [edi + ref_00496d0a], ax ; mov word [edi + 0x496d0a], ax
mov eax, dword [ref_0048a0e0] ; mov eax, dword [0x48a0e0]
mov edx, dword [eax]
@@ -18194,7 +18195,7 @@ jne short loc_0040e661 ; jne 0x40e661
loc_0040e631:
imul eax, dword [esp + 0x44], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -18640,7 +18641,7 @@ xor edx, ebx
mov word [eax*8 + ref_00496d0a], dx ; mov word [eax*8 + 0x496d0a], dx
mov edi, dword [esp + 0x94]
imul eax, edi, 0x68
-cmp byte [eax + ref_00496ba7], 0 ; cmp byte [eax + 0x496ba7], 0
+cmp byte [eax + (_players+63)], 0 ; cmp byte [eax + 0x496ba7], 0
je short loc_0040eb47 ; je 0x40eb47
push edi
call fcn_0040e32c ; call 0x40e32c
@@ -18655,13 +18656,13 @@ add esp, 0xc
mov al, byte [esp + 0x9c]
inc al
imul ebx, dword [esp + 0x94], 0x68
-mov byte [ebx + ref_00496ba7], al ; mov byte [ebx + 0x496ba7], al
+mov byte [ebx + (_players+63)], al ; mov byte [ebx + 0x496ba7], al
mov edx, dword [esp + 0x9c]
mov eax, edx
shl eax, 2
sub eax, edx
shl eax, 3
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov word [eax + ref_00496d0a], dx ; mov word [eax + 0x496d0a], dx
mov dl, byte [esp + 0x94]
inc dl
@@ -18687,11 +18688,11 @@ mov byte [edx + eax*8 + 0x26], 0
loc_0040ebcc:
imul eax, dword [esp + 0x94], 0x68
mov dx, word [esi*2 + ref_004749e2] ; mov dx, word [esi*2 + 0x4749e2]
-add word [eax + ref_00496bac], dx ; add word [eax + 0x496bac], dx
+add word [eax + (_players+68)], dx ; add word [eax + 0x496bac], dx
mov dx, word [esi*2 + ref_00474a06] ; mov dx, word [esi*2 + 0x474a06]
-add word [eax + ref_00496bae], dx ; add word [eax + 0x496bae], dx
+add word [eax + (_players+70)], dx ; add word [eax + 0x496bae], dx
mov dx, word [esi*2 + ref_00474a2a] ; mov dx, word [esi*2 + 0x474a2a]
-add word [eax + ref_00496bb0], dx ; add word [eax + 0x496bb0], dx
+add word [eax + (_players+72)], dx ; add word [eax + 0x496bb0], dx
lea edx, [esi - 1]
cmp edx, 0xe
ja near fcn_0040ece6 ; ja 0x40ece6
@@ -18738,7 +18739,7 @@ jne short loc_0040eca4 ; jne 0x40eca4
cmp ebx, ebp
je short loc_0040eca1 ; je 0x40eca1
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040eca1 ; je 0x40eca1
push 1
push esi
@@ -18759,7 +18760,7 @@ jne short fcn_0040ece6 ; jne 0x40ece6
mov ecx, dword [esp + 0x94]
imul eax, ecx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -18965,7 +18966,7 @@ jmp near loc_0040ee46 ; jmp 0x40ee46
fcn_0040ef1b:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19019,7 +19020,7 @@ jne near fcn_0040ece6 ; jne 0x40ece6
cmp ebx, ebp
je short loc_0040efe1 ; je 0x40efe1
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040efe1 ; je 0x40efe1
push 0
push esi
@@ -19034,7 +19035,7 @@ jmp short loc_0040efab ; jmp 0x40efab
fcn_0040efe4:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19087,7 +19088,7 @@ jmp near fcn_0040ece6 ; jmp 0x40ece6
fcn_0040f083:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19157,7 +19158,7 @@ jmp near fcn_0040ece6 ; jmp 0x40ece6
fcn_0040f155:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19291,7 +19292,7 @@ jmp near loc_0040f24b ; jmp 0x40f24b
fcn_0040f2eb:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19348,9 +19349,9 @@ xor edx, edx
mov dword [esp + 0x88], edx
mov ecx, dword [esp + 0xa8]
imul ebx, ecx, 0x68
-cmp byte [ebx + ref_00496b9a], 0 ; cmp byte [ebx + 0x496b9a], 0
+cmp byte [ebx + (_players+50)], 0 ; cmp byte [ebx + 0x496b9a], 0
jne near loc_0040f8b3 ; jne 0x40f8b3
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je near loc_0040f8b3 ; je 0x40f8b3
mov edx, dword [esp + 0xac]
mov eax, edx
@@ -19359,7 +19360,7 @@ add eax, edx
mov esi, dword [ref_00498e80] ; mov esi, dword [0x498e80]
mov si, word [esi + eax*8 + 0x20]
and esi, 0xffff
-mov al, byte [ebx + ref_00496ba7] ; mov al, byte [ebx + 0x496ba7]
+mov al, byte [ebx + (_players+63)] ; mov al, byte [ebx + 0x496ba7]
cmp al, 0xa
jb short loc_0040f3ff ; jb 0x40f3ff
lea ebx, [esi - 0x7d0]
@@ -19376,9 +19377,9 @@ jne near loc_0040f8b3 ; jne 0x40f8b3
push 0
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -19517,9 +19518,9 @@ loc_0040f5de:
push 0
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -19686,9 +19687,9 @@ je short loc_0040f8b3 ; je 0x40f8b3
push 0
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -19699,7 +19700,7 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ebx, eax
shl ebx, 2
@@ -19730,7 +19731,7 @@ sub esp, 0x80
mov edi, dword [esp + 0x94]
xor ebx, ebx
imul eax, edi, 0x68
-mov dl, byte [eax + ref_00496ba7] ; mov dl, byte [eax + 0x496ba7]
+mov dl, byte [eax + (_players+63)] ; mov dl, byte [eax + 0x496ba7]
cmp dl, 3
je short loc_0040f8e8 ; je 0x40f8e8
cmp dl, 4
@@ -19763,7 +19764,7 @@ mov eax, dword [ref_00498e88] ; mov eax, dword [0x498e88]
cmp byte [edx + eax + 0x1a], 0
jne short loc_0040f982 ; jne 0x40f982
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov edx, dword [eax*4 + ref_0047ed76] ; mov edx, dword [eax*4 + 0x47ed76]
push edx
@@ -19789,7 +19790,7 @@ je short loc_0040f9d1 ; je 0x40f9d1
test bh, 8
jne short loc_0040f9d1 ; jne 0x40f9d1
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov ecx, dword [eax*4 + ref_0047ed76] ; mov ecx, dword [eax*4 + 0x47ed76]
push ecx
@@ -19820,7 +19821,7 @@ imul eax, edi, 0x68
test bl, 0x80
je short loc_0040fa30 ; je 0x40fa30
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19837,7 +19838,7 @@ jmp near fcn_0040ece6 ; jmp 0x40ece6
loc_0040fa30:
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -19858,7 +19859,7 @@ push esi
sub esp, 0x80
xor edx, edx
imul eax, dword [esp + 0x88], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
cmp al, 8
jb short loc_0040fa84 ; jb 0x40fa84
jbe short loc_0040fa88 ; jbe 0x40fa88
@@ -19872,7 +19873,7 @@ jne short loc_0040facc ; jne 0x40facc
loc_0040fa88:
imul eax, dword [esp + 0x88], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov esi, dword [eax*4 + ref_0047ed76] ; mov esi, dword [eax*4 + 0x47ed76]
push esi
@@ -19988,11 +19989,11 @@ jge short loc_0040fbfb ; jge 0x40fbfb
cmp edx, ecx
je short loc_0040fbf8 ; je 0x40fbf8
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0040fbf8 ; je 0x40fbf8
-cmp byte [eax + ref_00496ba7], 0xe ; cmp byte [eax + 0x496ba7], 0xe
+cmp byte [eax + (_players+63)], 0xe ; cmp byte [eax + 0x496ba7], 0xe
je short loc_0040fbf1 ; je 0x40fbf1
-cmp byte [eax + ref_00496ba7], 0xf ; cmp byte [eax + 0x496ba7], 0xf
+cmp byte [eax + (_players+63)], 0xf ; cmp byte [eax + 0x496ba7], 0xf
jne short loc_0040fbf8 ; jne 0x40fbf8
loc_0040fbf1:
@@ -20015,7 +20016,7 @@ ret
fcn_0040fc00:
push ebx
imul edx, dword [esp + 8], 0x68
-mov ah, byte [edx + ref_00496ba7] ; mov ah, byte [edx + 0x496ba7]
+mov ah, byte [edx + (_players+63)] ; mov ah, byte [edx + 0x496ba7]
test ah, ah
je short loc_0040fc2b ; je 0x40fc2b
xor ecx, ecx
@@ -20024,12 +20025,12 @@ dec ecx
mov eax, ecx
shl eax, 2
sub eax, ecx
-mov dx, word [edx + ref_00496b74] ; mov dx, word [edx + 0x496b74]
+mov dx, word [edx + (_players+12)] ; mov dx, word [edx + 0x496b74]
mov word [eax*8 + ref_00496d0a], dx ; mov word [eax*8 + 0x496d0a], dx
loc_0040fc2b:
imul edx, dword [esp + 8], 0x68
-mov bl, byte [edx + ref_00496ba8] ; mov bl, byte [edx + 0x496ba8]
+mov bl, byte [edx + (_players+64)] ; mov bl, byte [edx + 0x496ba8]
test bl, bl
je short loc_0040fc55 ; je 0x40fc55
xor ecx, ecx
@@ -20038,7 +20039,7 @@ dec ecx
mov eax, ecx
shl eax, 2
sub eax, ecx
-mov dx, word [edx + ref_00496b74] ; mov dx, word [edx + 0x496b74]
+mov dx, word [edx + (_players+12)] ; mov dx, word [edx + 0x496b74]
mov word [eax*8 + ref_00496d0a], dx ; mov word [eax*8 + 0x496d0a], dx
loc_0040fc55:
@@ -27230,7 +27231,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00415457 ; jne 0x415457
cmp byte [ref_00497159], 0 ; cmp byte [0x497159], 0
je near loc_00415457 ; je 0x415457
@@ -27410,7 +27411,7 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -27436,7 +27437,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00415457 ; jne 0x415457
cmp byte [ref_00497159], 0 ; cmp byte [0x497159], 0
je near loc_00415457 ; je 0x415457
@@ -27522,7 +27523,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00415457 ; jne 0x415457
cmp byte [ref_00497159], 0 ; cmp byte [0x497159], 0
je near loc_00415457 ; je 0x415457
@@ -27556,7 +27557,7 @@ mov dword [ref_0048bd38], eax ; mov dword [0x48bd38], eax
push 0
push 0
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, 0x64
push eax
@@ -27734,7 +27735,7 @@ push 0
push 0
imul eax, ebx, 0x68
xor ecx, ecx
-mov cl, byte [eax + ref_00496b7b] ; mov cl, byte [eax + 0x496b7b]
+mov cl, byte [eax + (_players+19)] ; mov cl, byte [eax + 0x496b7b]
mov eax, esi
shl eax, 2
sub eax, esi
@@ -27834,7 +27835,7 @@ call fcn_0045144f ; call 0x45144f
add esp, 0x14
test eax, eax
jne near loc_00415cad ; jne 0x415cad
-movzx edi, byte [ref_00496b7b] ; movzx edi, byte [0x496b7b]
+movzx edi, byte [(_players+19)] ; movzx edi, byte [0x496b7b]
loc_00415a1b:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
@@ -27962,7 +27963,7 @@ cmp esi, eax
jge short loc_00415bc8 ; jge 0x415bc8
lea edi, [esi + 1]
imul edi, edi, 0x68
-movzx edi, byte [edi + ref_00496b7b] ; movzx edi, byte [edi + 0x496b7b]
+movzx edi, byte [edi + (_players+19)] ; movzx edi, byte [edi + 0x496b7b]
jmp short loc_00415bcd ; jmp 0x415bcd
loc_00415bc8:
@@ -28247,9 +28248,9 @@ mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
cmp esi, 4
jge short loc_00415eb3 ; jge 0x415eb3
imul eax, esi, 0x68
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
loc_00415eab:
and eax, 0xffff
@@ -28540,7 +28541,7 @@ push ref_0046caec ; push 0x46caec
call fcn_004561be ; call 0x4561be
add esp, 0x18
imul ebx, esi, 0x68
-mov ebp, dword [ebx + ref_00496b6c] ; mov ebp, dword [ebx + 0x496b6c]
+mov ebp, dword [ebx + (_players+4)] ; mov ebp, dword [ebx + 0x496b6c]
push ebp
push 0xc
push 0x56
@@ -28559,7 +28560,7 @@ mov eax, dword [ref_0048a08c] ; mov eax, dword [0x48a08c]
push eax
call fcn_00456418 ; call 0x456418
add esp, 0x10
-mov dl, byte [ebx + ref_00496ba9] ; mov dl, byte [ebx + 0x496ba9]
+mov dl, byte [ebx + (_players+65)] ; mov dl, byte [ebx + 0x496ba9]
test dl, dl
je short loc_00416288 ; je 0x416288
push 0x40
@@ -28588,7 +28589,7 @@ push 2
push 0x28
push 0x234
imul ebx, esi, 0x68
-mov ecx, dword [ebx + ref_00496b68] ; mov ecx, dword [ebx + 0x496b68]
+mov ecx, dword [ebx + (_players+0)] ; mov ecx, dword [ebx + 0x496b68]
push ecx
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -28603,7 +28604,7 @@ loc_004162d4:
mov byte [esp], 0x24
xor al, al
mov byte [esp + 1], al
-mov eax, dword [ebx + ref_00496b84] ; mov eax, dword [ebx + 0x496b84]
+mov eax, dword [ebx + (_players+28)] ; mov eax, dword [ebx + 0x496b84]
push eax
lea eax, [esp + 5]
push eax
@@ -28617,7 +28618,7 @@ push eax
push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
-mov edx, dword [ebx + ref_00496b88] ; mov edx, dword [ebx + 0x496b88]
+mov edx, dword [ebx + (_players+32)] ; mov edx, dword [ebx + 0x496b88]
push edx
lea eax, [esp + 5]
push eax
@@ -28857,7 +28858,7 @@ push 0xa
lea eax, [esp + 4]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b98] ; mov ax, word [ebx + 0x496b98]
+mov ax, word [ebx + (_players+48)] ; mov ax, word [ebx + 0x496b98]
push eax
call fcn_00457d61 ; call 0x457d61
add esp, 0xc
@@ -28870,7 +28871,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
xor eax, eax
-mov al, byte [ebx + ref_00496ba6] ; mov al, byte [ebx + 0x496ba6]
+mov al, byte [ebx + (_players+62)] ; mov al, byte [ebx + 0x496ba6]
push eax
push ref_00463902 ; push 0x463902
lea eax, [esp + 8]
@@ -28888,7 +28889,7 @@ add esp, 0x14
mov byte [esp], 0x24
xor cl, cl
mov byte [esp + 1], cl
-mov esi, dword [ebx + ref_00496b8c] ; mov esi, dword [ebx + 0x496b8c]
+mov esi, dword [ebx + (_players+36)] ; mov esi, dword [ebx + 0x496b8c]
push esi
lea eax, [esp + 5]
push eax
@@ -28902,9 +28903,9 @@ push eax
push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
-cmp dword [ebx + ref_00496b8c], 0 ; cmp dword [ebx + 0x496b8c], 0
+cmp dword [ebx + (_players+36)], 0 ; cmp dword [ebx + 0x496b8c], 0
je near loc_00416064 ; je 0x416064
-mov ebp, dword [ebx + ref_00496b94] ; mov ebp, dword [ebx + 0x496b94]
+mov ebp, dword [ebx + (_players+44)] ; mov ebp, dword [ebx + 0x496b94]
push ebp
mov eax, dword [ref_00497160] ; mov eax, dword [0x497160]
push eax
@@ -29028,7 +29029,7 @@ push ref_0046caec ; push 0x46caec
call fcn_004561be ; call 0x4561be
add esp, 0x18
imul ebx, esi, 0x68
-mov edi, dword [ebx + ref_00496b6c] ; mov edi, dword [ebx + 0x496b6c]
+mov edi, dword [ebx + (_players+4)] ; mov edi, dword [ebx + 0x496b6c]
push edi
push 4
push 0x6a
@@ -29047,7 +29048,7 @@ mov ebp, dword [ref_0048a08c] ; mov ebp, dword [0x48a08c]
push ebp
call fcn_00456418 ; call 0x456418
add esp, 0x10
-mov dh, byte [ebx + ref_00496ba9] ; mov dh, byte [ebx + 0x496ba9]
+mov dh, byte [ebx + (_players+65)] ; mov dh, byte [ebx + 0x496ba9]
test dh, dh
je short loc_0041688b ; je 0x41688b
push 0x40
@@ -29076,7 +29077,7 @@ push 2
push 0x10
push 0x246
imul ebx, esi, 0x68
-mov edx, dword [ebx + ref_00496b68] ; mov edx, dword [ebx + 0x496b68]
+mov edx, dword [ebx + (_players+0)] ; mov edx, dword [ebx + 0x496b68]
push edx
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -29088,7 +29089,7 @@ push 0x101010
push 0xc
call fcn_0044f9d8 ; call 0x44f9d8
add esp, 0x14
-mov ecx, dword [ebx + ref_00496b84] ; mov ecx, dword [ebx + 0x496b84]
+mov ecx, dword [ebx + (_players+28)] ; mov ecx, dword [ebx + 0x496b84]
push ecx
lea eax, [esp + 5]
push eax
@@ -29102,7 +29103,7 @@ push eax
push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
-mov esi, dword [ebx + ref_00496b88] ; mov esi, dword [ebx + 0x496b88]
+mov esi, dword [ebx + (_players+32)] ; mov esi, dword [ebx + 0x496b88]
push esi
lea eax, [esp + 5]
push eax
@@ -29668,10 +29669,10 @@ loc_00416fb9:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00416f3d ; jge 0x416f3d
imul edx, ebx, 0x68
-cmp word [edx + ref_00496b70], 0 ; cmp word [edx + 0x496b70], 0
+cmp word [edx + (_players+8)], 0 ; cmp word [edx + 0x496b70], 0
je short loc_00416f9f ; je 0x416f9f
xor ecx, ecx
-mov cx, word [edx + ref_00496b70] ; mov cx, word [edx + 0x496b70]
+mov cx, word [edx + (_players+8)] ; mov cx, word [edx + 0x496b70]
mov eax, ecx
shl eax, 2
sub eax, ecx
@@ -29682,7 +29683,7 @@ add eax, ecx
shl eax, 6
sar eax, 0x10
lea esi, [eax + 0x1b8]
-mov dx, word [edx + ref_00496b72] ; mov dx, word [edx + 0x496b72]
+mov dx, word [edx + (_players+10)] ; mov dx, word [edx + 0x496b72]
and edx, 0xffff
mov eax, edx
shl eax, 2
@@ -29890,13 +29891,13 @@ jmp near loc_004174c7 ; jmp 0x4174c7
loc_0041724d:
xor ebx, ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba0], 0 ; cmp byte [eax + 0x496ba0], 0
+cmp byte [eax + (_players+56)], 0 ; cmp byte [eax + 0x496ba0], 0
je short loc_00417264 ; je 0x417264
mov ebx, 2
loc_00417264:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba1], 0 ; cmp byte [eax + 0x496ba1], 0
+cmp byte [eax + (_players+57)], 0 ; cmp byte [eax + 0x496ba1], 0
je short loc_00417279 ; je 0x417279
mov ebx, 4
@@ -29933,7 +29934,7 @@ push ref_0046caec ; push 0x46caec
call fcn_004562a5 ; call 0x4562a5
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 3
ja near loc_004174a3 ; ja 0x4174a3
@@ -29944,7 +29945,7 @@ loc_00417302:
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
mov eax, dword [ref_00475288] ; mov eax, dword [0x475288]
add eax, 0x1a
-cmp byte [edx + ref_00496ba0], 0 ; cmp byte [edx + 0x496ba0], 0
+cmp byte [edx + (_players+56)], 0 ; cmp byte [edx + 0x496ba0], 0
jne short loc_0041733f ; jne 0x41733f
push eax
mov eax, dword [ref_00475284] ; mov eax, dword [0x475284]
@@ -29981,11 +29982,11 @@ jge near loc_004174a3 ; jge 0x4174a3
loc_00417361:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7a] ; mov dl, byte [eax + 0x496b7a]
+mov dl, byte [eax + (_players+18)] ; mov dl, byte [eax + 0x496b7a]
dec edx
cmp ebx, edx
jg short loc_004173c7 ; jg 0x4173c7
-cmp byte [eax + ref_00496ba0], 0 ; cmp byte [eax + 0x496ba0], 0
+cmp byte [eax + (_players+56)], 0 ; cmp byte [eax + 0x496ba0], 0
jne short loc_004173c7 ; jne 0x4173c7
mov eax, ebx
shl eax, 2
@@ -30049,11 +30050,11 @@ jge near loc_004174a3 ; jge 0x4174a3
loc_0041740f:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7a] ; mov dl, byte [eax + 0x496b7a]
+mov dl, byte [eax + (_players+18)] ; mov dl, byte [eax + 0x496b7a]
dec edx
cmp ebx, edx
jg short loc_00417470 ; jg 0x417470
-cmp byte [eax + ref_00496ba0], 0 ; cmp byte [eax + 0x496ba0], 0
+cmp byte [eax + (_players+56)], 0 ; cmp byte [eax + 0x496ba0], 0
jne short loc_00417470 ; jne 0x417470
mov eax, ebx
shl eax, 4
@@ -30411,7 +30412,7 @@ push ebx
push esi
lea eax, [ebp - 1]
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -30547,7 +30548,7 @@ push ebx
push esi
lea eax, [ebp - 1]
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -30701,7 +30702,7 @@ push ebx
push esi
lea eax, [ebp - 1]
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -30751,7 +30752,7 @@ jmp short loc_00417bdb ; jmp 0x417bdb
loc_00417ba1:
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
jmp short loc_00417bdb ; jmp 0x417bdb
@@ -31291,14 +31292,14 @@ loc_004181f0:
cmp al, 0xb
jne near loc_00418c30 ; jne 0x418c30
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba0], 0 ; cmp byte [eax + 0x496ba0], 0
+cmp byte [eax + (_players+56)], 0 ; cmp byte [eax + 0x496ba0], 0
jne near loc_00418c30 ; jne 0x418c30
push 0
push ref_00482322 ; push 0x482322
call fcn_004542ce ; call 0x4542ce
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
cmp al, 1
jb near loc_004182a6 ; jb 0x4182a6
jbe short loc_0041823b ; jbe 0x41823b
@@ -31331,7 +31332,7 @@ jg short loc_00418245 ; jg 0x418245
mov dl, bl
inc dl
imul eax, ebp, 0x68
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
jmp short loc_00418245 ; jmp 0x418245
loc_00418274:
@@ -31356,7 +31357,7 @@ jg short loc_0041827e ; jg 0x41827e
mov dl, bl
inc dl
imul eax, edi, 0x68
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
jmp short loc_0041827e ; jmp 0x41827e
loc_004182a6:
@@ -32133,7 +32134,7 @@ jge near loc_00418d2a ; jge 0x418d2a
push 0
push 0
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, 0x22f
push eax
@@ -32156,22 +32157,22 @@ mov ecx, dword [ref_00475114] ; mov ecx, dword [0x475114]
dec ecx
imul eax, ecx, 0x68
xor ebx, ebx
-mov bx, word [eax + ref_00496b74] ; mov bx, word [eax + 0x496b74]
+mov bx, word [eax + (_players+12)] ; mov bx, word [eax + 0x496b74]
mov edx, ebx
shl edx, 2
add edx, ebx
mov ebx, dword [ref_00498e80] ; mov ebx, dword [0x498e80]
mov dx, word [ebx + edx*8]
-mov word [eax + ref_00496b70], dx ; mov word [eax + 0x496b70], dx
+mov word [eax + (_players+8)], dx ; mov word [eax + 0x496b70], dx
xor esi, esi
-mov si, word [eax + ref_00496b74] ; mov si, word [eax + 0x496b74]
+mov si, word [eax + (_players+12)] ; mov si, word [eax + 0x496b74]
mov edx, esi
shl edx, 2
add edx, esi
mov dx, word [ebx + edx*8 + 2]
-mov word [eax + ref_00496b72], dx ; mov word [eax + 0x496b72], dx
-mov dl, byte [eax + ref_00496bcc] ; mov dl, byte [eax + 0x496bcc]
-mov byte [eax + ref_00496b7d], dl ; mov byte [eax + 0x496b7d], dl
+mov word [eax + (_players+10)], dx ; mov word [eax + 0x496b72], dx
+mov dl, byte [eax + (_players+100)] ; mov dl, byte [eax + 0x496bcc]
+mov byte [eax + (_players+21)], dl ; mov byte [eax + 0x496b7d], dl
push ecx
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -32188,7 +32189,7 @@ mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp ebp, 4
jge short loc_00418d41 ; jge 0x418d41
imul eax, ebp, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
jne short loc_00418d5f ; jne 0x418d5f
loc_00418d41:
@@ -32248,7 +32249,7 @@ mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
cmp esi, 4
jge near loc_00418e75 ; jge 0x418e75
imul eax, esi, 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
jne near loc_00418e75 ; jne 0x418e75
push esi
call fcn_0042bf03 ; call 0x42bf03
@@ -32275,11 +32276,11 @@ call fcn_00447d97 ; call 0x447d97
loc_00418e2d:
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne short loc_00418e51 ; jne 0x418e51
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne short loc_00418e51 ; jne 0x418e51
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_00418e64 ; je 0x418e64
loc_00418e51:
@@ -32314,7 +32315,7 @@ add esp, 4
test eax, eax
je short loc_00418ead ; je 0x418ead
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
push eax
call fcn_0041982d ; call 0x41982d
@@ -32355,24 +32356,24 @@ loc_00418efb:
cmp ecx, 4
jge near loc_00418f93 ; jge 0x418f93
imul eax, ecx, 0x68
-test byte [eax + ref_00496b7d], 0x30 ; test byte [eax + 0x496b7d], 0x30
+test byte [eax + (_players+21)], 0x30 ; test byte [eax + 0x496b7d], 0x30
je near loc_00418f93 ; je 0x418f93
push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 0x10 ; test byte [eax + 0x496b7d], 0x10
+test byte [eax + (_players+21)], 0x10 ; test byte [eax + 0x496b7d], 0x10
je short loc_00418f80 ; je 0x418f80
-mov bl, byte [eax + ref_00496b83] ; mov bl, byte [eax + 0x496b83]
+mov bl, byte [eax + (_players+27)] ; mov bl, byte [eax + 0x496b83]
and bl, 0xf
cmp bl, 0xf
je short loc_00418f42 ; je 0x418f42
-mov byte [eax + ref_00496b78], bl ; mov byte [eax + 0x496b78], bl
+mov byte [eax + (_players+16)], bl ; mov byte [eax + 0x496b78], bl
loc_00418f42:
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul eax, ebp, 0x68
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
push eax
push ebp
@@ -32380,7 +32381,7 @@ call fcn_0040f381 ; call 0x40f381
add esp, 8
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
push eax
push edx
@@ -32389,7 +32390,7 @@ add esp, 8
loc_00418f80:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-and byte [eax + ref_00496b7d], 0xf ; and byte [eax + 0x496b7d], 0xf
+and byte [eax + (_players+21)], 0xf ; and byte [eax + 0x496b7d], 0xf
jmp near loc_00419058 ; jmp 0x419058
loc_00418f93:
@@ -32430,9 +32431,9 @@ jge short loc_00419008 ; jge 0x419008
loc_00418fee:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
jne short loc_00419008 ; jne 0x419008
-cmp word [eax + ref_00496b70], 0 ; cmp word [eax + 0x496b70], 0
+cmp word [eax + (_players+8)], 0 ; cmp word [eax + 0x496b70], 0
jne short loc_00418f95 ; jne 0x418f95
loc_00419008:
@@ -32443,7 +32444,7 @@ mov byte [ref_0046caff], cl ; mov byte [0x46caff], cl
push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
-and byte [ref_00496b7d], 0xfb ; and byte [0x496b7d], 0xfb
+and byte [(_players+21)], 0xfb ; and byte [0x496b7d], 0xfb
loc_0041902a:
test ebx, ebx
@@ -32908,7 +32909,7 @@ push edi
push ebp
sub esp, 0x1c
imul esi, dword [_current_player], 0x68 ; imul esi, dword [0x49910c], 0x68
-movzx esi, byte [esi + ref_00496b7a] ; movzx esi, byte [esi + 0x496b7a]
+movzx esi, byte [esi + (_players+18)] ; movzx esi, byte [esi + 0x496b7a]
mov ecx, dword [esp + 0x30]
test ecx, ecx
jne short loc_004195ae ; jne 0x4195ae
@@ -32934,7 +32935,7 @@ mov dword [esp + 0x10], ecx
loc_004195b7:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b78] ; mov dl, byte [eax + 0x496b78]
+mov dl, byte [eax + (_players+16)] ; mov dl, byte [eax + 0x496b78]
mov eax, 8
sub eax, dword [ref_00499088] ; sub eax, dword [0x499088]
add eax, edx
@@ -33200,7 +33201,7 @@ mov ebx, dword [eax + 0x24]
and ebx, 0xff
mov byte [esp + 0xf4], 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_00419884 ; je 0x419884
test ebx, ebx
jne near loc_0041b3d0 ; jne 0x41b3d0
@@ -33252,12 +33253,12 @@ jae near loc_0041b077 ; jae 0x41b077
cmp byte [esi + 0x18], 0
jne near loc_0041b077 ; jne 0x41b077
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0041b077 ; jne 0x41b077
movzx ebp, word [esi + 0x1e]
imul ebp, dword [ref_004990e8] ; imul ebp, dword [0x4990e8]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp ebp, dword [eax + ref_00496b84] ; cmp ebp, dword [eax + 0x496b84]
+cmp ebp, dword [eax + (_players+28)] ; cmp ebp, dword [eax + 0x496b84]
jg near loc_00419a52 ; jg 0x419a52
push ebp
lea eax, [esi + 4]
@@ -33269,10 +33270,10 @@ push eax
call fcn_00457110 ; call 0x457110
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 6 ; test byte [eax + 0x496b7d], 6
+test byte [eax + (_players+21)], 6 ; test byte [eax + 0x496b7d], 6
jne short loc_004199a7 ; jne 0x4199a7
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0041b077 ; jne 0x41b077
mov eax, esp
push eax
@@ -33289,7 +33290,7 @@ add esp, 4
test eax, eax
jne near loc_0041b077 ; jne 0x41b077
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-sub dword [eax + ref_00496b84], ebp ; sub dword [eax + 0x496b84], ebp
+sub dword [eax + (_players+28)], ebp ; sub dword [eax + 0x496b84], ebp
push 1
push 0
push 0
@@ -33307,7 +33308,7 @@ loc_004199f1:
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -33370,7 +33371,7 @@ xor eax, eax
mov al, byte [esi + 0x19]
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496ba9] ; mov al, byte [eax + 0x496ba9]
+mov al, byte [eax + (_players+65)] ; mov al, byte [eax + 0x496ba9]
and eax, 0xff
mov dword [esp + 0xe4], eax
cmp byte [esi + 0x18], 0
@@ -33527,7 +33528,7 @@ xor eax, eax
mov al, byte [esi + 0x19]
dec eax
imul eax, eax, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
lea eax, [esp + 0xac]
push eax
@@ -33547,7 +33548,7 @@ fdivp st1 ; fdivp st(1)
fstp dword [esp + 0xc4]
lea eax, [edi - 1]
imul eax, eax, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
lea eax, [esp + 0x98]
push eax
@@ -33657,8 +33658,8 @@ add eax, edx
cmp ebp, eax
jge short loc_00419e34 ; jge 0x419e34
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp ebp, edx
jle short loc_00419e67 ; jle 0x419e67
@@ -33697,8 +33698,8 @@ add eax, edx
cmp ebp, eax
jge short loc_00419e9a ; jge 0x419e9a
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp ebp, edx
jle short loc_00419ec7 ; jle 0x419ec7
@@ -33730,7 +33731,7 @@ add esp, 4
cmp eax, 0xffffffff
je short loc_00419f2a ; je 0x419f2a
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0xac]
push eax
@@ -33843,9 +33844,9 @@ jmp near loc_0041b077 ; jmp 0x41b077
loc_0041a013:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0041b077 ; jne 0x41b077
-cmp byte [eax + ref_00496ba7], 0xc ; cmp byte [eax + 0x496ba7], 0xc
+cmp byte [eax + (_players+63)], 0xc ; cmp byte [eax + 0x496ba7], 0xc
je near loc_0041b077 ; je 0x41b077
xor ecx, ecx
mov cl, byte [esi + 0x1a]
@@ -33857,7 +33858,7 @@ mov cx, word [esi + 0x1c]
add edx, ecx
mov ebp, dword [ref_004990e8] ; mov ebp, dword [0x4990e8]
imul ebp, edx
-cmp ebp, dword [eax + ref_00496b84] ; cmp ebp, dword [eax + 0x496b84]
+cmp ebp, dword [eax + (_players+28)] ; cmp ebp, dword [eax + 0x496b84]
jg near loc_0041a159 ; jg 0x41a159
push ebp
lea eax, [esi + 4]
@@ -33869,7 +33870,7 @@ call fcn_00457110 ; call 0x457110
add esp, 0x10
xor edi, edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 6 ; test byte [eax + 0x496b7d], 6
+test byte [eax + (_players+21)], 6 ; test byte [eax + 0x496b7d], 6
je short loc_0041a098 ; je 0x41a098
push ebp
call fcn_0041d7d4 ; call 0x41d7d4
@@ -33880,7 +33881,7 @@ mov edi, eax
loc_0041a098:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0041a0b8 ; jne 0x41a0b8
mov eax, esp
push eax
@@ -33928,7 +33929,7 @@ mov dword [esi + 0x30], eax
loc_0041a12b:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-sub dword [eax + ref_00496b84], ebp ; sub dword [eax + 0x496b84], ebp
+sub dword [eax + (_players+28)], ebp ; sub dword [eax + 0x496b84], ebp
push 0
add esi, 4
push esi
@@ -33973,7 +33974,7 @@ mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
inc ecx
cmp edx, ecx
jne near loc_0041a370 ; jne 0x41a370
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0041b077 ; jne 0x41b077
mov edx, dword [esp + 0xe0]
cmp byte [edx + 0x1a], 0
@@ -33982,10 +33983,10 @@ movzx ebp, word [edx + 0x22]
imul ebp, dword [ref_004990e8] ; imul ebp, dword [0x4990e8]
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-cmp ebp, dword [eax + ref_00496b84] ; cmp ebp, dword [eax + 0x496b84]
+cmp ebp, dword [eax + (_players+28)] ; cmp ebp, dword [eax + 0x496b84]
jg near loc_00419a52 ; jg 0x419a52
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0041a23e ; jne 0x41a23e
push 0
call fcn_00440aac ; call 0x440aac
@@ -34024,7 +34025,7 @@ call fcn_004542ce ; call 0x4542ce
add esp, 8
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-sub dword [eax + ref_00496b84], ebp ; sub dword [eax + 0x496b84], ebp
+sub dword [eax + (_players+28)], ebp ; sub dword [eax + 0x496b84], ebp
mov ecx, dword [esp + 0x10c]
push ecx
push edi
@@ -34040,7 +34041,7 @@ jae near loc_0041b077 ; jae 0x41b077
mov ebp, dword [esp + 0xe0]
movzx ebp, word [ebp + 0x24]
imul ebp, dword [ref_004990e8] ; imul ebp, dword [0x4990e8]
-cmp ebp, dword [eax + ref_00496b84] ; cmp ebp, dword [eax + 0x496b84]
+cmp ebp, dword [eax + (_players+28)] ; cmp ebp, dword [eax + 0x496b84]
jg near loc_0041a159 ; jg 0x41a159
push ebp
push edi
@@ -34050,7 +34051,7 @@ push eax
call fcn_00457110 ; call 0x457110
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ch, byte [eax + ref_00496b7d] ; mov ch, byte [eax + 0x496b7d]
+mov ch, byte [eax + (_players+21)] ; mov ch, byte [eax + 0x496b7d]
test ch, 6
jne short loc_0041a32f ; jne 0x41a32f
cmp ch, 1
@@ -34070,7 +34071,7 @@ add esp, 4
test eax, eax
jne near loc_0041b077 ; jne 0x41b077
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-sub dword [eax + ref_00496b84], ebp ; sub dword [eax + 0x496b84], ebp
+sub dword [eax + (_players+28)], ebp ; sub dword [eax + 0x496b84], ebp
mov eax, dword [esp + 0xe0]
mov dh, byte [eax + 0x1a]
inc dh
@@ -34114,7 +34115,7 @@ mov edx, dword [esp + 0xe0]
mov al, byte [edx + 0x19]
dec eax
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0xac]
push eax
@@ -34196,7 +34197,7 @@ jmp near loc_0041a56f ; jmp 0x41a56f
loc_0041a4db:
xor ebp, ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dh, byte [eax + ref_00496b79] ; mov dh, byte [eax + 0x496b79]
+mov dh, byte [eax + (_players+17)] ; mov dh, byte [eax + 0x496b79]
test dh, 3
je near loc_0041a581 ; je 0x41a581
mov al, dh
@@ -34286,8 +34287,8 @@ add eax, edx
cmp ebx, eax
jge short loc_0041a60e ; jge 0x41a60e
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp ebx, edx
jle short loc_0041a63d ; jle 0x41a63d
@@ -34325,8 +34326,8 @@ add eax, edx
cmp ebp, eax
jge short loc_0041a670 ; jge 0x41a670
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp ebp, edx
jle short loc_0041a692 ; jle 0x41a692
@@ -34361,7 +34362,7 @@ add esp, 4
cmp eax, 0xffffffff
je short loc_0041a6fc ; je 0x41a6fc
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0xac]
push eax
@@ -34428,7 +34429,7 @@ mov eax, dword [esp + 0xe0]
cmp byte [eax + 0x18], 1
jne near loc_0041b077 ; jne 0x41b077
imul eax, edi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0041b077 ; je 0x41b077
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne near loc_0041b077 ; jne 0x41b077
@@ -34464,10 +34465,10 @@ loc_0041a7e8:
mov dl, byte [esp + 0xd0]
dec dl
imul eax, edi, 0x68
-mov byte [eax + ref_00496b9a], dl ; mov byte [eax + 0x496b9a], dl
+mov byte [eax + (_players+50)], dl ; mov byte [eax + 0x496b9a], dl
test dl, dl
jne short loc_0041a805 ; jne 0x41a805
-mov byte [eax + ref_00496b9a], 0x80 ; mov byte [eax + 0x496b9a], 0x80
+mov byte [eax + (_players+50)], 0x80 ; mov byte [eax + 0x496b9a], 0x80
loc_0041a805:
push 0
@@ -34488,7 +34489,7 @@ call fcn_0044ba63 ; call 0x44ba63
add esp, 0xc
imul eax, edi, 0x68
mov dl, byte [esp + 0xd0]
-add byte [eax + ref_00496baa], dl ; add byte [eax + 0x496baa], dl
+add byte [eax + (_players+66)], dl ; add byte [eax + 0x496baa], dl
xor eax, eax
mov ax, word [esp + 0xf0]
sub eax, 0xfa0
@@ -34501,14 +34502,14 @@ add esp, 0xc
jmp near loc_0041b077 ; jmp 0x41b077
loc_0041a86b:
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0041b077 ; jne 0x41b077
-cmp byte [eax + ref_00496ba7], 0xc ; cmp byte [eax + 0x496ba7], 0xc
+cmp byte [eax + (_players+63)], 0xc ; cmp byte [eax + 0x496ba7], 0xc
je near loc_0041b077 ; je 0x41b077
mov ebp, dword [esp + 0xe0]
movzx ebp, word [ebp + 0x22]
imul ebp, dword [ref_004990e8] ; imul ebp, dword [0x4990e8]
-cmp ebp, dword [eax + ref_00496b84] ; cmp ebp, dword [eax + 0x496b84]
+cmp ebp, dword [eax + (_players+28)] ; cmp ebp, dword [eax + 0x496b84]
jg near loc_0041a159 ; jg 0x41a159
push ebp
push edi
@@ -34519,7 +34520,7 @@ call fcn_00457110 ; call 0x457110
add esp, 0x10
xor edi, edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-test byte [eax + ref_00496b7d], 6 ; test byte [eax + 0x496b7d], 6
+test byte [eax + (_players+21)], 6 ; test byte [eax + 0x496b7d], 6
je short loc_0041a8d9 ; je 0x41a8d9
push ebp
call fcn_0041d7d4 ; call 0x41d7d4
@@ -34530,7 +34531,7 @@ mov edi, eax
loc_0041a8d9:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0041a8f9 ; jne 0x41a8f9
mov eax, esp
push eax
@@ -34581,7 +34582,7 @@ mov dword [edx + 0x34], eax
loc_0041a97b:
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-sub dword [eax + ref_00496b84], ebp ; sub dword [eax + 0x496b84], ebp
+sub dword [eax + (_players+28)], ebp ; sub dword [eax + 0x496b84], ebp
mov ebx, dword [esp + 0x10c]
push ebx
push edx
@@ -34623,16 +34624,16 @@ add esp, 8
mov dword [esp + 0xd4], eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
mov dl, byte [esp + 0xd4]
-mov dh, byte [eax + ref_00496ba6] ; mov dh, byte [eax + 0x496ba6]
+mov dh, byte [eax + (_players+62)] ; mov dh, byte [eax + 0x496ba6]
add dh, dl
-mov byte [eax + ref_00496ba6], dh ; mov byte [eax + 0x496ba6], dh
+mov byte [eax + (_players+62)], dh ; mov byte [eax + 0x496ba6], dh
mov cl, dh
and cl, 0x7f
-mov byte [eax + ref_00496ba6], cl ; mov byte [eax + 0x496ba6], cl
+mov byte [eax + (_players+62)], cl ; mov byte [eax + 0x496ba6], cl
jmp near loc_0041b067 ; jmp 0x41b067
loc_0041aa3c:
-cmp byte [esi + ref_00496b7d], 1 ; cmp byte [esi + 0x496b7d], 1
+cmp byte [esi + (_players+21)], 1 ; cmp byte [esi + 0x496b7d], 1
jne short loc_0041aa76 ; jne 0x41aa76
push edi
push ref_00463a4a ; push 0x463a4a
@@ -34707,7 +34708,7 @@ test byte [esp + 0xbc], 0x80
je near loc_0041b062 ; je 0x41b062
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -34776,7 +34777,7 @@ add esp, 8
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -34808,17 +34809,17 @@ mov ebp, dword [ref_004990e8] ; mov ebp, dword [0x4990e8]
imul ebp, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
mov dl, byte [esp + 0xd4]
-mov dh, byte [eax + ref_00496ba6] ; mov dh, byte [eax + 0x496ba6]
+mov dh, byte [eax + (_players+62)] ; mov dh, byte [eax + 0x496ba6]
add dh, dl
-mov byte [eax + ref_00496ba6], dh ; mov byte [eax + 0x496ba6], dh
+mov byte [eax + (_players+62)], dh ; mov byte [eax + 0x496ba6], dh
mov cl, dh
and cl, 0x7f
-mov byte [eax + ref_00496ba6], cl ; mov byte [eax + 0x496ba6], cl
+mov byte [eax + (_players+62)], cl ; mov byte [eax + 0x496ba6], cl
jmp near loc_0041ae37 ; jmp 0x41ae37
loc_0041ac8c:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
test dl, dl
je near loc_0041ae37 ; je 0x41ae37
mov al, dl
@@ -34836,7 +34837,7 @@ imul edx, dword [ref_0048bafc] ; imul edx, dword [0x48bafc]
jmp near loc_0041abde ; jmp 0x41abde
loc_0041acd1:
-cmp byte [esi + ref_00496b7d], 1 ; cmp byte [esi + 0x496b7d], 1
+cmp byte [esi + (_players+21)], 1 ; cmp byte [esi + 0x496b7d], 1
jne short loc_0041ad0b ; jne 0x41ad0b
push edi
push ref_00463a4a ; push 0x463a4a
@@ -34959,7 +34960,7 @@ xor eax, eax
mov al, byte [ebx + 0x18]
dec eax
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0xac]
push eax
@@ -35020,8 +35021,8 @@ add eax, edx
cmp ecx, eax
jge short loc_0041af0c ; jge 0x41af0c
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-mov eax, dword [eax + ref_00496b88] ; mov eax, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+mov eax, dword [eax + (_players+32)] ; mov eax, dword [eax + 0x496b88]
add edx, eax
cmp ecx, edx
jle short loc_0041af2f ; jle 0x41af2f
@@ -35056,8 +35057,8 @@ add eax, edx
cmp ebp, eax
jge short loc_0041af62 ; jge 0x41af62
imul eax, edi, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp ebp, edx
jle short loc_0041af84 ; jle 0x41af84
@@ -35093,7 +35094,7 @@ add esp, 4
cmp eax, 0xffffffff
je short loc_0041affb ; je 0x41affb
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0xac]
push eax
@@ -35138,7 +35139,7 @@ jne short loc_0041b062 ; jne 0x41b062
cmp dword [esp + 0xd0], 0
je short loc_0041b062 ; je 0x41b062
imul eax, edi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041b062 ; je 0x41b062
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne short loc_0041b062 ; jne 0x41b062
@@ -35192,7 +35193,7 @@ inc edx
cmp eax, edx
jne short loc_0041b111 ; jne 0x41b111
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne short loc_0041b111 ; jne 0x41b111
mov eax, dword [esp + 0xe0]
cmp byte [eax + 0x18], 4
@@ -35230,7 +35231,7 @@ imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
call fcn_00415215 ; call 0x415215
loc_0041b152:
-add word [ebx + ref_00496b98], ax ; add word [ebx + 0x496b98], ax
+add word [ebx + (_players+48)], ax ; add word [ebx + 0x496b98], ax
jmp near loc_0041b3d0 ; jmp 0x41b3d0
loc_0041b15e:
@@ -35271,9 +35272,9 @@ push ref_00463a81 ; push 0x463a81
call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add word [eax + ref_00496b98], 0x32 ; add word [eax + 0x496b98], 0x32
+add word [eax + (_players+48)], 0x32 ; add word [eax + 0x496b98], 0x32
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -35318,9 +35319,9 @@ push ref_00463a8e ; push 0x463a8e
call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add word [eax + ref_00496b98], 0x1e ; add word [eax + 0x496b98], 0x1e
+add word [eax + (_players+48)], 0x1e ; add word [eax + 0x496b98], 0x1e
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -35357,7 +35358,7 @@ push ref_00463a9b ; push 0x463a9b
call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add word [eax + ref_00496b98], 0xa ; add word [eax + 0x496b98], 0xa
+add word [eax + (_players+48)], 0xa ; add word [eax + 0x496b98], 0xa
jmp near loc_0041b3d0 ; jmp 0x41b3d0
loc_0041b302:
@@ -35483,7 +35484,7 @@ mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
cmp ecx, 4
jge short loc_0041b46d ; jge 0x41b46d
imul esi, ecx, 0x68
-mov si, word [esi + ref_00496b74] ; mov si, word [esi + 0x496b74]
+mov si, word [esi + (_players+12)] ; mov si, word [esi + 0x496b74]
jmp short loc_0041b479 ; jmp 0x41b479
loc_0041b46d:
@@ -35548,7 +35549,7 @@ jge near loc_0041b7ef ; jge 0x41b7ef
cmp dword [esp + 0xa0], 0xe
jne near loc_0041b5fd ; jne 0x41b5fd
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0041b5fd ; jne 0x41b5fd
cmp dword [ref_0048baf8], 0 ; cmp dword [0x48baf8], 0
je near loc_0041b5fd ; je 0x41b5fd
@@ -35561,7 +35562,7 @@ push eax
call fcn_004542e9 ; call 0x4542e9
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba8], 0 ; cmp byte [eax + 0x496ba8], 0
+cmp byte [eax + (_players+64)], 0 ; cmp byte [eax + 0x496ba8], 0
je short loc_0041b5ab ; je 0x41b5ab
push ref_00482362 ; push 0x482362
call fcn_004542e9 ; call 0x4542e9
@@ -35581,7 +35582,7 @@ push eax
call fcn_004542ce ; call 0x4542ce
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba8], 0 ; cmp byte [eax + 0x496ba8], 0
+cmp byte [eax + (_players+64)], 0 ; cmp byte [eax + 0x496ba8], 0
je short loc_0041b5fd ; je 0x41b5fd
push 1
push ref_00482362 ; push 0x482362
@@ -35602,7 +35603,7 @@ add esp, 4
cmp eax, 0xffffffff
je short loc_0041b697 ; je 0x41b697
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
jne short loc_0041b697 ; jne 0x41b697
cmp dword [ref_0048baf8], 0 ; cmp dword [0x48baf8], 0
jne short loc_0041b697 ; jne 0x41b697
@@ -35640,7 +35641,7 @@ add esp, 4
loc_0041b697:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ch, byte [eax + ref_00496ba8] ; mov ch, byte [eax + 0x496ba8]
+mov ch, byte [eax + (_players+64)] ; mov ch, byte [eax + 0x496ba8]
test ch, ch
je near loc_0041b7ef ; je 0x41b7ef
mov al, ch
@@ -35657,7 +35658,7 @@ push ref_00482362 ; push 0x482362
call fcn_004542e9 ; call 0x4542e9
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba8] ; mov al, byte [eax + 0x496ba8]
+mov al, byte [eax + (_players+64)] ; mov al, byte [eax + 0x496ba8]
and eax, 0xff
push eax
call fcn_0040e14d ; call 0x40e14d
@@ -35718,14 +35719,14 @@ call fcn_0040d293 ; call 0x40d293
add esp, 4
mov ebx, eax
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041b7ef ; je 0x41b7ef
-mov ch, byte [eax + ref_00496ba8] ; mov ch, byte [eax + 0x496ba8]
+mov ch, byte [eax + (_players+64)] ; mov ch, byte [eax + 0x496ba8]
test ch, ch
jne short loc_0041b7ef ; jne 0x41b7ef
imul edi, dword [_current_player], 0x68 ; imul edi, dword [0x49910c], 0x68
-mov bh, byte [edi + ref_00496ba8] ; mov bh, byte [edi + 0x496ba8]
-mov byte [eax + ref_00496ba8], bh ; mov byte [eax + 0x496ba8], bh
+mov bh, byte [edi + (_players+64)] ; mov bh, byte [edi + 0x496ba8]
+mov byte [eax + (_players+64)], bh ; mov byte [eax + 0x496ba8], bh
mov cl, bl
inc cl
xor eax, eax
@@ -35735,7 +35736,7 @@ mov eax, ebx
shl eax, 2
sub eax, ebx
mov byte [eax*8 + ref_00496d0d], cl ; mov byte [eax*8 + 0x496d0d], cl
-mov byte [edi + ref_00496ba8], ch ; mov byte [edi + 0x496ba8], ch
+mov byte [edi + (_players+64)], ch ; mov byte [edi + 0x496ba8], ch
push ref_00482362 ; push 0x482362
call fcn_004542e9 ; call 0x4542e9
add esp, 4
@@ -35771,7 +35772,7 @@ mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp ebp, 4
jge short loc_0041b8a7 ; jge 0x41b8a7
imul eax, ebp, 0x68
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
je short loc_0041b89e ; je 0x41b89e
push edi
push edi
@@ -35892,7 +35893,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
lea eax, [esp + 0x84]
push eax
@@ -35939,9 +35940,9 @@ mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
xor ecx, ecx
-mov cx, word [eax + ref_00496b72] ; mov cx, word [eax + 0x496b72]
+mov cx, word [eax + (_players+10)] ; mov cx, word [eax + 0x496b72]
push ecx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -35996,9 +35997,9 @@ push ref_00463ad3 ; push 0x463ad3
call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add word [eax + ref_00496b98], 0x1f4 ; add word [eax + 0x496b98], 0x1f4
+add word [eax + (_players+48)], 0x1f4 ; add word [eax + 0x496b98], 0x1f4
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -36042,7 +36043,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -36075,9 +36076,9 @@ mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
xor ecx, ecx
-mov cx, word [eax + ref_00496b72] ; mov cx, word [eax + 0x496b72]
+mov cx, word [eax + (_players+10)] ; mov cx, word [eax + 0x496b72]
push ecx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -36090,9 +36091,9 @@ mov eax, dword [_current_player] ; mov eax, dword [0x49910c]
shl eax, 4
movzx edi, byte [eax + ref_00498df0] ; movzx edi, byte [eax + 0x498df0]
imul eax, edi, 0x68
-add word [eax + ref_00496b98], 0x1f4 ; add word [eax + 0x496b98], 0x1f4
+add word [eax + (_players+48)], 0x1f4 ; add word [eax + 0x496b98], 0x1f4
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -36133,7 +36134,7 @@ mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
cmp ebx, 4
jge near loc_0041c164 ; jge 0x41c164
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ebp, dword [eax + (_tool_strings+56)] ; mov ebp, dword [eax + 0x480d92]
@@ -36164,7 +36165,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -36254,7 +36255,7 @@ mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp ebp, 4
jge near loc_0041b8de ; jge 0x41b8de
imul eax, ebp, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+60)] ; mov ecx, dword [eax + 0x480d96]
@@ -36287,7 +36288,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -36321,13 +36322,13 @@ mov eax, dword [_current_player] ; mov eax, dword [0x49910c]
cmp eax, 4
jge near loc_0041c072 ; jge 0x41c072
imul eax, eax, 0x68
-mov dl, byte [eax + ref_00496ba8] ; mov dl, byte [eax + 0x496ba8]
+mov dl, byte [eax + (_players+64)] ; mov dl, byte [eax + 0x496ba8]
test dl, dl
jne near loc_0041c072 ; jne 0x41c072
cmp dword [ref_0048baf8], 0 ; cmp dword [0x48baf8], 0
jne short loc_0041c072 ; jne 0x41c072
mov bl, byte [esp + 0xa4]
-mov byte [eax + ref_00496ba8], bl ; mov byte [eax + 0x496ba8], bl
+mov byte [eax + (_players+64)], bl ; mov byte [eax + 0x496ba8], bl
mov cl, byte [_current_player] ; mov cl, byte [0x49910c]
inc cl
mov ebx, dword [esp + 0xa4]
@@ -36349,7 +36350,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ebx, dword [eax + (_tool_strings+64)] ; mov ebx, dword [eax + 0x480d9a]
@@ -36380,7 +36381,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
lea eax, [esp + 0x84]
push eax
@@ -36457,9 +36458,9 @@ call fcn_0040d293 ; call 0x40d293
mov esi, eax
add esp, 4
imul ebx, eax, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je near loc_0041c330 ; je 0x41c330
-mov edx, dword [ebx + ref_00496b68] ; mov edx, dword [ebx + 0x496b68]
+mov edx, dword [ebx + (_players+0)] ; mov edx, dword [ebx + 0x496b68]
push edx
lea eax, [esp + 0x84]
push eax
@@ -36468,7 +36469,7 @@ add esp, 8
cmp dword [_current_player], 4 ; cmp dword [0x49910c], 4
jne near loc_0041c293 ; jne 0x41c293
xor edi, edi
-mov di, word [ebx + ref_00496b98] ; mov di, word [ebx + 0x496b98]
+mov di, word [ebx + (_players+48)] ; mov di, word [ebx + 0x496b98]
sar edi, 1
test edi, edi
je near loc_0041c330 ; je 0x41c330
@@ -36491,13 +36492,13 @@ lea eax, [esp + 4]
push eax
call fcn_00440cac ; call 0x440cac
add esp, 8
-sub word [ebx + ref_00496b98], di ; sub word [ebx + 0x496b98], di
+sub word [ebx + (_players+48)], di ; sub word [ebx + 0x496b98], di
mov eax, dword [_current_player] ; mov eax, dword [0x49910c]
shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-add word [eax + ref_00496b98], di ; add word [eax + 0x496b98], di
+add word [eax + (_players+48)], di ; add word [eax + 0x496b98], di
cmp dword [ref_0048baf8], 0 ; cmp dword [0x48baf8], 0
je near loc_0041c330 ; je 0x41c330
jmp near loc_0041c318 ; jmp 0x41c318
@@ -36562,14 +36563,14 @@ loc_0041c34f:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0041c3ad ; jge 0x41c3ad
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je short loc_0041c3aa ; je 0x41c3aa
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
shl ebp, 4
movzx ebp, byte [ebp + ref_00498df0] ; movzx ebp, byte [ebp + 0x498df0]
cmp ebx, ebp
je short loc_0041c3aa ; je 0x41c3aa
-fild dword [esi + ref_00496b88] ; fild dword [esi + 0x496b88]
+fild dword [esi + (_players+32)] ; fild dword [esi + 0x496b88]
fmul qword [ref_00463b60] ; fmul qword [0x463b60]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x94]
@@ -36598,7 +36599,7 @@ shl eax, 4
mov al, byte [eax + ref_00498df0] ; mov al, byte [eax + 0x498df0]
and eax, 0xff
imul eax, eax, 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
lea eax, [esp + 0x84]
push eax
@@ -36665,7 +36666,7 @@ dec eax
cmp ecx, eax
je near loc_0041c7a6 ; je 0x41c7a6
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -36778,7 +36779,7 @@ dec eax
cmp ecx, eax
je near loc_0041c7a6 ; je 0x41c7a6
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0x84]
push eax
@@ -36971,11 +36972,11 @@ jge near loc_0041ce39 ; jge 0x41ce39
call fcn_0042915a ; call 0x42915a
call fcn_00436a5a ; call 0x436a5a
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0041cf5d ; je 0x41cf5d
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne near loc_0041cf5d ; jne 0x41cf5d
-mov cl, byte [eax + ref_00496b9a] ; mov cl, byte [eax + 0x496b9a]
+mov cl, byte [eax + (_players+50)] ; mov cl, byte [eax + 0x496b9a]
test cl, 0x80
je short loc_0041c8a5 ; je 0x41c8a5
push ebx
@@ -36988,13 +36989,13 @@ test cl, cl
je short loc_0041c8bc ; je 0x41c8bc
mov dl, cl
dec dl
-mov byte [eax + ref_00496b9a], dl ; mov byte [eax + 0x496b9a], dl
+mov byte [eax + (_players+50)], dl ; mov byte [eax + 0x496b9a], dl
jne short loc_0041c8bc ; jne 0x41c8bc
-or byte [eax + ref_00496b9a], 0x80 ; or byte [eax + 0x496b9a], 0x80
+or byte [eax + (_players+50)], 0x80 ; or byte [eax + 0x496b9a], 0x80
loc_0041c8bc:
imul eax, ebx, 0x68
-mov ch, byte [eax + ref_00496b9b] ; mov ch, byte [eax + 0x496b9b]
+mov ch, byte [eax + (_players+51)] ; mov ch, byte [eax + 0x496b9b]
test ch, 0x80
je short loc_0041c8d5 ; je 0x41c8d5
push ebx
@@ -37007,16 +37008,16 @@ test ch, ch
je short loc_0041c8f3 ; je 0x41c8f3
mov dh, ch
dec dh
-mov byte [eax + ref_00496b9b], dh ; mov byte [eax + 0x496b9b], dh
+mov byte [eax + (_players+51)], dh ; mov byte [eax + 0x496b9b], dh
test dh, 0x3f
jne short loc_0041c8f3 ; jne 0x41c8f3
mov ch, dh
or ch, 0x80
-mov byte [eax + ref_00496b9b], ch ; mov byte [eax + 0x496b9b], ch
+mov byte [eax + (_players+51)], ch ; mov byte [eax + 0x496b9b], ch
loc_0041c8f3:
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496b9c] ; mov dl, byte [eax + 0x496b9c]
+mov dl, byte [eax + (_players+52)] ; mov dl, byte [eax + 0x496b9c]
test dl, 0x80
je short loc_0041c90c ; je 0x41c90c
push ebx
@@ -37029,15 +37030,15 @@ test dl, dl
je short loc_0041c927 ; je 0x41c927
mov cl, dl
dec cl
-mov byte [eax + ref_00496b9c], cl ; mov byte [eax + 0x496b9c], cl
+mov byte [eax + (_players+52)], cl ; mov byte [eax + 0x496b9c], cl
jne short loc_0041c927 ; jne 0x41c927
mov dl, cl
or dl, 0x80
-mov byte [eax + ref_00496b9c], dl ; mov byte [eax + 0x496b9c], dl
+mov byte [eax + (_players+52)], dl ; mov byte [eax + 0x496b9c], dl
loc_0041c927:
imul eax, ebx, 0x68
-mov dh, byte [eax + ref_00496b9d] ; mov dh, byte [eax + 0x496b9d]
+mov dh, byte [eax + (_players+53)] ; mov dh, byte [eax + 0x496b9d]
test dh, 0x80
je short loc_0041c940 ; je 0x41c940
push ebx
@@ -37050,20 +37051,20 @@ test dh, dh
je short loc_0041c95b ; je 0x41c95b
mov ch, dh
dec ch
-mov byte [eax + ref_00496b9d], ch ; mov byte [eax + 0x496b9d], ch
+mov byte [eax + (_players+53)], ch ; mov byte [eax + 0x496b9d], ch
jne short loc_0041c95b ; jne 0x41c95b
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496b9d], dh ; mov byte [eax + 0x496b9d], dh
+mov byte [eax + (_players+53)], dh ; mov byte [eax + 0x496b9d], dh
loc_0041c95b:
imul eax, ebx, 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_0041ca8f ; jne 0x41ca8f
-test byte [eax + ref_00496b9e], 0x80 ; test byte [eax + 0x496b9e], 0x80
+test byte [eax + (_players+54)], 0x80 ; test byte [eax + 0x496b9e], 0x80
je short loc_0041c9a4 ; je 0x41c9a4
xor ch, ch
-mov byte [eax + ref_00496b9e], ch ; mov byte [eax + 0x496b9e], ch
+mov byte [eax + (_players+54)], ch ; mov byte [eax + 0x496b9e], ch
imul eax, ebx, 0x34
and byte [eax + ref_00498ea0], 0xbf ; and byte [eax + 0x498ea0], 0xbf
mov al, byte [eax + ref_00498ea1] ; mov al, byte [eax + 0x498ea1]
@@ -37078,11 +37079,11 @@ add esp, 4
loc_0041c9a4:
imul eax, ebx, 0x68
-test byte [eax + ref_00496b9f], 0x80 ; test byte [eax + 0x496b9f], 0x80
+test byte [eax + (_players+55)], 0x80 ; test byte [eax + 0x496b9f], 0x80
je near loc_0041ca7b ; je 0x41ca7b
xor cl, cl
-mov byte [eax + ref_00496b9f], cl ; mov byte [eax + 0x496b9f], cl
-mov al, byte [eax + ref_00496bce] ; mov al, byte [eax + 0x496bce]
+mov byte [eax + (_players+55)], cl ; mov byte [eax + 0x496b9f], cl
+mov al, byte [eax + (_players+102)] ; mov al, byte [eax + 0x496bce]
and al, 3
movzx esi, al
cmp esi, 1
@@ -37114,11 +37115,11 @@ jne short loc_0041ca60 ; jne 0x41ca60
loc_0041ca04:
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496bce] ; mov dl, byte [eax + 0x496bce]
-mov byte [eax + ref_00496b79], dl ; mov byte [eax + 0x496b79], dl
-mov dl, byte [eax + ref_00496bcf] ; mov dl, byte [eax + 0x496bcf]
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
-mov ch, byte [eax + ref_00496b79] ; mov ch, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+102)] ; mov dl, byte [eax + 0x496bce]
+mov byte [eax + (_players+17)], dl ; mov byte [eax + 0x496b79], dl
+mov dl, byte [eax + (_players+103)] ; mov dl, byte [eax + 0x496bcf]
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
+mov ch, byte [eax + (_players+17)] ; mov ch, byte [eax + 0x496b79]
cmp ch, 1
jne short loc_0041ca3e ; jne 0x41ca3e
mov eax, ebx
@@ -37131,7 +37132,7 @@ sub byte [eax + ref_00499160], ch ; sub byte [eax + 0x499160], ch
loc_0041ca3e:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne short loc_0041ca72 ; jne 0x41ca72
mov eax, ebx
shl eax, 2
@@ -37145,8 +37146,8 @@ jmp short loc_0041ca72 ; jmp 0x41ca72
loc_0041ca60:
imul eax, ebx, 0x68
xor dh, dh
-mov byte [eax + ref_00496b79], dh ; mov byte [eax + 0x496b79], dh
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], dh ; mov byte [eax + 0x496b79], dh
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_0041ca72:
push ebx
@@ -37155,35 +37156,35 @@ add esp, 4
loc_0041ca7b:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba1], 0x80 ; test byte [eax + 0x496ba1], 0x80
+test byte [eax + (_players+57)], 0x80 ; test byte [eax + 0x496ba1], 0x80
je short loc_0041ca8f ; je 0x41ca8f
xor dl, dl
-mov byte [eax + ref_00496ba1], dl ; mov byte [eax + 0x496ba1], dl
+mov byte [eax + (_players+57)], dl ; mov byte [eax + 0x496ba1], dl
loc_0041ca8f:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba0], 0x80 ; test byte [eax + 0x496ba0], 0x80
+test byte [eax + (_players+56)], 0x80 ; test byte [eax + 0x496ba0], 0x80
je short loc_0041caa3 ; je 0x41caa3
xor cl, cl
-mov byte [eax + ref_00496ba0], cl ; mov byte [eax + 0x496ba0], cl
+mov byte [eax + (_players+56)], cl ; mov byte [eax + 0x496ba0], cl
loc_0041caa3:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba3], 0x80 ; test byte [eax + 0x496ba3], 0x80
+test byte [eax + (_players+59)], 0x80 ; test byte [eax + 0x496ba3], 0x80
je short loc_0041cab7 ; je 0x41cab7
xor dl, dl
-mov byte [eax + ref_00496ba3], dl ; mov byte [eax + 0x496ba3], dl
+mov byte [eax + (_players+59)], dl ; mov byte [eax + 0x496ba3], dl
loc_0041cab7:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba4], 0x80 ; test byte [eax + 0x496ba4], 0x80
+test byte [eax + (_players+60)], 0x80 ; test byte [eax + 0x496ba4], 0x80
je short loc_0041cacb ; je 0x41cacb
xor cl, cl
-mov byte [eax + ref_00496ba4], cl ; mov byte [eax + 0x496ba4], cl
+mov byte [eax + (_players+60)], cl ; mov byte [eax + 0x496ba4], cl
loc_0041cacb:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba5], 0x80 ; test byte [eax + 0x496ba5], 0x80
+test byte [eax + (_players+61)], 0x80 ; test byte [eax + 0x496ba5], 0x80
je short loc_0041cae0 ; je 0x41cae0
push ebx
call fcn_0040cc1a ; call 0x40cc1a
@@ -37191,94 +37192,94 @@ add esp, 4
loc_0041cae0:
imul eax, ebx, 0x68
-test byte [eax + ref_00496ba6], 0x80 ; test byte [eax + 0x496ba6], 0x80
+test byte [eax + (_players+62)], 0x80 ; test byte [eax + 0x496ba6], 0x80
je short loc_0041caf4 ; je 0x41caf4
xor dh, dh
-mov byte [eax + ref_00496ba6], dh ; mov byte [eax + 0x496ba6], dh
+mov byte [eax + (_players+62)], dh ; mov byte [eax + 0x496ba6], dh
loc_0041caf4:
imul eax, ebx, 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_0041cb6d ; jne 0x41cb6d
-mov cl, byte [eax + ref_00496b9e] ; mov cl, byte [eax + 0x496b9e]
+mov cl, byte [eax + (_players+54)] ; mov cl, byte [eax + 0x496b9e]
test cl, cl
je short loc_0041cb25 ; je 0x41cb25
mov ch, cl
dec ch
-mov byte [eax + ref_00496b9e], ch ; mov byte [eax + 0x496b9e], ch
+mov byte [eax + (_players+54)], ch ; mov byte [eax + 0x496b9e], ch
jne short loc_0041cb25 ; jne 0x41cb25
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496b9e], dh ; mov byte [eax + 0x496b9e], dh
+mov byte [eax + (_players+54)], dh ; mov byte [eax + 0x496b9e], dh
loc_0041cb25:
imul eax, ebx, 0x68
-mov cl, byte [eax + ref_00496b9f] ; mov cl, byte [eax + 0x496b9f]
+mov cl, byte [eax + (_players+55)] ; mov cl, byte [eax + 0x496b9f]
test cl, cl
je short loc_0041cb49 ; je 0x41cb49
mov ch, cl
dec ch
-mov byte [eax + ref_00496b9f], ch ; mov byte [eax + 0x496b9f], ch
+mov byte [eax + (_players+55)], ch ; mov byte [eax + 0x496b9f], ch
jne short loc_0041cb49 ; jne 0x41cb49
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496b9f], dh ; mov byte [eax + 0x496b9f], dh
+mov byte [eax + (_players+55)], dh ; mov byte [eax + 0x496b9f], dh
loc_0041cb49:
imul eax, ebx, 0x68
-mov cl, byte [eax + ref_00496ba1] ; mov cl, byte [eax + 0x496ba1]
+mov cl, byte [eax + (_players+57)] ; mov cl, byte [eax + 0x496ba1]
test cl, cl
je short loc_0041cb6d ; je 0x41cb6d
mov ch, cl
dec ch
-mov byte [eax + ref_00496ba1], ch ; mov byte [eax + 0x496ba1], ch
+mov byte [eax + (_players+57)], ch ; mov byte [eax + 0x496ba1], ch
jne short loc_0041cb6d ; jne 0x41cb6d
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496ba1], dh ; mov byte [eax + 0x496ba1], dh
+mov byte [eax + (_players+57)], dh ; mov byte [eax + 0x496ba1], dh
loc_0041cb6d:
imul eax, ebx, 0x68
-mov cl, byte [eax + ref_00496ba0] ; mov cl, byte [eax + 0x496ba0]
+mov cl, byte [eax + (_players+56)] ; mov cl, byte [eax + 0x496ba0]
test cl, cl
je short loc_0041cb91 ; je 0x41cb91
mov ch, cl
dec ch
-mov byte [eax + ref_00496ba0], ch ; mov byte [eax + 0x496ba0], ch
+mov byte [eax + (_players+56)], ch ; mov byte [eax + 0x496ba0], ch
jne short loc_0041cb91 ; jne 0x41cb91
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496ba0], dh ; mov byte [eax + 0x496ba0], dh
+mov byte [eax + (_players+56)], dh ; mov byte [eax + 0x496ba0], dh
loc_0041cb91:
imul eax, ebx, 0x68
-mov cl, byte [eax + ref_00496ba3] ; mov cl, byte [eax + 0x496ba3]
+mov cl, byte [eax + (_players+59)] ; mov cl, byte [eax + 0x496ba3]
test cl, cl
je short loc_0041cbb5 ; je 0x41cbb5
mov ch, cl
dec ch
-mov byte [eax + ref_00496ba3], ch ; mov byte [eax + 0x496ba3], ch
+mov byte [eax + (_players+59)], ch ; mov byte [eax + 0x496ba3], ch
jne short loc_0041cbb5 ; jne 0x41cbb5
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496ba3], dh ; mov byte [eax + 0x496ba3], dh
+mov byte [eax + (_players+59)], dh ; mov byte [eax + 0x496ba3], dh
loc_0041cbb5:
imul eax, ebx, 0x68
-mov cl, byte [eax + ref_00496ba4] ; mov cl, byte [eax + 0x496ba4]
+mov cl, byte [eax + (_players+60)] ; mov cl, byte [eax + 0x496ba4]
test cl, cl
je short loc_0041cbd9 ; je 0x41cbd9
mov ch, cl
dec ch
-mov byte [eax + ref_00496ba4], ch ; mov byte [eax + 0x496ba4], ch
+mov byte [eax + (_players+60)], ch ; mov byte [eax + 0x496ba4], ch
jne short loc_0041cbd9 ; jne 0x41cbd9
mov dh, ch
or dh, 0x80
-mov byte [eax + ref_00496ba4], dh ; mov byte [eax + 0x496ba4], dh
+mov byte [eax + (_players+60)], dh ; mov byte [eax + 0x496ba4], dh
loc_0041cbd9:
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496ba5], 0 ; cmp byte [esi + 0x496ba5], 0
+cmp byte [esi + (_players+61)], 0 ; cmp byte [esi + 0x496ba5], 0
je short loc_0041cc48 ; je 0x41cc48
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -37288,7 +37289,7 @@ shl eax, 2
neg eax
push eax
xor eax, eax
-mov al, byte [esi + ref_00496ba9] ; mov al, byte [esi + 0x496ba9]
+mov al, byte [esi + (_players+65)] ; mov al, byte [esi + 0x496ba9]
dec eax
push eax
push ebx
@@ -37303,36 +37304,36 @@ neg eax
push eax
push ebx
xor eax, eax
-mov al, byte [esi + ref_00496ba9] ; mov al, byte [esi + 0x496ba9]
+mov al, byte [esi + (_players+65)] ; mov al, byte [esi + 0x496ba9]
dec eax
push eax
call fcn_0040df69 ; call 0x40df69
add esp, 0xc
-mov ch, byte [esi + ref_00496ba5] ; mov ch, byte [esi + 0x496ba5]
+mov ch, byte [esi + (_players+61)] ; mov ch, byte [esi + 0x496ba5]
dec ch
-mov byte [esi + ref_00496ba5], ch ; mov byte [esi + 0x496ba5], ch
+mov byte [esi + (_players+61)], ch ; mov byte [esi + 0x496ba5], ch
jne short loc_0041cc48 ; jne 0x41cc48
-mov byte [esi + ref_00496ba5], 0x80 ; mov byte [esi + 0x496ba5], 0x80
+mov byte [esi + (_players+61)], 0x80 ; mov byte [esi + 0x496ba5], 0x80
loc_0041cc48:
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496ba6] ; mov dl, byte [eax + 0x496ba6]
+mov dl, byte [eax + (_players+62)] ; mov dl, byte [eax + 0x496ba6]
test dl, dl
je short loc_0041cc6c ; je 0x41cc6c
mov dh, dl
dec dh
-mov byte [eax + ref_00496ba6], dh ; mov byte [eax + 0x496ba6], dh
+mov byte [eax + (_players+62)], dh ; mov byte [eax + 0x496ba6], dh
jne short loc_0041cc6c ; jne 0x41cc6c
mov ch, dh
or ch, 0x80
-mov byte [eax + ref_00496ba6], ch ; mov byte [eax + 0x496ba6], ch
+mov byte [eax + (_players+62)], ch ; mov byte [eax + 0x496ba6], ch
loc_0041cc6c:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496ba7], 0 ; cmp byte [eax + 0x496ba7], 0
+cmp byte [eax + (_players+63)], 0 ; cmp byte [eax + 0x496ba7], 0
je short loc_0041cca3 ; je 0x41cca3
xor edx, edx
-mov dl, byte [eax + ref_00496ba7] ; mov dl, byte [eax + 0x496ba7]
+mov dl, byte [eax + (_players+63)] ; mov dl, byte [eax + 0x496ba7]
dec edx
mov eax, edx
shl eax, 2
@@ -37347,16 +37348,16 @@ add esp, 4
loc_0041cca3:
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
and dl, 3
cmp dl, 3
jne near loc_0041cd8c ; jne 0x41cd8c
-mov ch, byte [eax + ref_00496b79] ; mov ch, byte [eax + 0x496b79]
+mov ch, byte [eax + (_players+17)] ; mov ch, byte [eax + 0x496b79]
sub ch, 4
-mov byte [eax + ref_00496b79], ch ; mov byte [eax + 0x496b79], ch
+mov byte [eax + (_players+17)], ch ; mov byte [eax + 0x496b79], ch
test ch, 0xfc
jne near loc_0041cd8c ; jne 0x41cd8c
-mov al, byte [eax + ref_00496bcc] ; mov al, byte [eax + 0x496bcc]
+mov al, byte [eax + (_players+100)] ; mov al, byte [eax + 0x496bcc]
and al, dl
movzx esi, al
cmp esi, 1
@@ -37384,11 +37385,11 @@ je short loc_0041cd71 ; je 0x41cd71
loc_0041cd17:
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496bcc] ; mov dl, byte [eax + 0x496bcc]
-mov byte [eax + ref_00496b79], dl ; mov byte [eax + 0x496b79], dl
-mov dl, byte [eax + ref_00496bcd] ; mov dl, byte [eax + 0x496bcd]
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+mov dl, byte [eax + (_players+100)] ; mov dl, byte [eax + 0x496bcc]
+mov byte [eax + (_players+17)], dl ; mov byte [eax + 0x496b79], dl
+mov dl, byte [eax + (_players+101)] ; mov dl, byte [eax + 0x496bcd]
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne short loc_0041cd4f ; jne 0x41cd4f
mov eax, ebx
shl eax, 2
@@ -37400,7 +37401,7 @@ dec byte [eax + ref_00499160] ; dec byte [eax + 0x499160]
loc_0041cd4f:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne short loc_0041cd83 ; jne 0x41cd83
mov eax, ebx
shl eax, 2
@@ -37414,8 +37415,8 @@ jmp short loc_0041cd83 ; jmp 0x41cd83
loc_0041cd71:
imul eax, ebx, 0x68
xor ch, ch
-mov byte [eax + ref_00496b79], ch ; mov byte [eax + 0x496b79], ch
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], ch ; mov byte [eax + 0x496b79], ch
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_0041cd83:
push ebx
@@ -37817,9 +37818,9 @@ mov ebp, dword [esp + 0x94]
mov ebx, dword [esp + 0x98]
xor edi, edi
imul esi, ebp, 0x68
-cmp byte [esi + ref_00496b9f], 0 ; cmp byte [esi + 0x496b9f], 0
+cmp byte [esi + (_players+55)], 0 ; cmp byte [esi + 0x496b9f], 0
jne near loc_0041d2bb ; jne 0x41d2bb
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je near loc_0041d2bb ; je 0x41d2bb
cmp dword [ebx + 0x30], 0
je near loc_0041d2bb ; je 0x41d2bb
@@ -37829,7 +37830,7 @@ mov edx, eax
sar edx, 0x1f
idiv ecx
mov ecx, eax
-mov eax, dword [esi + ref_00496b84] ; mov eax, dword [esi + 0x496b84]
+mov eax, dword [esi + (_players+28)] ; mov eax, dword [esi + 0x496b84]
mov edx, eax
sar edx, 0x1f
idiv ecx
@@ -37848,7 +37849,7 @@ loc_0041d21f:
test esi, esi
je near loc_0041d2bb ; je 0x41d2bb
imul eax, ebp, 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0041d267 ; jne 0x41d267
push ecx
lea eax, [ebx + 4]
@@ -37938,39 +37939,39 @@ loc_0041d2f3:
imul eax, esi, 0x68
test byte [esp + 0x20], 4
je short loc_0041d33d ; je 0x41d33d
-mov ecx, dword [eax + ref_00496b88] ; mov ecx, dword [eax + 0x496b88]
+mov ecx, dword [eax + (_players+32)] ; mov ecx, dword [eax + 0x496b88]
sub ecx, ebx
-mov dword [eax + ref_00496b88], ecx ; mov dword [eax + 0x496b88], ecx
+mov dword [eax + (_players+32)], ecx ; mov dword [eax + 0x496b88], ecx
test ecx, ecx
jge near loc_0041d37e ; jge 0x41d37e
mov edx, ecx
-add dword [eax + ref_00496b84], edx ; add dword [eax + 0x496b84], edx
+add dword [eax + (_players+28)], edx ; add dword [eax + 0x496b84], edx
xor ebp, ebp
-mov dword [eax + ref_00496b88], ebp ; mov dword [eax + 0x496b88], ebp
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
+mov dword [eax + (_players+32)], ebp ; mov dword [eax + 0x496b88], ebp
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
test edx, edx
jge short loc_0041d37e ; jge 0x41d37e
add ebx, edx
-mov dword [eax + ref_00496b84], ebp ; mov dword [eax + 0x496b84], ebp
+mov dword [eax + (_players+28)], ebp ; mov dword [eax + 0x496b84], ebp
test ebx, ebx
jge short loc_0041d375 ; jge 0x41d375
xor ebx, ebx
jmp short loc_0041d375 ; jmp 0x41d375
loc_0041d33d:
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
sub edx, ebx
-mov dword [eax + ref_00496b84], edx ; mov dword [eax + 0x496b84], edx
+mov dword [eax + (_players+28)], edx ; mov dword [eax + 0x496b84], edx
test edx, edx
jge short loc_0041d37e ; jge 0x41d37e
-add dword [eax + ref_00496b88], edx ; add dword [eax + 0x496b88], edx
+add dword [eax + (_players+32)], edx ; add dword [eax + 0x496b88], edx
xor edx, edx
-mov dword [eax + ref_00496b84], edx ; mov dword [eax + 0x496b84], edx
-mov ecx, dword [eax + ref_00496b88] ; mov ecx, dword [eax + 0x496b88]
+mov dword [eax + (_players+28)], edx ; mov dword [eax + 0x496b84], edx
+mov ecx, dword [eax + (_players+32)] ; mov ecx, dword [eax + 0x496b88]
test ecx, ecx
jge short loc_0041d37e ; jge 0x41d37e
add ebx, ecx
-mov dword [eax + ref_00496b88], edx ; mov dword [eax + 0x496b88], edx
+mov dword [eax + (_players+32)], edx ; mov dword [eax + 0x496b88], edx
test ebx, ebx
jge short loc_0041d375 ; jge 0x41d375
xor ebx, ebx
@@ -37982,7 +37983,7 @@ add esp, 4
loc_0041d37e:
imul eax, esi, 0x68
-add dword [eax + ref_00496bc4], ebx ; add dword [eax + 0x496bc4], ebx
+add dword [eax + (_players+92)], ebx ; add dword [eax + 0x496bc4], ebx
loc_0041d387:
cmp edi, 0xffffffff
@@ -38004,22 +38005,22 @@ loc_0041d3af:
imul eax, edi, 0x68
test byte [esp + 0x20], 1
je short loc_0041d3c1 ; je 0x41d3c1
-add dword [eax + ref_00496b84], ebx ; add dword [eax + 0x496b84], ebx
+add dword [eax + (_players+28)], ebx ; add dword [eax + 0x496b84], ebx
jmp short loc_0041d3c7 ; jmp 0x41d3c7
loc_0041d3c1:
-add dword [eax + ref_00496b88], ebx ; add dword [eax + 0x496b88], ebx
+add dword [eax + (_players+32)], ebx ; add dword [eax + 0x496b88], ebx
loc_0041d3c7:
imul eax, edi, 0x68
-add dword [eax + ref_00496bc8], ebx ; add dword [eax + 0x496bc8], ebx
+add dword [eax + (_players+96)], ebx ; add dword [eax + 0x496bc8], ebx
loc_0041d3d0:
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp esi, ebp
jne short loc_0041d3ef ; jne 0x41d3ef
imul eax, ebp, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041d3ef ; je 0x41d3ef
push ebp
call fcn_0041d433 ; call 0x41d433
@@ -38039,15 +38040,15 @@ mov ecx, dword [esp + 0xc]
imul eax, edx, 0x68
test byte [esp + 0x10], 1
je short loc_0041d40f ; je 0x41d40f
-add dword [eax + ref_00496b84], ecx ; add dword [eax + 0x496b84], ecx
+add dword [eax + (_players+28)], ecx ; add dword [eax + 0x496b84], ecx
jmp short loc_0041d415 ; jmp 0x41d415
loc_0041d40f:
-add dword [eax + ref_00496b88], ecx ; add dword [eax + 0x496b88], ecx
+add dword [eax + (_players+32)], ecx ; add dword [eax + 0x496b88], ecx
loc_0041d415:
imul eax, edx, 0x68
-add dword [eax + ref_00496bc8], ecx ; add dword [eax + 0x496bc8], ecx
+add dword [eax + (_players+96)], ecx ; add dword [eax + 0x496bc8], ecx
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
cmp edx, ebp
jne short loc_0041d431 ; jne 0x41d431
@@ -38103,8 +38104,8 @@ cmp edx, 4
jge short loc_0041d4b6 ; jge 0x41d4b6
imul eax, edx, 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b70] ; mov dx, word [eax + 0x496b70]
-mov ax, word [eax + ref_00496b72] ; mov ax, word [eax + 0x496b72]
+mov dx, word [eax + (_players+8)] ; mov dx, word [eax + 0x496b70]
+mov ax, word [eax + (_players+10)] ; mov ax, word [eax + 0x496b72]
jmp short loc_0041d4cb ; jmp 0x41d4cb
loc_0041d4b6:
@@ -38177,7 +38178,7 @@ sub esp, 0x94
mov esi, dword [esp + 0xac]
mov ebx, 1
imul eax, dword [esp + 0xa4], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
lea eax, [esp + 0x84]
push eax
@@ -38201,7 +38202,7 @@ jmp short loc_0041d5e9 ; jmp 0x41d5e9
loc_0041d5b3:
imul eax, dword [esp + 0xa4], 0x68
xor ecx, ecx
-mov cl, byte [eax + ref_00496ba9] ; mov cl, byte [eax + 0x496ba9]
+mov cl, byte [eax + (_players+65)] ; mov cl, byte [eax + 0x496ba9]
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
inc edx
cmp ecx, edx
@@ -38222,14 +38223,14 @@ xor ebx, ebx
jmp near loc_0041d6a4 ; jmp 0x41d6a4
loc_0041d5f0:
-cmp byte [eax + ref_00496ba7], 0xf ; cmp byte [eax + 0x496ba7], 0xf
+cmp byte [eax + (_players+63)], 0xf ; cmp byte [eax + 0x496ba7], 0xf
jne short loc_0041d601 ; jne 0x41d601
push esi
push ref_00463be2 ; push 0x463be2
jmp short loc_0041d5a4 ; jmp 0x41d5a4
loc_0041d601:
-cmp byte [eax + ref_00496b9a], 0 ; cmp byte [eax + 0x496b9a], 0
+cmp byte [eax + (_players+50)], 0 ; cmp byte [eax + 0x496b9a], 0
je short loc_0041d61a ; je 0x41d61a
push esi
lea eax, [esp + 0x84]
@@ -38238,7 +38239,7 @@ push ref_00463bf5 ; push 0x463bf5
jmp short loc_0041d5dc ; jmp 0x41d5dc
loc_0041d61a:
-cmp byte [eax + ref_00496b9b], 0 ; cmp byte [eax + 0x496b9b], 0
+cmp byte [eax + (_players+51)], 0 ; cmp byte [eax + 0x496b9b], 0
je short loc_0041d633 ; je 0x41d633
push esi
lea eax, [esp + 0x84]
@@ -38247,7 +38248,7 @@ push ref_00463c08 ; push 0x463c08
jmp short loc_0041d5dc ; jmp 0x41d5dc
loc_0041d633:
-cmp byte [eax + ref_00496b9c], 0 ; cmp byte [eax + 0x496b9c], 0
+cmp byte [eax + (_players+52)], 0 ; cmp byte [eax + 0x496b9c], 0
je short loc_0041d64c ; je 0x41d64c
push esi
lea eax, [esp + 0x84]
@@ -38256,7 +38257,7 @@ push ref_00463c1b ; push 0x463c1b
jmp short loc_0041d5dc ; jmp 0x41d5dc
loc_0041d64c:
-cmp byte [eax + ref_00496b9d], 0 ; cmp byte [eax + 0x496b9d], 0
+cmp byte [eax + (_players+53)], 0 ; cmp byte [eax + 0x496b9d], 0
je short loc_0041d668 ; je 0x41d668
push esi
lea eax, [esp + 0x84]
@@ -38265,7 +38266,7 @@ push ref_00463c2e ; push 0x463c2e
jmp near loc_0041d5dc ; jmp 0x41d5dc
loc_0041d668:
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_0041d684 ; je 0x41d684
push esi
lea eax, [esp + 0x84]
@@ -38274,7 +38275,7 @@ push ref_00463c41 ; push 0x463c41
jmp near loc_0041d5dc ; jmp 0x41d5dc
loc_0041d684:
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_0041d6a0 ; je 0x41d6a0
push esi
lea eax, [esp + 0x84]
@@ -38294,7 +38295,7 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul eax, ebp, 0x68
-movzx esi, byte [eax + ref_00496b7b] ; movzx esi, byte [eax + 0x496b7b]
+movzx esi, byte [eax + (_players+19)] ; movzx esi, byte [eax + 0x496b7b]
mov eax, esi
shl eax, 2
sub eax, esi
@@ -38331,7 +38332,7 @@ mov edx, dword [esp + 0x90]
mov esi, dword [esp + 0x94]
mov ebx, esi
imul eax, dword [esp + 0x8c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
dec al
cmp al, 5
ja short loc_0041d79e ; ja 0x41d79e
@@ -38419,8 +38420,8 @@ mov esi, dword [ref_004990e8] ; mov esi, dword [0x4990e8]
imul eax, esi
mov dword [esp], eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
mov eax, dword [esp + 0xc]
sub edx, eax
mov eax, edx
@@ -38448,7 +38449,7 @@ mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
imul eax, edx
mov dword [esp], eax
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov edx, dword [edx + ref_00496b84] ; mov edx, dword [edx + 0x496b84]
+mov edx, dword [edx + (_players+28)] ; mov edx, dword [edx + 0x496b84]
sub edx, eax
test edx, edx
jle short loc_0041d896 ; jle 0x41d896
@@ -38499,7 +38500,7 @@ loc_0041d8c1:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0041d8e9 ; jge 0x41d8e9
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041d8e6 ; je 0x41d8e6
push ebx
call fcn_004239b9 ; call 0x4239b9
@@ -38536,7 +38537,7 @@ call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, esi, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -38557,7 +38558,7 @@ cmp ebx, esi
je short loc_0041d968 ; je 0x41d968
imul eax, ebx, 0x68
xor ch, ch
-mov byte [eax + ref_00496b7d], ch ; mov byte [eax + 0x496b7d], ch
+mov byte [eax + (_players+21)], ch ; mov byte [eax + 0x496b7d], ch
loc_0041d968:
inc ebx
@@ -38567,7 +38568,7 @@ loc_0041d96b:
imul eax, esi, 0x68
cmp dword [ref_00499104], 1 ; cmp dword [0x499104], 1
jne near loc_0041da3c ; jne 0x41da3c
-test byte [eax + ref_00496b7d], 1 ; test byte [eax + 0x496b7d], 1
+test byte [eax + (_players+21)], 1 ; test byte [eax + 0x496b7d], 1
je short loc_0041d9b9 ; je 0x41d9b9
xor ebx, ebx
mov dl, 2
@@ -38579,7 +38580,7 @@ jge short loc_0041d9ad ; jge 0x41d9ad
cmp ebx, esi
je short loc_0041d9aa ; je 0x41d9aa
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov byte [eax + ref_004990f4], dl ; mov byte [eax + 0x4990f4], dl
@@ -38595,7 +38596,7 @@ loc_0041d9b9:
xor esi, esi
mov dword [_current_player], esi ; mov dword [0x49910c], esi
xor ebx, ebx
-mov bx, word [ref_00496b74] ; mov bx, word [0x496b74]
+mov bx, word [(_players+12)] ; mov bx, word [0x496b74]
mov eax, ebx
shl eax, 2
add ebx, eax
@@ -38603,13 +38604,13 @@ shl ebx, 3
mov eax, dword [ref_00498e80] ; mov eax, dword [0x498e80]
add eax, ebx
mov bx, word [eax]
-mov word [ref_00496b70], bx ; mov word [0x496b70], bx
+mov word [(_players+8)], bx ; mov word [0x496b70], bx
mov ax, word [eax + 2]
-mov word [ref_00496b72], ax ; mov word [0x496b72], ax
-mov eax, ref_00496b68 ; mov eax, 0x496b68
+mov word [(_players+10)], ax ; mov word [0x496b72], ax
+mov eax, (_players+0) ; mov eax, 0x496b68
add eax, 0x32
mov ebx, eax
-sub ebx, ref_00496b68 ; sub ebx, 0x496b68
+sub ebx, (_players+0) ; sub ebx, 0x496b68
mov esi, 0x68
sub esi, ebx
push esi
@@ -38631,7 +38632,7 @@ mov byte [ref_0046caf8], al ; mov byte [0x46caf8], al
jmp short loc_0041da55 ; jmp 0x41da55
loc_0041da3c:
-test byte [eax + ref_00496b7d], 1 ; test byte [eax + 0x496b7d], 1
+test byte [eax + (_players+21)], 1 ; test byte [eax + 0x496b7d], 1
je short loc_0041da4e ; je 0x41da4e
mov byte [ref_0046caf8], 3 ; mov byte [0x46caf8], 3
jmp short loc_0041da55 ; jmp 0x41da55
@@ -39344,15 +39345,15 @@ mov cl, bl
dec ecx
imul ecx, ecx, 0x68
mov bl, byte [eax + ref_0048be35] ; mov bl, byte [eax + 0x48be35]
-mov byte [ecx + ref_00496b7d], bl ; mov byte [ecx + 0x496b7d], bl
+mov byte [ecx + (_players+21)], bl ; mov byte [ecx + 0x496b7d], bl
mov bl, byte [eax + ref_0048be36] ; mov bl, byte [eax + 0x48be36]
-mov byte [ecx + ref_00496b7e], bl ; mov byte [ecx + 0x496b7e], bl
+mov byte [ecx + (_players+22)], bl ; mov byte [ecx + 0x496b7e], bl
mov bl, byte [eax + ref_0048be37] ; mov bl, byte [eax + 0x48be37]
-mov byte [ecx + ref_00496b7f], bl ; mov byte [ecx + 0x496b7f], bl
+mov byte [ecx + (_players+23)], bl ; mov byte [ecx + 0x496b7f], bl
mov bl, byte [eax + ref_0048be38] ; mov bl, byte [eax + 0x48be38]
-mov byte [ecx + ref_00496b81], bl ; mov byte [ecx + 0x496b81], bl
+mov byte [ecx + (_players+25)], bl ; mov byte [ecx + 0x496b81], bl
mov al, byte [eax + ref_0048be39] ; mov al, byte [eax + 0x48be39]
-mov byte [ecx + ref_00496b82], al ; mov byte [ecx + 0x496b82], al
+mov byte [ecx + (_players+26)], al ; mov byte [ecx + 0x496b82], al
jmp short loc_0041e238 ; jmp 0x41e238
loc_0041e297:
@@ -39594,7 +39595,7 @@ mov eax, dword [esp]
cmp eax, dword [_nplayers] ; cmp eax, dword [0x499114]
jge near loc_0041e66f ; jge 0x41e66f
imul eax, eax, 0x68
-test byte [eax + ref_00496b7d], 1 ; test byte [eax + 0x496b7d], 1
+test byte [eax + (_players+21)], 1 ; test byte [eax + 0x496b7d], 1
je near loc_0041e667 ; je 0x41e667
mov eax, dword [esp]
cmp eax, dword [_current_player] ; cmp eax, dword [0x49910c]
@@ -39609,15 +39610,15 @@ shl eax, 2
sub eax, esi
mov byte [eax*2 + ref_0048be34], dl ; mov byte [eax*2 + 0x48be34], dl
imul ebx, dword [esp], 0x68
-mov dl, byte [ebx + ref_00496b7d] ; mov dl, byte [ebx + 0x496b7d]
+mov dl, byte [ebx + (_players+21)] ; mov dl, byte [ebx + 0x496b7d]
mov byte [eax*2 + ref_0048be35], dl ; mov byte [eax*2 + 0x48be35], dl
-mov dl, byte [ebx + ref_00496b7e] ; mov dl, byte [ebx + 0x496b7e]
+mov dl, byte [ebx + (_players+22)] ; mov dl, byte [ebx + 0x496b7e]
mov byte [eax*2 + ref_0048be36], dl ; mov byte [eax*2 + 0x48be36], dl
-mov dl, byte [ebx + ref_00496b7f] ; mov dl, byte [ebx + 0x496b7f]
+mov dl, byte [ebx + (_players+23)] ; mov dl, byte [ebx + 0x496b7f]
mov byte [eax*2 + ref_0048be37], dl ; mov byte [eax*2 + 0x48be37], dl
-mov dl, byte [ebx + ref_00496b81] ; mov dl, byte [ebx + 0x496b81]
+mov dl, byte [ebx + (_players+25)] ; mov dl, byte [ebx + 0x496b81]
mov byte [eax*2 + ref_0048be38], dl ; mov byte [eax*2 + 0x48be38], dl
-mov dl, byte [ebx + ref_00496b82] ; mov dl, byte [ebx + 0x496b82]
+mov dl, byte [ebx + (_players+26)] ; mov dl, byte [ebx + 0x496b82]
mov byte [eax*2 + ref_0048be39], dl ; mov byte [eax*2 + 0x48be39], dl
push edi
push 8
@@ -39632,7 +39633,7 @@ lea eax, [edi + 0x28]
push eax
push 0x50
xor eax, eax
-mov al, byte [ebx + ref_00496b7b] ; mov al, byte [ebx + 0x496b7b]
+mov al, byte [ebx + (_players+19)] ; mov al, byte [ebx + 0x496b7b]
lea ebx, [eax + 6]
mov edx, ebx
shl edx, 2
@@ -39675,7 +39676,7 @@ mov eax, dword [esp + 4]
xor edx, edx
mov dl, byte [eax*8 + (_card_table - 1)] ; mov dl, byte [eax*8 + 0x47fdf1]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b7f] ; mov al, byte [eax + 0x496b7f]
+mov al, byte [eax + (_players+23)] ; mov al, byte [eax + 0x496b7f]
and eax, 0xff
sub edx, eax
mov eax, edx
@@ -39721,9 +39722,9 @@ loc_0041e708:
cmp edx, dword [_nplayers] ; cmp edx, dword [0x499114]
jge short loc_0041e726 ; jge 0x41e726
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041e723 ; je 0x41e723
-add ecx, dword [eax + ref_00496b84] ; add ecx, dword [eax + 0x496b84]
+add ecx, dword [eax + (_players+28)] ; add ecx, dword [eax + 0x496b84]
inc ebx
loc_0041e723:
@@ -39737,7 +39738,7 @@ sar edx, 0x1f
idiv ebx
mov ecx, eax
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-mov edx, dword [ebx + ref_00496b84] ; mov edx, dword [ebx + 0x496b84]
+mov edx, dword [ebx + (_players+28)] ; mov edx, dword [ebx + 0x496b84]
mov eax, edx
shl eax, 2
add eax, edx
@@ -39754,7 +39755,7 @@ shl eax, 3
mov edx, eax
shl eax, 4
sub eax, edx
-cmp eax, dword [ebx + ref_00496b84] ; cmp eax, dword [ebx + 0x496b84]
+cmp eax, dword [ebx + (_players+28)] ; cmp eax, dword [ebx + 0x496b84]
jle short loc_0041e774 ; jle 0x41e774
mov esi, 1
@@ -39810,7 +39811,7 @@ je short loc_0041e7de ; je 0x41e7de
cmp ecx, edi
je short loc_0041e7de ; je 0x41e7de
imul edx, ecx, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je short loc_0041e7de ; je 0x41e7de
mov byte [esp + ecx], 1
jmp short loc_0041e7de ; jmp 0x41e7de
@@ -39838,11 +39839,11 @@ shl eax, 4
mov edx, eax
shl eax, 2
sub eax, edx
-mov edx, dword [ecx + ref_00496b84] ; mov edx, dword [ecx + 0x496b84]
+mov edx, dword [ecx + (_players+28)] ; mov edx, dword [ecx + 0x496b84]
cmp eax, edx
jge short loc_0041e873 ; jge 0x41e873
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b84] ; mov eax, dword [eax + 0x496b84]
+mov eax, dword [eax + (_players+28)] ; mov eax, dword [eax + 0x496b84]
add eax, eax
cmp eax, edx
jge short loc_0041e873 ; jge 0x41e873
@@ -39868,11 +39869,11 @@ cmp byte [esp + eax], 0
je short loc_0041e8d6 ; je 0x41e8d6
imul edx, eax, 0x68
imul eax, dword [ref_004990e8], 0xc350 ; imul eax, dword [0x4990e8], 0xc350
-mov edi, dword [edx + ref_00496b84] ; mov edi, dword [edx + 0x496b84]
+mov edi, dword [edx + (_players+28)] ; mov edi, dword [edx + 0x496b84]
cmp eax, edi
jge short loc_0041e8d6 ; jge 0x41e8d6
imul eax, ebp, 0x68
-mov ecx, dword [eax + ref_00496b84] ; mov ecx, dword [eax + 0x496b84]
+mov ecx, dword [eax + (_players+28)] ; mov ecx, dword [eax + 0x496b84]
mov eax, ecx
shl eax, 2
sub eax, ecx
@@ -40014,7 +40015,7 @@ xor esi, esi
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
xor ebx, ebx
-mov bx, word [eax + ref_00496b74] ; mov bx, word [eax + 0x496b74]
+mov bx, word [eax + (_players+12)] ; mov bx, word [eax + 0x496b74]
mov eax, ebx
shl eax, 2
add eax, ebx
@@ -40049,7 +40050,7 @@ add eax, edx
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
imul edx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jge short loc_0041eadd ; jge 0x41eadd
jmp short loc_0041ead8 ; jmp 0x41ead8
@@ -40076,7 +40077,7 @@ add eax, ebx
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
imul edx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jge short loc_0041eadd ; jge 0x41eadd
loc_0041ead8:
@@ -40099,7 +40100,7 @@ mov dword [esp + 0xc], edx
mov dword [esp], edx
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -40304,7 +40305,7 @@ xor edx, edx
mov dword [esp], edx
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -40363,7 +40364,7 @@ loc_0041ee04:
cmp byte [edi + 0x1a], 1
jne near loc_0041ef1b ; jne 0x41ef1b
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7f], 0 ; cmp byte [eax + 0x496b7f], 0
+cmp byte [eax + (_players+23)], 0 ; cmp byte [eax + 0x496b7f], 0
je near loc_0041ef14 ; je 0x41ef14
mov ecx, 1
mov dword [esp], ecx
@@ -40477,7 +40478,7 @@ push esi
xor ebx, ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -40837,7 +40838,7 @@ jne short loc_0041f3bc ; jne 0x41f3bc
cmp esi, dword [_current_player] ; cmp esi, dword [0x49910c]
je short loc_0041f3b9 ; je 0x41f3b9
imul edi, esi, 0x68
-cmp byte [edi + ref_00496b7d], 0 ; cmp byte [edi + 0x496b7d], 0
+cmp byte [edi + (_players+21)], 0 ; cmp byte [edi + 0x496b7d], 0
je short loc_0041f3b9 ; je 0x41f3b9
add ebx, esi
xor eax, eax
@@ -41079,7 +41080,7 @@ loc_0041f637:
cmp ecx, dword [_current_player] ; cmp ecx, dword [0x49910c]
je short loc_0041f631 ; je 0x41f631
imul eax, ecx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041f631 ; je 0x41f631
mov eax, ecx
shl eax, 3
@@ -41153,7 +41154,7 @@ mov eax, dword [ref_00498e84] ; mov eax, dword [0x498e84]
add eax, edx
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul edx, ebp, 0x68
-cmp byte [edx + ref_00496b7f], 0 ; cmp byte [edx + 0x496b7f], 0
+cmp byte [edx + (_players+23)], 0 ; cmp byte [edx + 0x496b7f], 0
je near loc_0041f8f4 ; je 0x41f8f4
mov ch, byte [eax + 0x19]
test ch, ch
@@ -41185,7 +41186,7 @@ sub eax, edx
mov edx, dword [ref_00498e88] ; mov edx, dword [0x498e88]
add eax, edx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-test byte [edx + ref_00496b79], 3 ; test byte [edx + 0x496b79], 3
+test byte [edx + (_players+17)], 3 ; test byte [edx + 0x496b79], 3
je near loc_0041f8f4 ; je 0x41f8f4
cmp byte [eax + 0x18], 3
jne near loc_0041f8f4 ; jne 0x41f8f4
@@ -41361,7 +41362,7 @@ je short loc_0041f966 ; je 0x41f966
cmp ebx, dword [_current_player] ; cmp ebx, dword [0x49910c]
je short loc_0041f966 ; je 0x41f966
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041f966 ; je 0x41f966
mov byte [esp + ebx + 8], ch
mov edx, esi
@@ -41495,13 +41496,13 @@ sub esp, 0x18
xor esi, esi
imul ecx, dword [_current_player], 0x68 ; imul ecx, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [ecx + ref_00496b74] ; mov dx, word [ecx + 0x496b74]
+mov dx, word [ecx + (_players+12)] ; mov dx, word [ecx + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
mov ebp, dword [ref_00498e80] ; mov ebp, dword [0x498e80]
movzx ebp, word [ebp + eax*8 + 0x20]
-cmp byte [ecx + ref_00496ba1], 0 ; cmp byte [ecx + 0x496ba1], 0
+cmp byte [ecx + (_players+57)], 0 ; cmp byte [ecx + 0x496ba1], 0
jne near loc_0041fca6 ; jne 0x41fca6
cmp ebp, 0x7d0
jle near loc_0041fc1f ; jle 0x41fc1f
@@ -41527,13 +41528,13 @@ cmp byte [edi + 0x18], 0
jne near loc_0041fca6 ; jne 0x41fca6
cmp byte [edi + 0x1a], 5
jae near loc_0041fca6 ; jae 0x41fca6
-mov eax, dword [ecx + ref_00496b84] ; mov eax, dword [ecx + 0x496b84]
+mov eax, dword [ecx + (_players+28)] ; mov eax, dword [ecx + 0x496b84]
cmp ebx, eax
jge near loc_0041fca6 ; jge 0x41fca6
-add eax, dword [ecx + ref_00496b88] ; add eax, dword [ecx + 0x496b88]
+add eax, dword [ecx + (_players+32)] ; add eax, dword [ecx + 0x496b88]
cmp eax, 0x2710
jle near loc_0041fca6 ; jle 0x41fca6
-cmp word [ecx + ref_00496bae], 0 ; cmp word [ecx + 0x496bae], 0
+cmp word [ecx + (_players+70)], 0 ; cmp word [ecx + 0x496bae], 0
jl near loc_0041fca6 ; jl 0x41fca6
mov dword [esp + 0x14], 1
lea ebx, [edx + 0x34]
@@ -41606,7 +41607,7 @@ inc edx
cmp ecx, edx
jne short loc_0041fca6 ; jne 0x41fca6
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov ebp, dword [edx + ref_00496b84] ; mov ebp, dword [edx + 0x496b84]
+mov ebp, dword [edx + (_players+28)] ; mov ebp, dword [edx + 0x496b84]
cmp ebx, ebp
jge short loc_0041fca6 ; jge 0x41fca6
cmp ebp, 0x2710
@@ -41618,7 +41619,7 @@ cmp bl, 3
je short loc_0041fca6 ; je 0x41fca6
cmp byte [eax + 0x1a], 5
jae short loc_0041fca6 ; jae 0x41fca6
-cmp word [edx + ref_00496bae], 0 ; cmp word [edx + 0x496bae], 0
+cmp word [edx + (_players+70)], 0 ; cmp word [edx + 0x496bae], 0
jge near loc_0041fbe3 ; jge 0x41fbe3
loc_0041fca6:
@@ -41664,10 +41665,10 @@ je short loc_0041fd0f ; je 0x41fd0f
cmp ecx, edi
je short loc_0041fd0f ; je 0x41fd0f
imul eax, ecx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041fd0f ; je 0x41fd0f
xor ebx, ebx
-mov bx, word [eax + ref_00496b74] ; mov bx, word [eax + 0x496b74]
+mov bx, word [eax + (_players+12)] ; mov bx, word [eax + 0x496b74]
mov eax, ebx
shl eax, 2
add ebx, eax
@@ -41697,7 +41698,7 @@ jne near loc_0041fe44 ; jne 0x41fe44
cmp eax, ebp
je near loc_0041fe3b ; je 0x41fe3b
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0041fe3b ; je 0x41fe3b
mov ecx, dword [esp + 0x10]
add ecx, ecx
@@ -41837,9 +41838,9 @@ je short loc_0041fee9 ; je 0x41fee9
cmp ebx, dword [_current_player] ; cmp ebx, dword [0x49910c]
je short loc_0041fee9 ; je 0x41fee9
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0041fee9 ; je 0x41fee9
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
jne short loc_0041fee9 ; jne 0x41fee9
push 0x12
push ebx
@@ -41890,7 +41891,7 @@ fcn_0041ff77:
push ebx
xor edx, edx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov bl, byte [eax + ref_00496ba7] ; mov bl, byte [eax + 0x496ba7]
+mov bl, byte [eax + (_players+63)] ; mov bl, byte [eax + 0x496ba7]
test bl, bl
je short loc_0041ffc3 ; je 0x41ffc3
xor ecx, ecx
@@ -41916,7 +41917,7 @@ jne short loc_0041fff4 ; jne 0x41fff4
jmp short loc_0041ffef ; jmp 0x41ffef
loc_0041ffc3:
-mov bh, byte [eax + ref_00496ba8] ; mov bh, byte [eax + 0x496ba8]
+mov bh, byte [eax + (_players+64)] ; mov bh, byte [eax + 0x496ba8]
test bh, bh
je short loc_0041fff4 ; je 0x41fff4
mov al, bh
@@ -41943,7 +41944,7 @@ push ebx
xor eax, eax
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov dl, byte [edx + ref_00496ba7] ; mov dl, byte [edx + 0x496ba7]
+mov dl, byte [edx + (_players+63)] ; mov dl, byte [edx + 0x496ba7]
and edx, 0xff
cmp edx, 1
je short loc_0042002e ; je 0x42002e
@@ -42277,7 +42278,7 @@ je short loc_00420337 ; je 0x420337
cmp ecx, edi
je short loc_00420337 ; je 0x420337
imul edx, ecx, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je short loc_00420337 ; je 0x420337
mov byte [esp + ecx], 1
jmp short loc_00420337 ; jmp 0x420337
@@ -42305,7 +42306,7 @@ shl eax, 4
mov edx, eax
shl eax, 2
sub eax, edx
-cmp eax, dword [ecx + ref_00496b84] ; cmp eax, dword [ecx + 0x496b84]
+cmp eax, dword [ecx + (_players+28)] ; cmp eax, dword [ecx + 0x496b84]
jge short loc_004203b7 ; jge 0x4203b7
mov cl, byte [esp + 4]
mov eax, 1
@@ -42329,7 +42330,7 @@ cmp byte [esp + eax], 0
je short loc_00420408 ; je 0x420408
imul eax, eax, 0x68
imul edx, ebp, 0xc350
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jge short loc_00420408 ; jge 0x420408
mov cl, byte [esp + 8]
mov eax, 1
@@ -42722,9 +42723,9 @@ je short loc_00420831 ; je 0x420831
cmp ecx, dword [esp + 0x14]
je short loc_00420831 ; je 0x420831
imul ebx, ecx, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je short loc_00420831 ; je 0x420831
-mov bl, byte [ebx + ref_00496ba9] ; mov bl, byte [ebx + 0x496ba9]
+mov bl, byte [ebx + (_players+65)] ; mov bl, byte [ebx + 0x496ba9]
and ebx, 0xff
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
inc ebp
@@ -42751,7 +42752,7 @@ jge near loc_00420931 ; jge 0x420931
cmp ecx, dword [_current_player] ; cmp ecx, dword [0x49910c]
je near loc_0042092b ; je 0x42092b
imul eax, ecx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0042092b ; je 0x42092b
xor edx, edx
mov eax, 1
@@ -43052,7 +43053,7 @@ loc_00420bdf:
cmp dword [esp + 4], 0
jne near loc_00420a82 ; jne 0x420a82
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-fild dword [edx + ref_00496b84] ; fild dword [edx + 0x496b84]
+fild dword [edx + (_players+28)] ; fild dword [edx + 0x496b84]
mov dword [esp + 0x14], edi
fild dword [esp + 0x14]
fmul qword [ref_00463d40] ; fmul qword [0x463d40]
@@ -43062,11 +43063,11 @@ sahf
jae near loc_00420a82 ; jae 0x420a82
cmp dword [esp + 0x10], 2
jl near loc_00420a82 ; jl 0x420a82
-mov eax, dword [edx + ref_00496b84] ; mov eax, dword [edx + 0x496b84]
-add eax, dword [edx + ref_00496b88] ; add eax, dword [edx + 0x496b88]
+mov eax, dword [edx + (_players+28)] ; mov eax, dword [edx + 0x496b84]
+add eax, dword [edx + (_players+32)] ; add eax, dword [edx + 0x496b88]
cmp eax, 0x2710
jle near loc_00420a82 ; jle 0x420a82
-cmp word [edx + ref_00496bae], 0 ; cmp word [edx + 0x496bae], 0
+cmp word [edx + (_players+70)], 0 ; cmp word [edx + 0x496bae], 0
jl near loc_00420a82 ; jl 0x420a82
mov cl, byte [_current_player] ; mov cl, byte [0x49910c]
mov eax, 1
@@ -43091,7 +43092,7 @@ je short loc_00420c66 ; je 0x420c66
cmp ebx, dword [_current_player] ; cmp ebx, dword [0x49910c]
je short loc_00420c66 ; je 0x420c66
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je short loc_00420c66 ; je 0x420c66
mov edx, dword [esp + 0xc]
mov byte [esp + edx], bl
@@ -43286,7 +43287,7 @@ mov eax, dword [esp + 4]
xor edx, edx
mov dl, byte [eax*8 + (ref_0047fee2 - 1)] ; mov dl, byte [eax*8 + 0x47fee1]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b7f] ; mov al, byte [eax + 0x496b7f]
+mov al, byte [eax + (_players+23)] ; mov al, byte [eax + 0x496b7f]
and eax, 0xff
sub edx, eax
mov eax, edx
@@ -43487,15 +43488,15 @@ je short loc_00421118 ; je 0x421118
loc_004210c8:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp edx, 0x2710
jle short loc_00421118 ; jle 0x421118
-cmp word [eax + ref_00496bae], 0 ; cmp word [eax + 0x496bae], 0
+cmp word [eax + (_players+70)], 0 ; cmp word [eax + 0x496bae], 0
jl short loc_00421118 ; jl 0x421118
-cmp byte [eax + ref_00496ba1], 0 ; cmp byte [eax + 0x496ba1], 0
+cmp byte [eax + (_players+57)], 0 ; cmp byte [eax + 0x496ba1], 0
jne short loc_00421118 ; jne 0x421118
-cmp esi, dword [eax + ref_00496b84] ; cmp esi, dword [eax + 0x496b84]
+cmp esi, dword [eax + (_players+28)] ; cmp esi, dword [eax + 0x496b84]
loc_004210fc:
jge short loc_00421118 ; jge 0x421118
@@ -43579,18 +43580,18 @@ add edx, eax
cmp byte [edx + 0x19], 0
jne near loc_00421118 ; jne 0x421118
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b84] ; mov ebx, dword [eax + 0x496b84]
-add ebx, dword [eax + ref_00496b88] ; add ebx, dword [eax + 0x496b88]
+mov ebx, dword [eax + (_players+28)] ; mov ebx, dword [eax + 0x496b84]
+add ebx, dword [eax + (_players+32)] ; add ebx, dword [eax + 0x496b88]
cmp ebx, 0x2710
jle near loc_00421118 ; jle 0x421118
-cmp word [eax + ref_00496bae], 0 ; cmp word [eax + 0x496bae], 0
+cmp word [eax + (_players+70)], 0 ; cmp word [eax + 0x496bae], 0
jl near loc_00421118 ; jl 0x421118
-cmp byte [eax + ref_00496ba1], 0 ; cmp byte [eax + 0x496ba1], 0
+cmp byte [eax + (_players+57)], 0 ; cmp byte [eax + 0x496ba1], 0
jne near loc_00421118 ; jne 0x421118
mov dx, word [edx + 0x22]
and edx, 0xffff
imul edx, dword [ref_004990e8] ; imul edx, dword [0x4990e8]
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jmp near loc_004210fc ; jmp 0x4210fc
loc_0042124c:
@@ -43606,7 +43607,7 @@ and eax, 0xff
cmp eax, 0xf
jne near loc_00421118 ; jne 0x421118
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp word [eax + ref_00496b98], 0xc8 ; cmp word [eax + 0x496b98], 0xc8
+cmp word [eax + (_players+48)], 0xc8 ; cmp word [eax + 0x496b98], 0xc8
jbe near loc_00421118 ; jbe 0x421118
mov dword [ref_0048be64], ebx ; mov dword [0x48be64], ebx
jmp near loc_00421110 ; jmp 0x421110
@@ -43947,7 +43948,7 @@ fcn_00421644:
push ebx
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-test byte [edx + ref_00496b79], 3 ; test byte [edx + 0x496b79], 3
+test byte [edx + (_players+17)], 3 ; test byte [edx + 0x496b79], 3
jne short loc_00421671 ; jne 0x421671
call clib_rand ; call 0x456f2d
mov edx, eax
@@ -43967,7 +43968,7 @@ fcn_00421675:
push ebx
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov dl, byte [edx + ref_00496b79] ; mov dl, byte [edx + 0x496b79]
+mov dl, byte [edx + (_players+17)] ; mov dl, byte [edx + 0x496b79]
and dl, 3
cmp dl, 2
jae short loc_004216a7 ; jae 0x4216a7
@@ -44104,10 +44105,10 @@ je short loc_0042181c ; je 0x42181c
push 0x64
imul ebx, ebx, 0x68
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0040a0b1 ; call 0x40a0b1
add esp, 0xc
@@ -44159,7 +44160,7 @@ mov dword [esp + 4], edx
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul edx, ecx, 0x68
xor eax, eax
-mov al, byte [edx + ref_00496ba7] ; mov al, byte [edx + 0x496ba7]
+mov al, byte [edx + (_players+63)] ; mov al, byte [edx + 0x496ba7]
cmp eax, 7
je short loc_00421854 ; je 0x421854
cmp eax, 8
@@ -44172,13 +44173,13 @@ xor eax, eax
jmp near loc_004213bd ; jmp 0x4213bd
loc_0042185b:
-cmp byte [edx + ref_00496ba1], 0 ; cmp byte [edx + 0x496ba1], 0
+cmp byte [edx + (_players+57)], 0 ; cmp byte [edx + 0x496ba1], 0
jne short loc_00421854 ; jne 0x421854
-mov eax, dword [edx + ref_00496b84] ; mov eax, dword [edx + 0x496b84]
-add eax, dword [edx + ref_00496b88] ; add eax, dword [edx + 0x496b88]
+mov eax, dword [edx + (_players+28)] ; mov eax, dword [edx + 0x496b84]
+add eax, dword [edx + (_players+32)] ; add eax, dword [edx + 0x496b88]
cmp eax, 0x2710
jl short loc_00421854 ; jl 0x421854
-cmp word [edx + ref_00496bae], 0 ; cmp word [edx + 0x496bae], 0
+cmp word [edx + (_players+70)], 0 ; cmp word [edx + 0x496bae], 0
jl short loc_00421854 ; jl 0x421854
push 6
push ecx
@@ -44268,7 +44269,7 @@ loc_00421997:
cmp edi, 1
jle short loc_004219d6 ; jle 0x4219d6
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
xor eax, eax
mov ax, word [ebp + 0x1c]
@@ -44359,7 +44360,7 @@ loc_00421a8b:
cmp edi, 1
jle near loc_004219d6 ; jle 0x4219d6
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
xor eax, eax
mov ax, word [ebp + 0x1e]
mov dword [esp + 0xc], eax
@@ -44394,7 +44395,7 @@ add edx, eax
cmp byte [edx + 0x19], 0
jne short loc_00421b3f ; jne 0x421b3f
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
xor eax, eax
mov ax, word [edx + 0x22]
mov dword [esp + 0xc], eax
@@ -44420,7 +44421,7 @@ je near loc_004219d6 ; je 0x4219d6
cmp byte [edx + 0x1a], 5
jae near loc_004219d6 ; jae 0x4219d6
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
xor eax, eax
mov ax, word [edx + 0x24]
jmp near loc_004219af ; jmp 0x4219af
@@ -44578,7 +44579,7 @@ jge near loc_00421de8 ; jge 0x421de8
mov ax, word [eax + 0x1e]
and eax, 0xffff
imul eax, dword [ref_004990e8] ; imul eax, dword [0x4990e8]
-cmp eax, dword [ebx + ref_00496b84] ; cmp eax, dword [ebx + 0x496b84]
+cmp eax, dword [ebx + (_players+28)] ; cmp eax, dword [ebx + 0x496b84]
jge near loc_00421de8 ; jge 0x421de8
mov ecx, esi
mov dword [ref_0048be64], edi ; mov dword [0x48be64], edi
@@ -44606,7 +44607,7 @@ imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
xor esi, esi
mov si, word [eax + 0x24]
imul esi, dword [ref_004990e8] ; imul esi, dword [0x4990e8]
-cmp esi, dword [ebx + ref_00496b84] ; cmp esi, dword [ebx + 0x496b84]
+cmp esi, dword [ebx + (_players+28)] ; cmp esi, dword [ebx + 0x496b84]
jge short loc_00421de8 ; jge 0x421de8
mov al, byte [eax + 0x1a]
and eax, 0xff
@@ -44624,11 +44625,11 @@ jmp near loc_00421cce ; jmp 0x421cce
loc_00421dee:
test ecx, ecx
je short loc_00421e16 ; je 0x421e16
-mov eax, dword [ebx + ref_00496b84] ; mov eax, dword [ebx + 0x496b84]
-add eax, dword [ebx + ref_00496b88] ; add eax, dword [ebx + 0x496b88]
+mov eax, dword [ebx + (_players+28)] ; mov eax, dword [ebx + 0x496b84]
+add eax, dword [ebx + (_players+32)] ; add eax, dword [ebx + 0x496b88]
cmp eax, 0x2710
jle short loc_00421e16 ; jle 0x421e16
-cmp word [ebx + ref_00496bae], 0 ; cmp word [ebx + 0x496bae], 0
+cmp word [ebx + (_players+70)], 0 ; cmp word [ebx + 0x496bae], 0
jl short loc_00421e16 ; jl 0x421e16
mov dword [esp], 1
@@ -44645,7 +44646,7 @@ push ebx
push esi
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov al, byte [edx + ref_00496b79] ; mov al, byte [edx + 0x496b79]
+mov al, byte [edx + (_players+17)] ; mov al, byte [edx + 0x496b79]
and al, 3
cmp al, 3
jne short loc_00421e3c ; jne 0x421e3c
@@ -44655,7 +44656,7 @@ pop ebx
ret
loc_00421e3c:
-movzx esi, byte [edx + ref_00496b7f] ; movzx esi, byte [edx + 0x496b7f]
+movzx esi, byte [edx + (_players+23)] ; movzx esi, byte [edx + 0x496b7f]
call clib_rand ; call 0x456f2d
mov edx, eax
mov ecx, 0xf
@@ -44914,11 +44915,11 @@ fcn_004221c0:
push ebx
push esi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
cmp dl, 2
jne near loc_00422319 ; jne 0x422319
-mov byte [eax + ref_00496b7a], 3 ; mov byte [eax + 0x496b7a], 3
-mov dh, byte [eax + ref_00496ba8] ; mov dh, byte [eax + 0x496ba8]
+mov byte [eax + (_players+18)], 3 ; mov byte [eax + 0x496b7a], 3
+mov dh, byte [eax + (_players+64)] ; mov dh, byte [eax + 0x496ba8]
test dh, dh
je short loc_0042221e ; je 0x42221e
xor ecx, ecx
@@ -44933,7 +44934,7 @@ cmp edx, 0xf
jl near loc_00422439 ; jl 0x422439
cmp edx, 0x14
jle near loc_00422440 ; jle 0x422440
-mov byte [eax + ref_00496b7a], 3 ; mov byte [eax + 0x496b7a], 3
+mov byte [eax + (_players+18)], 3 ; mov byte [eax + 0x496b7a], 3
pop esi
pop ebx
ret
@@ -45020,7 +45021,7 @@ mov dl, al
and dl, 1
add dl, 2
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov byte [eax + ref_00496b7a], dl ; mov byte [eax + 0x496b7a], dl
+mov byte [eax + (_players+18)], dl ; mov byte [eax + 0x496b7a], dl
loc_004222fb:
cmp ebx, 2
@@ -45033,8 +45034,8 @@ jmp near loc_00422439 ; jmp 0x422439
loc_00422319:
cmp dl, 1
jne near loc_00422440 ; jne 0x422440
-mov byte [eax + ref_00496b7a], 2 ; mov byte [eax + 0x496b7a], 2
-mov bh, byte [eax + ref_00496ba8] ; mov bh, byte [eax + 0x496ba8]
+mov byte [eax + (_players+18)], 2 ; mov byte [eax + 0x496b7a], 2
+mov bh, byte [eax + (_players+64)] ; mov bh, byte [eax + 0x496ba8]
test bh, bh
je short loc_0042235d ; je 0x42235d
xor edx, edx
@@ -45128,7 +45129,7 @@ jne short loc_00422428 ; jne 0x422428
cmp esi, 2
jle short loc_00422428 ; jle 0x422428
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov byte [eax + ref_00496b7a], 2 ; mov byte [eax + 0x496b7a], 2
+mov byte [eax + (_players+18)], 2 ; mov byte [eax + 0x496b7a], 2
loc_00422428:
cmp ebx, 2
@@ -45138,7 +45139,7 @@ jg short loc_00422440 ; jg 0x422440
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
loc_00422439:
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_00422440:
pop esi
@@ -45258,7 +45259,7 @@ loc_0042256f:
cmp ebx, ecx
jge short loc_00422589 ; jge 0x422589
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00422586 ; je 0x422586
mov byte [esi + ref_0048c278], bl ; mov byte [esi + 0x48c278], bl
inc esi
@@ -46291,12 +46292,12 @@ push esi
call fcn_00456418 ; call 0x456418
add esp, 0x10
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-cmp byte [eax + ref_00496ba7], 0 ; cmp byte [eax + 0x496ba7], 0
+cmp byte [eax + (_players+63)], 0 ; cmp byte [eax + 0x496ba7], 0
je near loc_004231ba ; je 0x4231ba
push 0xbc
push 0x3c
xor edx, edx
-mov dl, byte [eax + ref_00496ba7] ; mov dl, byte [eax + 0x496ba7]
+mov dl, byte [eax + (_players+63)] ; mov dl, byte [eax + 0x496ba7]
mov edx, dword [edx*4 + ref_00475464] ; mov edx, dword [edx*4 + 0x475464]
mov eax, edx
shl eax, 2
@@ -46319,7 +46320,7 @@ push 0x10
call fcn_0044f9d8 ; call 0x44f9d8
add esp, 0x14
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
lea edx, [eax - 1]
mov eax, edx
@@ -46434,7 +46435,7 @@ push eax
xor eax, eax
mov al, byte [ebx + ref_0048c278] ; mov al, byte [ebx + 0x48c278]
imul eax, eax, 0x68
-mov esi, dword [eax + ref_00496b68] ; mov esi, dword [eax + 0x496b68]
+mov esi, dword [eax + (_players+0)] ; mov esi, dword [eax + 0x496b68]
push esi
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -46463,7 +46464,7 @@ push 0x1c
call fcn_0044f9d8 ; call 0x44f9d8
add esp, 0x14
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov ebx, dword [eax + ref_00496b84] ; mov ebx, dword [eax + 0x496b84]
+mov ebx, dword [eax + (_players+28)] ; mov ebx, dword [eax + 0x496b84]
push ebx
lea eax, [esp + 4]
push eax
@@ -46478,7 +46479,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov edi, dword [eax + ref_00496b88] ; mov edi, dword [eax + 0x496b88]
+mov edi, dword [eax + (_players+32)] ; mov edi, dword [eax + 0x496b88]
push edi
lea eax, [esp + 4]
push eax
@@ -46493,7 +46494,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov edx, dword [eax + ref_00496b8c] ; mov edx, dword [eax + 0x496b8c]
+mov edx, dword [eax + (_players+36)] ; mov edx, dword [eax + 0x496b8c]
push edx
lea eax, [esp + 4]
push eax
@@ -46567,7 +46568,7 @@ push 0xa
lea eax, [esp + 4]
push eax
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
push eax
call fcn_00457d61 ; call 0x457d61
@@ -46581,7 +46582,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [ref_0048c27c], 0x68 ; imul eax, dword [0x48c27c], 0x68
-mov al, byte [eax + ref_00496ba6] ; mov al, byte [eax + 0x496ba6]
+mov al, byte [eax + (_players+62)] ; mov al, byte [eax + 0x496ba6]
and eax, 0xff
push eax
push ref_00463e26 ; push 0x463e26
@@ -47004,9 +47005,9 @@ push ebp
sub esp, 8
mov ebx, dword [esp + 0x1c]
imul eax, ebx, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
-mov esi, dword [eax + ref_00496b8c] ; mov esi, dword [eax + 0x496b8c]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
+mov esi, dword [eax + (_players+36)] ; mov esi, dword [eax + 0x496b8c]
sub edx, esi
mov dword [esp], edx
xor edx, edx
@@ -47121,7 +47122,7 @@ loc_00423ad8:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00423afb ; jge 0x423afb
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00423af8 ; je 0x423af8
push ebx
call fcn_004239b9 ; call 0x4239b9
@@ -48498,7 +48499,7 @@ je short loc_00424a17 ; je 0x424a17
xor edx, edx
mov dl, byte [eax + ref_004967e0] ; mov dl, byte [eax + 0x4967e0]
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496b7c] ; mov al, byte [eax + 0x496b7c]
+mov al, byte [eax + (_players+20)] ; mov al, byte [eax + 0x496b7c]
and eax, 0xff
shl eax, 2
add edx, eax
@@ -49553,10 +49554,10 @@ shl eax, 2
add ebx, eax
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul edx, ecx, 0x68
-mov eax, dword [edx + ref_00496b84] ; mov eax, dword [edx + 0x496b84]
+mov eax, dword [edx + (_players+28)] ; mov eax, dword [edx + 0x496b84]
cmp eax, dword [ebx + ref_004967e4] ; cmp eax, dword [ebx + 0x4967e4]
jge short loc_00425640 ; jge 0x425640
-cmp byte [edx + ref_00496b7d], 1 ; cmp byte [edx + 0x496b7d], 1
+cmp byte [edx + (_players+21)], 1 ; cmp byte [edx + 0x496b7d], 1
jne short loc_00425639 ; jne 0x425639
push 1
push ref_00463e50 ; push 0x463e50
@@ -49644,7 +49645,7 @@ add esp, 8
cmp eax, 1
jne short loc_0042575c ; jne 0x42575c
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0042575c ; jne 0x42575c
push 1
push ref_00463e5f ; push 0x463e5f
@@ -49710,7 +49711,7 @@ shl eax, 2
sub eax, ecx
cmp byte [edi + eax + ref_0049915b], 9 ; cmp byte [edi + eax + 0x49915b], 9
jb short loc_0042580c ; jb 0x42580c
-cmp byte [edx + ref_00496b7d], 1 ; cmp byte [edx + 0x496b7d], 1
+cmp byte [edx + (_players+21)], 1 ; cmp byte [edx + 0x496b7d], 1
jne near loc_00425639 ; jne 0x425639
push 1
push ref_00463e72 ; push 0x463e72
@@ -49743,7 +49744,7 @@ add esp, 4
cmp eax, 0xf
jl short loc_0042586f ; jl 0x42586f
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00425639 ; jne 0x425639
push 1
push ref_00463e89 ; push 0x463e89
@@ -51704,7 +51705,7 @@ sub eax, ecx
xor ecx, ecx
mov cl, byte [ebx + eax*4 + ref_004967e0] ; mov cl, byte [ebx + eax*4 + 0x4967e0]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7c] ; mov al, byte [eax + 0x496b7c]
+mov al, byte [eax + (_players+20)] ; mov al, byte [eax + 0x496b7c]
and eax, 0xff
shl eax, 2
add eax, ecx
@@ -51746,7 +51747,7 @@ push eax
xor eax, eax
mov al, byte [ref_0048c2c2] ; mov al, byte [0x48c2c2]
imul eax, eax, 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -53001,7 +53002,7 @@ xor edx, edx
mov dl, byte [ebp + eax*4 + ref_004967e0] ; mov dl, byte [ebp + eax*4 + 0x4967e0]
imul esi, esi, 0x68
xor eax, eax
-mov al, byte [esi + ref_00496b7c] ; mov al, byte [esi + 0x496b7c]
+mov al, byte [esi + (_players+20)] ; mov al, byte [esi + 0x496b7c]
shl eax, 2
add eax, edx
add eax, 8
@@ -53154,7 +53155,7 @@ loc_00428479:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge near loc_004258be ; jge 0x4258be
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_004284bb ; je 0x4284bb
xor edx, edx
jmp short loc_0042849b ; jmp 0x42849b
@@ -53188,7 +53189,7 @@ push ebp
sub esp, 0x18
call fcn_0042483e ; call 0x42483e
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0042886e ; jne 0x42886e
push 0
push 0
@@ -53599,7 +53600,7 @@ je short loc_0042896e ; je 0x42896e
xor edx, edx
mov dl, byte [ebx*8 + ref_0047fee9] ; mov dl, byte [ebx*8 + 0x47fee9]
imul eax, esi, 0x68
-mov al, byte [eax + ref_00496b7f] ; mov al, byte [eax + 0x496b7f]
+mov al, byte [eax + (_players+23)] ; mov al, byte [eax + 0x496b7f]
and eax, 0xff
sub edx, eax
cmp edx, 2
@@ -53726,7 +53727,7 @@ jne near loc_0042885c ; jne 0x42885c
cmp esi, dword [_current_player] ; cmp esi, dword [0x49910c]
je near loc_00428ca9 ; je 0x428ca9
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_00428ca9 ; je 0x428ca9
xor ebx, ebx
jmp short loc_00428b43 ; jmp 0x428b43
@@ -53833,7 +53834,7 @@ cmp eax, ecx
jle near loc_00428b39 ; jle 0x428b39
lea edx, [ecx + ecx]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jge near loc_00428b39 ; jge 0x428b39
push ebx
push esi
@@ -53937,7 +53938,7 @@ fistp dword [esp + 4]
sub word [eax + ref_0049698a], si ; sub word [eax + 0x49698a], si
sub word [eax + ref_00496988], si ; sub word [eax + 0x496988], si
mov eax, dword [esp + 4]
-sub dword [ebx + ref_00496b88], eax ; sub dword [ebx + 0x496b88], eax
+sub dword [ebx + (_players+32)], eax ; sub dword [ebx + 0x496b88], eax
jmp short loc_00428db7 ; jmp 0x428db7
loc_00428d7f:
@@ -53955,7 +53956,7 @@ mov edx, esi
imul edx, eax
mov dword [esp + 4], edx
sub dword [ecx + 0x30], esi
-sub dword [ebx + ref_00496b84], edx ; sub dword [ebx + 0x496b84], edx
+sub dword [ebx + (_players+28)], edx ; sub dword [ebx + 0x496b84], edx
loc_00428db7:
mov edx, dword [esp + 0x1c]
@@ -54028,7 +54029,7 @@ cmp dword [esp + 0x20], 0
je short loc_00428ea4 ; je 0x428ea4
imul edx, dword [esp + 0x14], 0x68
mov eax, dword [esp]
-add dword [edx + ref_00496b88], eax ; add dword [edx + 0x496b88], eax
+add dword [edx + (_players+32)], eax ; add dword [edx + 0x496b88], eax
jmp short loc_00428ead ; jmp 0x428ead
loc_00428ea4:
@@ -54922,7 +54923,7 @@ call fcn_004563f5 ; call 0x4563f5
add esp, 0x10
mov byte [esp], 0x24
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b88] ; mov ebx, dword [eax + 0x496b88]
+mov ebx, dword [eax + (_players+32)] ; mov ebx, dword [eax + 0x496b88]
push ebx
lea eax, [esp + 5]
push eax
@@ -55542,7 +55543,7 @@ xor eax, eax
mov al, byte [esi + 0x18]
dec eax
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
push 0
call fcn_0044fabc ; call 0x44fabc
@@ -56682,7 +56683,7 @@ shl eax, 3
add edx, eax
shl edx, 2
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-fild dword [eax + ref_00496b88] ; fild dword [eax + 0x496b88]
+fild dword [eax + (_players+32)] ; fild dword [eax + 0x496b88]
fdiv dword [edx + ref_00496994] ; fdiv dword [edx + 0x496994]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x50]
@@ -57468,7 +57469,7 @@ push 2
push 0x40
push esi
imul eax, ebx, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
mov eax, dword [ref_0048c2dc] ; mov eax, dword [0x48c2dc]
add eax, 0x18
@@ -57728,12 +57729,12 @@ loc_0042bb7c:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0042bbb3 ; jge 0x42bbb3
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042bbb0 ; je 0x42bbb0
push 2
push 0x58
push edi
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
mov eax, dword [ref_0048c2dc] ; mov eax, dword [0x48c2dc]
add eax, 0xc
@@ -57777,7 +57778,7 @@ loc_0042bc0c:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0042bc6e ; jge 0x42bc6e
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042bc6b ; je 0x42bc6b
mov eax, ebx
shl eax, 2
@@ -57813,7 +57814,7 @@ loc_0042bc75:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0042bcf0 ; jge 0x42bcf0
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042bced ; je 0x42bced
mov eax, dword [esp + 0xa4]
fild dword [eax + 0x28]
@@ -57912,7 +57913,7 @@ loc_0042bdc3:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_0042bc0a ; jge 0x42bc0a
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042bdec ; je 0x42bdec
mov eax, ebx
shl eax, 2
@@ -57932,7 +57933,7 @@ loc_0042bdf6:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0042be43 ; jge 0x42be43
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042be40 ; je 0x42be40
mov edx, dword [esp + ebx*4 + 0x90]
push edx
@@ -57974,20 +57975,20 @@ loc_0042be6f:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0042bec5 ; jge 0x42bec5
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0042bec2 ; je 0x42bec2
mov esi, dword [esp + ebx*4 + 0x90]
-mov edi, dword [eax + ref_00496b88] ; mov edi, dword [eax + 0x496b88]
+mov edi, dword [eax + (_players+32)] ; mov edi, dword [eax + 0x496b88]
add edi, esi
-mov dword [eax + ref_00496b88], edi ; mov dword [eax + 0x496b88], edi
+mov dword [eax + (_players+32)], edi ; mov dword [eax + 0x496b88], edi
test edi, edi
jge short loc_0042bec2 ; jge 0x42bec2
-add dword [eax + ref_00496b84], edi ; add dword [eax + 0x496b84], edi
+add dword [eax + (_players+28)], edi ; add dword [eax + 0x496b84], edi
xor ecx, ecx
-mov dword [eax + ref_00496b88], ecx ; mov dword [eax + 0x496b88], ecx
-cmp dword [eax + ref_00496b84], 0 ; cmp dword [eax + 0x496b84], 0
+mov dword [eax + (_players+32)], ecx ; mov dword [eax + 0x496b88], ecx
+cmp dword [eax + (_players+28)], 0 ; cmp dword [eax + 0x496b84], 0
jge short loc_0042bec2 ; jge 0x42bec2
-mov dword [eax + ref_00496b84], ecx ; mov dword [eax + 0x496b84], ecx
+mov dword [eax + (_players+28)], ecx ; mov dword [eax + 0x496b84], ecx
push ebx
call fcn_0040cd87 ; call 0x40cd87
add esp, 4
@@ -58045,12 +58046,12 @@ idiv ecx
test edx, edx
jne near loc_0042c794 ; jne 0x42c794
imul ebx, edi, 0x68
-cmp byte [ebx + ref_00496b82], 0 ; cmp byte [ebx + 0x496b82], 0
+cmp byte [ebx + (_players+26)], 0 ; cmp byte [ebx + 0x496b82], 0
je near loc_0042c794 ; je 0x42c794
call fcn_00428d01 ; call 0x428d01
cmp eax, 1
je near loc_0042c794 ; je 0x42c794
-mov edx, dword [ebx + ref_00496b94] ; mov edx, dword [ebx + 0x496b94]
+mov edx, dword [ebx + (_players+44)] ; mov edx, dword [ebx + 0x496b94]
test edx, edx
je short loc_0042bf6e ; je 0x42bf6e
push edx
@@ -58101,12 +58102,12 @@ jmp short loc_0042bf80 ; jmp 0x42bf80
loc_0042bfff:
imul ecx, edi, 0x68
-mov eax, dword [ecx + ref_00496b88] ; mov eax, dword [ecx + 0x496b88]
-add eax, dword [ecx + ref_00496b84] ; add eax, dword [ecx + 0x496b84]
+mov eax, dword [ecx + (_players+32)] ; mov eax, dword [ecx + 0x496b88]
+add eax, dword [ecx + (_players+28)] ; add eax, dword [ecx + 0x496b84]
mov edx, dword [esp + 0xc8]
add edx, eax
xor eax, eax
-mov al, byte [ecx + ref_00496b82] ; mov al, byte [ecx + 0x496b82]
+mov al, byte [ecx + (_players+26)] ; mov al, byte [ecx + 0x496b82]
imul edx, eax
mov ebx, 0x64
mov eax, edx
@@ -58120,7 +58121,7 @@ jge near loc_0042c794 ; jge 0x42c794
mov edx, ebp
sub edx, eax
mov dword [esp + 0xc4], edx
-mov ebx, dword [ecx + ref_00496b88] ; mov ebx, dword [ecx + 0x496b88]
+mov ebx, dword [ecx + (_players+32)] ; mov ebx, dword [ecx + 0x496b88]
cmp edx, ebx
jle short loc_0042c067 ; jle 0x42c067
mov dword [esp + 0xc4], ebx
@@ -58339,7 +58340,7 @@ shl eax, 4
mov edx, eax
shl eax, 2
sub eax, edx
-cmp eax, dword [ecx + ref_00496b88] ; cmp eax, dword [ecx + 0x496b88]
+cmp eax, dword [ecx + (_players+32)] ; cmp eax, dword [ecx + 0x496b88]
jge near loc_0042c574 ; jge 0x42c574
mov eax, dword [ref_00499100] ; mov eax, dword [0x499100]
sub eax, 0x18
@@ -58535,7 +58536,7 @@ sub eax, edx
shl eax, 4
add eax, edx
shl eax, 5
-cmp eax, dword [ecx + ref_00496b88] ; cmp eax, dword [ecx + 0x496b88]
+cmp eax, dword [ecx + (_players+32)] ; cmp eax, dword [ecx + 0x496b88]
jge near loc_0042c574 ; jge 0x42c574
xor eax, eax
mov ax, word [ebx + ref_00496984] ; mov ax, word [ebx + 0x496984]
@@ -58637,7 +58638,7 @@ push ebx
lea eax, [esp + 0xb4]
push eax
imul edi, edi, 0x68
-mov eax, dword [edi + ref_00496b68] ; mov eax, dword [edi + 0x496b68]
+mov eax, dword [edi + (_players+0)] ; mov eax, dword [edi + 0x496b68]
push eax
push ref_00464186 ; push 0x464186
lea eax, [esp + 0x10]
@@ -58668,7 +58669,7 @@ mov ebp, dword [esp + 0x110]
xor edx, edx
mov dword [esp + 0xd0], edx
imul ebx, ebp, 0x68
-mov ecx, dword [ebx + ref_00496b94] ; mov ecx, dword [ebx + 0x496b94]
+mov ecx, dword [ebx + (_players+44)] ; mov ecx, dword [ebx + 0x496b94]
push ecx
mov esi, dword [ref_00497160] ; mov esi, dword [0x497160]
push esi
@@ -58676,9 +58677,9 @@ call fcn_004521aa ; call 0x4521aa
add esp, 8
cmp eax, 6
jg short loc_0042c7f8 ; jg 0x42c7f8
-mov eax, dword [ebx + ref_00496b88] ; mov eax, dword [ebx + 0x496b88]
-add eax, dword [ebx + ref_00496b84] ; add eax, dword [ebx + 0x496b84]
-cmp eax, dword [ebx + ref_00496b8c] ; cmp eax, dword [ebx + 0x496b8c]
+mov eax, dword [ebx + (_players+32)] ; mov eax, dword [ebx + 0x496b88]
+add eax, dword [ebx + (_players+28)] ; add eax, dword [ebx + 0x496b84]
+cmp eax, dword [ebx + (_players+36)] ; cmp eax, dword [ebx + 0x496b8c]
jge short loc_0042c7f8 ; jge 0x42c7f8
mov dword [esp + 0xd0], 1
jmp short loc_0042c81b ; jmp 0x42c81b
@@ -59180,8 +59181,8 @@ add dword [esp + ebx*4 + 0x80], eax
loc_0042ce5c:
imul eax, ebp, 0x68
-mov ecx, dword [eax + ref_00496b84] ; mov ecx, dword [eax + 0x496b84]
-add ecx, dword [eax + ref_00496b88] ; add ecx, dword [eax + 0x496b88]
+mov ecx, dword [eax + (_players+28)] ; mov ecx, dword [eax + 0x496b84]
+add ecx, dword [eax + (_players+32)] ; add ecx, dword [eax + 0x496b88]
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
shl eax, 2
@@ -59212,8 +59213,8 @@ add dword [esp + ebx*4 + 0x80], eax
loc_0042cec9:
imul eax, ebp, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-mov ecx, dword [eax + ref_00496b88] ; mov ecx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+mov ecx, dword [eax + (_players+32)] ; mov ecx, dword [eax + 0x496b88]
add ecx, edx
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -59337,7 +59338,7 @@ push ebx
lea eax, [esp + 0xb4]
push eax
imul eax, ebp, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_004641cc ; push 0x4641cc
lea eax, [esp + 0x10]
@@ -59356,12 +59357,12 @@ je short loc_0042d0e4 ; je 0x42d0e4
cmp dword [esp + 0xc8], 0xffffffff
je short loc_0042d0e4 ; je 0x42d0e4
imul eax, ebp, 0x68
-mov edx, dword [eax + ref_00496b88] ; mov edx, dword [eax + 0x496b88]
-mov edi, dword [eax + ref_00496b84] ; mov edi, dword [eax + 0x496b84]
+mov edx, dword [eax + (_players+32)] ; mov edx, dword [eax + 0x496b88]
+mov edi, dword [eax + (_players+28)] ; mov edi, dword [eax + 0x496b84]
add edx, edi
mov dword [esp + 0xf8], edx
fild dword [esp + 0xf8]
-fild dword [eax + ref_00496b8c] ; fild dword [eax + 0x496b8c]
+fild dword [eax + (_players+36)] ; fild dword [eax + 0x496b8c]
fmul qword [ref_00464234] ; fmul qword [0x464234]
fcompp
fnstsw ax
@@ -59425,7 +59426,7 @@ mov dword [esp + 0xc], eax
fild word [esp + 0xc]
fmul qword [ref_00464364] ; fmul qword [0x464364]
xor eax, eax
-mov ax, word [ecx + ref_00496b98] ; mov ax, word [ecx + 0x496b98]
+mov ax, word [ecx + (_players+48)] ; mov ax, word [ecx + 0x496b98]
mov dword [esp + 8], eax
fild dword [esp + 8]
fstp qword [esp]
@@ -59433,7 +59434,7 @@ fadd qword [esp]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 8]
mov eax, dword [esp + 8]
-mov word [ecx + ref_00496b98], ax ; mov word [ecx + 0x496b98], ax
+mov word [ecx + (_players+48)], ax ; mov word [ecx + 0x496b98], ax
xor eax, eax
mov al, byte [edx*8 + (_card_table - 3)] ; mov al, byte [edx*8 + 0x47fdef]
add esp, 0x10
@@ -59454,7 +59455,7 @@ mov dword [esp + 8], ebx
fild dword [esp + 8]
fmul qword [ref_0046436c] ; fmul qword [0x46436c]
xor eax, ecx
-mov ax, word [edx + ref_00496b98] ; mov ax, word [edx + 0x496b98]
+mov ax, word [edx + (_players+48)] ; mov ax, word [edx + 0x496b98]
mov dword [esp + 8], eax
fild dword [esp + 8]
fstp qword [esp]
@@ -59462,7 +59463,7 @@ fadd qword [esp]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 8]
mov eax, dword [esp + 8]
-mov word [edx + ref_00496b98], ax ; mov word [edx + 0x496b98], ax
+mov word [edx + (_players+48)], ax ; mov word [edx + 0x496b98], ax
mov eax, esi
shl eax, 2
add eax, esi
@@ -59496,7 +59497,7 @@ xor bh, bh
mov bl, byte [eax*8 + (_card_table - 3)] ; mov bl, byte [eax*8 + 0x47fdef]
loc_0042d25c:
-sub word [edx + ref_00496b98], bx ; sub word [edx + 0x496b98], bx
+sub word [edx + (_players+48)], bx ; sub word [edx + 0x496b98], bx
xor edx, edx
mov dl, bl
mov eax, edx
@@ -59729,7 +59730,7 @@ push 0xa
lea eax, [esp + 0x54]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
push eax
call fcn_00457d61 ; call 0x457d61
@@ -60645,7 +60646,7 @@ xor edx, edx
mov dl, byte [eax*8 + (_card_table - 3)] ; mov dl, byte [eax*8 + 0x47fdef]
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
cmp eax, edx
jge short loc_0042e1eb ; jge 0x42e1eb
@@ -60812,7 +60813,7 @@ movzx ebp, dh
xor ecx, ecx
mov cl, byte [ebp*8 + (ref_0047fee2 - 3)] ; mov cl, byte [ebp*8 + 0x47fedf]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
mov edx, dword [ref_0048c310] ; mov edx, dword [0x48c310]
mov esi, edx
@@ -61282,7 +61283,7 @@ add esp, 8
loc_0042ea2b:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0042ed8d ; jne 0x42ed8d
push 0
push 0
@@ -61578,7 +61579,7 @@ xor ebx, ebx
mov bl, byte [edi*8 + (_card_table + 7)] ; mov bl, byte [edi*8 + 0x47fdf9]
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul edx, ecx, 0x68
-mov dl, byte [edx + ref_00496b7f] ; mov dl, byte [edx + 0x496b7f]
+mov dl, byte [edx + (_players+23)] ; mov dl, byte [edx + 0x496b7f]
and edx, 0xff
sub ebx, edx
cmp ebx, 2
@@ -61622,7 +61623,7 @@ xor ebx, ebx
mov bl, byte [ecx*8 + ref_0047fee9] ; mov bl, byte [ecx*8 + 0x47fee9]
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul edx, esi, 0x68
-mov dl, byte [edx + ref_00496b7f] ; mov dl, byte [edx + 0x496b7f]
+mov dl, byte [edx + (_players+23)] ; mov dl, byte [edx + 0x496b7f]
and edx, 0xff
sub ebx, edx
cmp ebx, 2
@@ -61640,7 +61641,7 @@ jmp short loc_0042ee28 ; jmp 0x42ee28
loc_0042eea4:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp word [eax + ref_00496b98], 0x64 ; cmp word [eax + 0x496b98], 0x64
+cmp word [eax + (_players+48)], 0x64 ; cmp word [eax + 0x496b98], 0x64
jae near loc_0042f025 ; jae 0x42f025
xor ebx, ebx
mov dword [esp + 0x130], ebx
@@ -61728,7 +61729,7 @@ jmp short loc_0042ef3f ; jmp 0x42ef3f
loc_0042ef9b:
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 1
jne short loc_0042efdd ; jne 0x42efdd
@@ -61753,7 +61754,7 @@ add ebp, eax
loc_0042efdd:
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 2
jne short loc_0042f025 ; jne 0x42f025
@@ -61778,7 +61779,7 @@ add ebp, eax
loc_0042f025:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov bx, word [eax + ref_00496b98] ; mov bx, word [eax + 0x496b98]
+mov bx, word [eax + (_players+48)] ; mov bx, word [eax + 0x496b98]
test bx, bx
je near loc_0042ed50 ; je 0x42ed50
mov eax, ebx
@@ -61818,7 +61819,7 @@ jl short loc_0042f063 ; jl 0x42f063
xor edx, edx
mov dl, byte [eax + (_card_table + 7)] ; mov dl, byte [eax + 0x47fdf9]
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b7f] ; mov al, byte [eax + 0x496b7f]
+mov al, byte [eax + (_players+23)] ; mov al, byte [eax + 0x496b7f]
and eax, 0xff
sub edx, eax
cmp edx, 2
@@ -61879,7 +61880,7 @@ jmp short loc_0042f0f5 ; jmp 0x42f0f5
loc_0042f16c:
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 1
je short loc_0042f1cc ; je 0x42f1cc
@@ -61909,7 +61910,7 @@ sub dword [esp + 0x12c], eax
loc_0042f1cc:
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 2
je short loc_0042f232 ; je 0x42f232
@@ -61968,7 +61969,7 @@ shl edx, 3
movzx esi, byte [edx + ref_0047fee9] ; movzx esi, byte [edx + 0x47fee9]
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul ebx, ecx, 0x68
-mov bl, byte [ebx + ref_00496b7f] ; mov bl, byte [ebx + 0x496b7f]
+mov bl, byte [ebx + (_players+23)] ; mov bl, byte [ebx + 0x496b7f]
and ebx, 0xff
sub esi, ebx
cmp esi, 2
@@ -62126,7 +62127,7 @@ mov eax, dword [esp + 0x70]
cmp eax, dword [_nplayers] ; cmp eax, dword [0x499114]
jge near loc_0042f6ab ; jge 0x42f6ab
imul esi, eax, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je near loc_0042f6a2 ; je 0x42f6a2
push 0xfffffffffffffff0
push 0x3c
@@ -62146,7 +62147,7 @@ mov eax, dword [esp + ebx*8 + 0x50]
add eax, 0x14
push eax
xor eax, eax
-mov al, byte [esi + ref_00496b7b] ; mov al, byte [esi + 0x496b7b]
+mov al, byte [esi + (_players+19)] ; mov al, byte [esi + 0x496b7b]
lea edx, [eax + 0x19]
mov eax, edx
shl eax, 2
@@ -62514,7 +62515,7 @@ push 0
push ebp
call dword [cs:__imp__InvalidateRect@12] ; ucall: call dword cs:[0x4622f8]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b84], 0x3e8 ; cmp dword [eax + 0x496b84], 0x3e8
+cmp dword [eax + (_players+28)], 0x3e8 ; cmp dword [eax + 0x496b84], 0x3e8
jge short loc_0042f8f6 ; jge 0x42f8f6
push 4
push 4
@@ -63114,7 +63115,7 @@ push 0
push 3
push 0x406
push ebp
-sub dword [eax + ref_00496b84], 0x3e8 ; sub dword [eax + 0x496b84], 0x3e8
+sub dword [eax + (_players+28)], 0x3e8 ; sub dword [eax + 0x496b84], 0x3e8
add dword [ref_00499080], 0x3e8 ; add dword [0x499080], 0x3e8
call dword [cs:__imp__PostMessageA@16] ; ucall: call dword cs:[0x462310]
push 0
@@ -63625,7 +63626,7 @@ push 0x140
mov eax, dword [ref_0048c377] ; mov eax, dword [0x48c377]
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ecx, dword [eax*4 + ref_00475630] ; mov ecx, dword [eax*4 + 0x475630]
push ecx
@@ -64799,7 +64800,7 @@ push edi
push ebp
sub esp, 0x28
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0043169e ; jne 0x43169e
push ref_0047566b ; push 0x47566b
call fcn_00454176 ; call 0x454176
@@ -64854,7 +64855,7 @@ add esp, 4
jmp near loc_0043170a ; jmp 0x43170a
loc_0043169e:
-cmp dword [eax + ref_00496b84], 0x3e8 ; cmp dword [eax + 0x496b84], 0x3e8
+cmp dword [eax + (_players+28)], 0x3e8 ; cmp dword [eax + 0x496b84], 0x3e8
jle short loc_0043170a ; jle 0x43170a
xor eax, eax
xor ebx, ebx
@@ -64887,7 +64888,7 @@ mov al, byte [esp + edx]
mov dl, byte [esp + 0x24]
mov byte [eax + ref_004990b8], dl ; mov byte [eax + 0x4990b8], dl
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-sub dword [eax + ref_00496b84], 0x3e8 ; sub dword [eax + 0x496b84], 0x3e8
+sub dword [eax + (_players+28)], 0x3e8 ; sub dword [eax + 0x496b84], 0x3e8
add dword [ref_00499080], 0x3e8 ; add dword [0x499080], 0x3e8
loc_0043170a:
@@ -65025,7 +65026,7 @@ loc_0043186e:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_004318b4 ; je 0x4318b4
push ebx
call fcn_004239b9 ; call 0x4239b9
@@ -65062,7 +65063,7 @@ loc_004318be:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_00431963 ; je 0x431963
xor edx, edx
mov eax, 1
@@ -65142,7 +65143,7 @@ loc_00431970:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_00431a1d ; je 0x431a1d
xor edx, edx
mov eax, 1
@@ -65228,12 +65229,12 @@ loc_00431a2c:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431a7a ; je 0x431a7a
-cmp dword [eax + ref_00496b84], 0 ; cmp dword [eax + 0x496b84], 0
+cmp dword [eax + (_players+28)], 0 ; cmp dword [eax + 0x496b84], 0
je short loc_00431a7a ; je 0x431a7a
mov edx, dword [esp]
-mov ecx, dword [eax + ref_00496b84] ; mov ecx, dword [eax + 0x496b84]
+mov ecx, dword [eax + (_players+28)] ; mov ecx, dword [eax + 0x496b84]
cmp edx, ecx
jge short loc_00431a6d ; jge 0x431a6d
mov dword [esp], ecx
@@ -65267,9 +65268,9 @@ loc_00431a8a:
cmp ebx, edi
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431acf ; je 0x431acf
-mov ebp, dword [eax + ref_00496b88] ; mov ebp, dword [eax + 0x496b88]
+mov ebp, dword [eax + (_players+32)] ; mov ebp, dword [eax + 0x496b88]
test ebp, ebp
je short loc_00431acf ; je 0x431acf
mov edx, dword [esp]
@@ -65305,9 +65306,9 @@ loc_00431ad9:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431b29 ; je 0x431b29
-mov dx, word [eax + ref_00496b98] ; mov dx, word [eax + 0x496b98]
+mov dx, word [eax + (_players+48)] ; mov dx, word [eax + 0x496b98]
test dx, dx
je short loc_00431b29 ; je 0x431b29
mov eax, edx
@@ -65344,9 +65345,9 @@ loc_00431b36:
cmp ebx, ebp
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431b5e ; je 0x431b5e
-test byte [eax + ref_00496b79], 3 ; test byte [eax + 0x496b79], 3
+test byte [eax + (_players+17)], 3 ; test byte [eax + 0x496b79], 3
jne short loc_00431b5e ; jne 0x431b5e
mov al, bl
inc al
@@ -65366,9 +65367,9 @@ loc_00431b6b:
cmp ebx, edi
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431b96 ; je 0x431b96
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 1
jne short loc_00431b96 ; jne 0x431b96
@@ -65389,9 +65390,9 @@ loc_00431b9d:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431bcc ; je 0x431bcc
-mov al, byte [eax + ref_00496b79] ; mov al, byte [eax + 0x496b79]
+mov al, byte [eax + (_players+17)] ; mov al, byte [eax + 0x496b79]
and al, 3
cmp al, 2
jne short loc_00431bcc ; jne 0x431bcc
@@ -65412,9 +65413,9 @@ loc_00431bd3:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431bff ; je 0x431bff
-cmp byte [eax + ref_00496ba7], 0 ; cmp byte [eax + 0x496ba7], 0
+cmp byte [eax + (_players+63)], 0 ; cmp byte [eax + 0x496ba7], 0
je short loc_00431bff ; je 0x431bff
mov al, bl
inc al
@@ -65433,9 +65434,9 @@ loc_00431c06:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431c2e ; je 0x431c2e
-cmp byte [eax + ref_00496b7c], 0 ; cmp byte [eax + 0x496b7c], 0
+cmp byte [eax + (_players+20)], 0 ; cmp byte [eax + 0x496b7c], 0
je short loc_00431c2e ; je 0x431c2e
mov al, bl
inc al
@@ -65455,9 +65456,9 @@ loc_00431c3b:
cmp ebx, ebp
jge short loc_00431c62 ; jge 0x431c62
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00431c5f ; je 0x431c5f
-cmp byte [eax + ref_00496b7c], 0 ; cmp byte [eax + 0x496b7c], 0
+cmp byte [eax + (_players+20)], 0 ; cmp byte [eax + 0x496b7c], 0
jne short loc_00431c5f ; jne 0x431c5f
mov al, bl
inc al
@@ -65515,7 +65516,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65542,7 +65543,7 @@ call fcn_00441f21 ; call 0x441f21
loc_00431d3a:
add esp, 4
-add word [ebx + ref_00496b98], ax ; add word [ebx + 0x496b98], ax
+add word [ebx + (_players+48)], ax ; add word [ebx + 0x496b98], ax
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
push edx
@@ -65561,7 +65562,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65595,7 +65596,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65649,7 +65650,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65670,12 +65671,12 @@ push eax
call fcn_00440cac ; call 0x440cac
add esp, 8
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-mov dh, byte [ebx + ref_00496ba0] ; mov dh, byte [ebx + 0x496ba0]
+mov dh, byte [ebx + (_players+56)] ; mov dh, byte [ebx + 0x496ba0]
inc dh
-mov byte [ebx + ref_00496ba0], dh ; mov byte [ebx + 0x496ba0], dh
+mov byte [ebx + (_players+56)], dh ; mov byte [ebx + 0x496ba0], dh
mov cl, dh
and cl, 0x7f
-mov byte [ebx + ref_00496ba0], cl ; mov byte [ebx + 0x496ba0], cl
+mov byte [ebx + (_players+56)], cl ; mov byte [ebx + 0x496ba0], cl
jmp near loc_004320aa ; jmp 0x4320aa
loc_00431eef:
@@ -65683,7 +65684,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65705,18 +65706,18 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul ebx, ecx, 0x68
-mov eax, dword [ebx + ref_00496b84] ; mov eax, dword [ebx + 0x496b84]
-add dword [ebx + ref_00496b88], eax ; add dword [ebx + 0x496b88], eax
+mov eax, dword [ebx + (_players+28)] ; mov eax, dword [ebx + 0x496b84]
+add dword [ebx + (_players+32)], eax ; add dword [ebx + 0x496b88], eax
xor eax, eax
-mov dword [ebx + ref_00496b84], eax ; mov dword [ebx + 0x496b84], eax
+mov dword [ebx + (_players+28)], eax ; mov dword [ebx + 0x496b84], eax
push ecx
jmp near loc_00431d4b ; jmp 0x431d4b
loc_00431f67:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_004320aa ; jne 0x4320aa
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
mov ebx, eax
shl ebx, 2
@@ -65732,7 +65733,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65829,7 +65830,7 @@ call fcn_00441e12 ; call 0x441e12
mov ebx, eax
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65858,13 +65859,13 @@ jmp near loc_00431e6d ; jmp 0x431e6d
loc_00432160:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_004320aa ; jne 0x4320aa
push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65901,7 +65902,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -65929,9 +65930,9 @@ jmp near loc_00431d3a ; jmp 0x431d3a
loc_00432259:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b9a], 0 ; cmp dword [eax + 0x496b9a], 0
+cmp dword [eax + (_players+50)], 0 ; cmp dword [eax + 0x496b9a], 0
jne near loc_004320aa ; jne 0x4320aa
-mov ax, word [eax + ref_00496b74] ; mov ax, word [eax + 0x496b74]
+mov ax, word [eax + (_players+12)] ; mov ax, word [eax + 0x496b74]
and eax, 0xffff
mov ebx, eax
shl ebx, 2
@@ -65947,7 +65948,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -66014,7 +66015,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -66062,10 +66063,10 @@ jmp near loc_00431e6d ; jmp 0x431e6d
loc_0043242b:
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-cmp dword [ebx + ref_00496b9a], 0 ; cmp dword [ebx + 0x496b9a], 0
+cmp dword [ebx + (_players+50)], 0 ; cmp dword [ebx + 0x496b9a], 0
jne near loc_004320aa ; jne 0x4320aa
xor eax, esi
-mov ax, word [ebx + ref_00496b74] ; mov ax, word [ebx + 0x496b74]
+mov ax, word [ebx + (_players+12)] ; mov ax, word [ebx + 0x496b74]
mov ebx, eax
shl ebx, 2
add ebx, eax
@@ -66080,7 +66081,7 @@ push 1
call fcn_0041906a ; call 0x41906a
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046482a ; push 0x46482a
lea eax, [esp + 8]
@@ -67594,7 +67595,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0043390b ; jne 0x43390b
push ref_004757e7 ; push 0x4757e7
call fcn_00454176 ; call 0x454176
@@ -67759,7 +67760,7 @@ loc_004339e5:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00433a01 ; jge 0x433a01
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_004339fe ; je 0x4339fe
cmp ebx, ebp
je short loc_004339fe ; je 0x4339fe
@@ -67835,7 +67836,7 @@ loc_00433aa6:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00433b1c ; jge 0x433b1c
imul edx, ebx, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je short loc_00433b19 ; je 0x433b19
cmp ebx, dword [esp + 0x14]
je short loc_00433b19 ; je 0x433b19
@@ -67851,7 +67852,7 @@ mov eax, esi
movsx eax, word [ecx + eax*2 + ref_004757d8] ; movsx eax, word [ecx + eax*2 + 0x4757d8]
sub eax, 0xb4
push eax
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -67911,24 +67912,24 @@ push esi
push edi
mov esi, dword [esp + 0x10]
imul ebx, esi, 0x68
-cmp dword [ebx + ref_00496b94], 0 ; cmp dword [ebx + 0x496b94], 0
+cmp dword [ebx + (_players+44)], 0 ; cmp dword [ebx + 0x496b94], 0
jne short loc_00433bd4 ; jne 0x433bd4
push 0x5a
mov ecx, dword [ref_00497160] ; mov ecx, dword [0x497160]
push ecx
call fcn_0045218f ; call 0x45218f
add esp, 8
-mov dword [ebx + ref_00496b94], eax ; mov dword [ebx + 0x496b94], eax
+mov dword [ebx + (_players+44)], eax ; mov dword [ebx + 0x496b94], eax
imul ebx, esi, 0x68
loc_00433bab:
-mov edi, dword [ebx + ref_00496b94] ; mov edi, dword [ebx + 0x496b94]
+mov edi, dword [ebx + (_players+44)] ; mov edi, dword [ebx + 0x496b94]
push edi
call fcn_004523d5 ; call 0x4523d5
add esp, 4
cmp eax, 1
jne short loc_00433bd4 ; jne 0x433bd4
-mov eax, ref_00496b68 ; mov eax, 0x496b68
+mov eax, (_players+0) ; mov eax, 0x496b68
add eax, ebx
add eax, 0x2c
push eax
@@ -67946,17 +67947,17 @@ fcn_00433bd8:
push edi
imul eax, dword [esp + 8], 0x68
mov edx, dword [esp + 0xc]
-mov ecx, dword [eax + ref_00496b88] ; mov ecx, dword [eax + 0x496b88]
+mov ecx, dword [eax + (_players+32)] ; mov ecx, dword [eax + 0x496b88]
sub ecx, edx
-mov dword [eax + ref_00496b88], ecx ; mov dword [eax + 0x496b88], ecx
+mov dword [eax + (_players+32)], ecx ; mov dword [eax + 0x496b88], ecx
test ecx, ecx
jge short loc_00433c1e ; jge 0x433c1e
-add dword [eax + ref_00496b84], ecx ; add dword [eax + 0x496b84], ecx
+add dword [eax + (_players+28)], ecx ; add dword [eax + 0x496b84], ecx
xor edi, edi
-mov dword [eax + ref_00496b88], edi ; mov dword [eax + 0x496b88], edi
-cmp dword [eax + ref_00496b84], 0 ; cmp dword [eax + 0x496b84], 0
+mov dword [eax + (_players+32)], edi ; mov dword [eax + 0x496b88], edi
+cmp dword [eax + (_players+28)], 0 ; cmp dword [eax + 0x496b84], 0
jge short loc_00433c1e ; jge 0x433c1e
-mov dword [eax + ref_00496b84], edi ; mov dword [eax + 0x496b84], edi
+mov dword [eax + (_players+28)], edi ; mov dword [eax + 0x496b84], edi
mov ecx, dword [esp + 8]
push ecx
call fcn_0040cd87 ; call 0x40cd87
@@ -68023,7 +68024,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edi, dword [eax + ref_00496b90] ; mov edi, dword [eax + 0x496b90]
+mov edi, dword [eax + (_players+40)] ; mov edi, dword [eax + 0x496b90]
push edi
lea eax, [esp + 0x15]
push eax
@@ -68038,7 +68039,7 @@ push 0
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b90] ; mov ecx, dword [eax + 0x496b90]
+mov ecx, dword [eax + (_players+40)] ; mov ecx, dword [eax + 0x496b90]
mov eax, ebx
sub eax, ecx
push eax
@@ -68142,7 +68143,7 @@ push 0
push 0x1c
push 0x52
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
mov ebx, dword [ref_0048c3b8] ; mov ebx, dword [0x48c3b8]
push ebx
@@ -68152,7 +68153,7 @@ mov byte [esp], 0x24
xor dl, dl
mov byte [esp + 1], dl
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edi, dword [eax + ref_00496b84] ; mov edi, dword [eax + 0x496b84]
+mov edi, dword [eax + (_players+28)] ; mov edi, dword [eax + 0x496b84]
push edi
lea eax, [esp + 5]
push eax
@@ -68168,7 +68169,7 @@ push ebp
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b88] ; mov ecx, dword [eax + 0x496b88]
+mov ecx, dword [eax + (_players+32)] ; mov ecx, dword [eax + 0x496b88]
push ecx
lea eax, [esp + 5]
push eax
@@ -68184,7 +68185,7 @@ push ebx
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edi, dword [eax + ref_00496b8c] ; mov edi, dword [eax + 0x496b8c]
+mov edi, dword [eax + (_players+36)] ; mov edi, dword [eax + 0x496b8c]
push edi
lea eax, [esp + 5]
push eax
@@ -68358,7 +68359,7 @@ push esi
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b94], 0 ; cmp dword [eax + 0x496b94], 0
+cmp dword [eax + (_players+44)], 0 ; cmp dword [eax + 0x496b94], 0
je short loc_0043417b ; je 0x43417b
push 1
push 6
@@ -68368,7 +68369,7 @@ push 0x14
call fcn_0044f9d8 ; call 0x44f9d8
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b94] ; mov ecx, dword [eax + 0x496b94]
+mov ecx, dword [eax + (_players+44)] ; mov ecx, dword [eax + 0x496b94]
push ecx
mov ebx, dword [ref_00497160] ; mov ebx, dword [0x497160]
push ebx
@@ -68426,7 +68427,7 @@ push eax
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_00434212 ; je 0x434212
push 0x159
push 0x159
@@ -68515,7 +68516,7 @@ push eax
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_0043433b ; je 0x43433b
push 0x144
push 0x43
@@ -68714,7 +68715,7 @@ mov eax, dword [esp + 0x50]
cmp eax, ebx
je short loc_00434585 ; je 0x434585
imul eax, eax, 0x68
-mov eax, dword [eax + ref_00496b88] ; mov eax, dword [eax + 0x496b88]
+mov eax, dword [eax + (_players+32)] ; mov eax, dword [eax + 0x496b88]
add dword [ref_0048c3c8], eax ; add dword [0x48c3c8], eax
jmp short loc_00434585 ; jmp 0x434585
@@ -68794,7 +68795,7 @@ jmp short loc_00434641 ; jmp 0x434641
loc_00434665:
mov eax, dword [ref_0048c3c8] ; mov eax, dword [0x48c3c8]
-sub eax, dword [edx + ref_00496b90] ; sub eax, dword [edx + 0x496b90]
+sub eax, dword [edx + (_players+40)] ; sub eax, dword [edx + 0x496b90]
push eax
call fcn_00453544 ; call 0x453544
mov edx, eax
@@ -68802,8 +68803,8 @@ add esp, 4
test eax, eax
je short loc_004346b2 ; je 0x4346b2
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add dword [eax + ref_00496b88], edx ; add dword [eax + 0x496b88], edx
-add dword [eax + ref_00496b90], edx ; add dword [eax + 0x496b90], edx
+add dword [eax + (_players+32)], edx ; add dword [eax + 0x496b88], edx
+add dword [eax + (_players+40)], edx ; add dword [eax + 0x496b90], edx
push edi
mov edi, dword [ref_0048c3c8] ; mov edi, dword [0x48c3c8]
push edi
@@ -68820,7 +68821,7 @@ mov byte [ref_0048c3cc], 2 ; mov byte [0x48c3cc], 2
jmp short loc_00434641 ; jmp 0x434641
loc_004346bb:
-mov ebx, dword [edx + ref_00496b90] ; mov ebx, dword [edx + 0x496b90]
+mov ebx, dword [edx + (_players+40)] ; mov ebx, dword [edx + 0x496b90]
push ebx
call fcn_00453544 ; call 0x453544
mov edx, eax
@@ -68829,8 +68830,8 @@ mov dword [esp + 0x50], eax
test eax, eax
je short loc_004346b2 ; je 0x4346b2
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ebx, dword [eax + ref_00496b84] ; mov ebx, dword [eax + 0x496b84]
-mov ebp, dword [eax + ref_00496b88] ; mov ebp, dword [eax + 0x496b88]
+mov ebx, dword [eax + (_players+28)] ; mov ebx, dword [eax + 0x496b84]
+mov ebp, dword [eax + (_players+32)] ; mov ebp, dword [eax + 0x496b88]
add ebx, ebp
cmp edx, ebx
jle short loc_00434700 ; jle 0x434700
@@ -68842,17 +68843,17 @@ jmp near loc_0043465b ; jmp 0x43465b
loc_00434700:
mov ecx, ebp
sub ecx, edx
-mov dword [eax + ref_00496b88], ecx ; mov dword [eax + 0x496b88], ecx
+mov dword [eax + (_players+32)], ecx ; mov dword [eax + 0x496b88], ecx
test ecx, ecx
jge short loc_0043471c ; jge 0x43471c
-add dword [eax + ref_00496b84], ecx ; add dword [eax + 0x496b84], ecx
+add dword [eax + (_players+28)], ecx ; add dword [eax + 0x496b84], ecx
xor ebp, ebp
-mov dword [eax + ref_00496b88], ebp ; mov dword [eax + 0x496b88], ebp
+mov dword [eax + (_players+32)], ebp ; mov dword [eax + 0x496b88], ebp
loc_0043471c:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
mov edx, dword [esp + 0x50]
-sub dword [eax + ref_00496b90], edx ; sub dword [eax + 0x496b90], edx
+sub dword [eax + (_players+40)], edx ; sub dword [eax + 0x496b90], edx
push edi
mov ebx, dword [ref_0048c3c8] ; mov ebx, dword [0x48c3c8]
push ebx
@@ -69262,7 +69263,7 @@ loc_00434c51:
cmp al, 1
jne near loc_00434641 ; jne 0x434641
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_00434c75 ; je 0x434c75
xor al, al
mov byte [ref_0048c3cf], al ; mov byte [0x48c3cf], al
@@ -69437,7 +69438,7 @@ push eax
push edi
call dword [cs:__imp__InvalidateRect@12] ; ucall: call dword cs:[0x4622f8]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b90] ; mov eax, dword [eax + 0x496b90]
+mov eax, dword [eax + (_players+40)] ; mov eax, dword [eax + 0x496b90]
cmp eax, dword [ref_0048c3c8] ; cmp eax, dword [0x48c3c8]
jge near loc_00434fa1 ; jge 0x434fa1
mov byte [ref_0048c3cc], 3 ; mov byte [0x48c3cc], 3
@@ -69483,7 +69484,7 @@ push eax
push edi
call dword [cs:__imp__InvalidateRect@12] ; ucall: call dword cs:[0x4622f8]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b90], 0 ; cmp dword [eax + 0x496b90], 0
+cmp dword [eax + (_players+40)], 0 ; cmp dword [eax + 0x496b90], 0
je near loc_00434fa1 ; je 0x434fa1
mov byte [ref_0048c3cc], 5 ; mov byte [0x48c3cc], 5
mov eax, dword [ref_00475868] ; mov eax, dword [0x475868]
@@ -69688,7 +69689,7 @@ add esp, 0xd4
jmp near loc_00434646 ; jmp 0x434646
loc_00435197:
-cmp byte [ebx + ref_00496ba4], 0 ; cmp byte [ebx + 0x496ba4], 0
+cmp byte [ebx + (_players+60)], 0 ; cmp byte [ebx + 0x496ba4], 0
je short loc_00435200 ; je 0x435200
mov eax, dword [ref_0048a0dc] ; mov eax, dword [0x48a0dc]
mov edx, dword [eax]
@@ -69703,7 +69704,7 @@ push ecx
push eax
call dword [edx + 0x1c] ; ucall
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba4] ; mov al, byte [eax + 0x496ba4]
+mov al, byte [eax + (_players+60)] ; mov al, byte [eax + 0x496ba4]
and al, 0x7f
xor ebx, ebx
mov bl, al
@@ -69735,12 +69736,12 @@ mov byte [ref_0048c3dd], 3 ; mov byte [0x48c3dd], 3
jmp near loc_0043518a ; jmp 0x43518a
loc_00435228:
-mov eax, dword [ebx + ref_00496b8c] ; mov eax, dword [ebx + 0x496b8c]
+mov eax, dword [ebx + (_players+36)] ; mov eax, dword [ebx + 0x496b8c]
mov edi, dword [ref_0048c3b0] ; mov edi, dword [0x48c3b0]
cmp eax, edi
jge near loc_00435354 ; jge 0x435354
mov eax, edi
-sub eax, dword [ebx + ref_00496b8c] ; sub eax, dword [ebx + 0x496b8c]
+sub eax, dword [ebx + (_players+36)] ; sub eax, dword [ebx + 0x496b8c]
push eax
call fcn_00453544 ; call 0x453544
mov edx, eax
@@ -69749,8 +69750,8 @@ test eax, eax
je near loc_00435354 ; je 0x435354
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-add dword [eax + ref_00496b88], edx ; add dword [eax + 0x496b88], edx
-add dword [eax + ref_00496b8c], edx ; add dword [eax + 0x496b8c], edx
+add dword [eax + (_players+32)], edx ; add dword [eax + 0x496b88], edx
+add dword [eax + (_players+36)], edx ; add dword [eax + 0x496b8c], edx
push ecx
call fcn_00433b7e ; call 0x433b7e
add esp, 4
@@ -69816,7 +69817,7 @@ mov byte [ref_0048c3dd], 8 ; mov byte [0x48c3dd], 8
jmp near loc_0043518a ; jmp 0x43518a
loc_00435360:
-mov edi, dword [ebx + ref_00496b8c] ; mov edi, dword [ebx + 0x496b8c]
+mov edi, dword [ebx + (_players+36)] ; mov edi, dword [ebx + 0x496b8c]
push edi
call fcn_00453544 ; call 0x453544
mov edx, eax
@@ -69825,8 +69826,8 @@ mov ebx, eax
test eax, eax
je short loc_00435354 ; je 0x435354
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b84] ; mov ecx, dword [eax + 0x496b84]
-mov edi, dword [eax + ref_00496b88] ; mov edi, dword [eax + 0x496b88]
+mov ecx, dword [eax + (_players+28)] ; mov ecx, dword [eax + 0x496b84]
+mov edi, dword [eax + (_players+32)] ; mov edi, dword [eax + 0x496b88]
add ecx, edi
cmp edx, ecx
jle short loc_004353a3 ; jle 0x4353a3
@@ -69838,20 +69839,20 @@ jmp near loc_00435d8c ; jmp 0x435d8c
loc_004353a3:
mov ebp, edi
sub ebp, edx
-mov dword [eax + ref_00496b88], ebp ; mov dword [eax + 0x496b88], ebp
+mov dword [eax + (_players+32)], ebp ; mov dword [eax + 0x496b88], ebp
test ebp, ebp
jge short loc_004353bf ; jge 0x4353bf
-add dword [eax + ref_00496b84], ebp ; add dword [eax + 0x496b84], ebp
+add dword [eax + (_players+28)], ebp ; add dword [eax + 0x496b84], ebp
xor edi, edi
-mov dword [eax + ref_00496b88], edi ; mov dword [eax + 0x496b88], edi
+mov dword [eax + (_players+32)], edi ; mov dword [eax + 0x496b88], edi
loc_004353bf:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b8c] ; mov edx, dword [eax + 0x496b8c]
+mov edx, dword [eax + (_players+36)] ; mov edx, dword [eax + 0x496b8c]
sub edx, ebx
-mov dword [eax + ref_00496b8c], edx ; mov dword [eax + 0x496b8c], edx
+mov dword [eax + (_players+36)], edx ; mov dword [eax + 0x496b8c], edx
jne short loc_004353e1 ; jne 0x4353e1
-mov dword [eax + ref_00496b94], edx ; mov dword [eax + 0x496b94], edx
+mov dword [eax + (_players+44)], edx ; mov dword [eax + 0x496b94], edx
call fcn_00433f24 ; call 0x433f24
loc_004353e1:
@@ -70527,12 +70528,12 @@ jmp near loc_00435b57 ; jmp 0x435b57
loc_00435d48:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
jne near loc_0043518a ; jne 0x43518a
mov dword [ref_0048c3d5], 0x280 ; mov dword [0x48c3d5], 0x280
mov dword [ref_0048c3d9], 0xffffffd8 ; mov dword [0x48c3d9], 0xffffffd8
mov byte [ref_0048c3dd], 5 ; mov byte [0x48c3dd], 5
-mov eax, dword [eax + ref_00496b8c] ; mov eax, dword [eax + 0x496b8c]
+mov eax, dword [eax + (_players+36)] ; mov eax, dword [eax + 0x496b8c]
cmp eax, dword [ref_0048c3b0] ; cmp eax, dword [0x48c3b0]
jl short loc_00435d99 ; jl 0x435d99
mov edi, dword [ref_00475848] ; mov edi, dword [0x475848]
@@ -70553,7 +70554,7 @@ jmp near loc_00435216 ; jmp 0x435216
loc_00435da4:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b8c], 0 ; cmp dword [eax + 0x496b8c], 0
+cmp dword [eax + (_players+36)], 0 ; cmp dword [eax + 0x496b8c], 0
je near loc_0043518a ; je 0x43518a
mov byte [ref_0048c3dd], 9 ; mov byte [0x48c3dd], 9
mov dword [ref_0048c3d5], 0x280 ; mov dword [0x48c3d5], 0x280
@@ -70826,7 +70827,7 @@ jmp near loc_00434646 ; jmp 0x434646
loc_0043616f:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
lea eax, [esp + 0xc4]
push eax
@@ -71210,7 +71211,7 @@ push ebp
sub esp, 0x84
xor ebx, ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba3], 0 ; cmp byte [eax + 0x496ba3], 0
+cmp byte [eax + (_players+59)], 0 ; cmp byte [eax + 0x496ba3], 0
jne near loc_00436953 ; jne 0x436953
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
push ecx
@@ -71218,7 +71219,7 @@ call fcn_004239b9 ; call 0x4239b9
add esp, 4
mov dword [ref_0048c3b0], eax ; mov dword [0x48c3b0], eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_004367ab ; jne 0x4367ab
push ebx
push ebx
@@ -71295,9 +71296,9 @@ add esp, 4
jmp near loc_00436953 ; jmp 0x436953
loc_004367ab:
-cmp dword [eax + ref_00496b8c], 0 ; cmp dword [eax + 0x496b8c], 0
+cmp dword [eax + (_players+36)], 0 ; cmp dword [eax + 0x496b8c], 0
je near loc_00436893 ; je 0x436893
-mov esi, dword [eax + ref_00496b94] ; mov esi, dword [eax + 0x496b94]
+mov esi, dword [eax + (_players+44)] ; mov esi, dword [eax + 0x496b94]
push esi
mov edi, dword [ref_00497160] ; mov edi, dword [0x497160]
push edi
@@ -71306,12 +71307,12 @@ add esp, 8
cmp eax, 6
jg short loc_0043680e ; jg 0x43680e
imul ecx, dword [_current_player], 0x68 ; imul ecx, dword [0x49910c], 0x68
-mov eax, dword [ecx + ref_00496b88] ; mov eax, dword [ecx + 0x496b88]
-mov edx, dword [ecx + ref_00496b84] ; mov edx, dword [ecx + 0x496b84]
+mov eax, dword [ecx + (_players+32)] ; mov eax, dword [ecx + 0x496b88]
+mov edx, dword [ecx + (_players+28)] ; mov edx, dword [ecx + 0x496b84]
add eax, edx
mov dword [esp + 0x80], eax
fild dword [esp + 0x80]
-fild dword [ecx + ref_00496b8c] ; fild dword [ecx + 0x496b8c]
+fild dword [ecx + (_players+36)] ; fild dword [ecx + 0x496b8c]
fmul qword [ref_00464b24] ; fmul qword [0x464b24]
fcompp
fnstsw ax
@@ -71321,9 +71322,9 @@ mov ebx, 1
loc_0043680e:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b8c] ; mov edx, dword [eax + 0x496b8c]
+mov edx, dword [eax + (_players+36)] ; mov edx, dword [eax + 0x496b8c]
add edx, edx
-cmp edx, dword [eax + ref_00496b88] ; cmp edx, dword [eax + 0x496b88]
+cmp edx, dword [eax + (_players+32)] ; cmp edx, dword [eax + 0x496b88]
jl short loc_0043682d ; jl 0x43682d
test ebx, ebx
je near loc_00436953 ; je 0x436953
@@ -71331,15 +71332,15 @@ je near loc_00436953 ; je 0x436953
loc_0043682d:
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-mov ebp, dword [eax + ref_00496b8c] ; mov ebp, dword [eax + 0x496b8c]
+mov ebp, dword [eax + (_players+36)] ; mov ebp, dword [eax + 0x496b8c]
push ebp
push edi
call fcn_00433bd8 ; call 0x433bd8
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b8c] ; mov ecx, dword [eax + 0x496b8c]
+mov ecx, dword [eax + (_players+36)] ; mov ecx, dword [eax + 0x496b8c]
push ecx
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push ref_00464af5 ; push 0x464af5
lea eax, [esp + 0xc]
@@ -71353,7 +71354,7 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edi, edi
-mov dword [eax + ref_00496b8c], edi ; mov dword [eax + 0x496b8c], edi
+mov dword [eax + (_players+36)], edi ; mov dword [eax + 0x496b8c], edi
jmp near loc_00436953 ; jmp 0x436953
loc_00436893:
@@ -71365,16 +71366,16 @@ idiv ecx
test edx, edx
je short loc_004368c7 ; je 0x4368c7
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
-add edx, dword [eax + ref_00496b88] ; add edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
+add edx, dword [eax + (_players+32)] ; add edx, dword [eax + 0x496b88]
cmp edx, 0x7530
jge near loc_00436953 ; jge 0x436953
loc_004368c7:
imul ecx, dword [_current_player], 0x68 ; imul ecx, dword [0x49910c], 0x68
-cmp byte [ecx + ref_00496ba4], 0 ; cmp byte [ecx + 0x496ba4], 0
+cmp byte [ecx + (_players+60)], 0 ; cmp byte [ecx + 0x496ba4], 0
jne near loc_00436953 ; jne 0x436953
-mov bh, byte [ecx + ref_00496b80] ; mov bh, byte [ecx + 0x496b80]
+mov bh, byte [ecx + (_players+24)] ; mov bh, byte [ecx + 0x496b80]
test bh, bh
je short loc_00436953 ; je 0x436953
xor edx, edx
@@ -71384,18 +71385,18 @@ mov ebx, 0x64
mov eax, edx
sar edx, 0x1f
idiv ebx
-mov dword [ecx + ref_00496b8c], eax ; mov dword [ecx + 0x496b8c], eax
+mov dword [ecx + (_players+36)], eax ; mov dword [ecx + 0x496b8c], eax
test eax, eax
je short loc_00436953 ; je 0x436953
-add dword [ecx + ref_00496b88], eax ; add dword [ecx + 0x496b88], eax
+add dword [ecx + (_players+32)], eax ; add dword [ecx + 0x496b88], eax
mov eax, dword [_current_player] ; mov eax, dword [0x49910c]
push eax
call fcn_00433b7e ; call 0x433b7e
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ecx, dword [eax + ref_00496b8c] ; mov ecx, dword [eax + 0x496b8c]
+mov ecx, dword [eax + (_players+36)] ; mov ecx, dword [eax + 0x496b8c]
push ecx
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
push ref_00464b0c ; push 0x464b0c
lea eax, [esp + 0xc]
@@ -71422,7 +71423,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00436a43 ; jne 0x436a43
push 0
push 0
@@ -71504,7 +71505,7 @@ push ebx
push esi
push edi
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-mov ecx, dword [ebx + ref_00496b94] ; mov ecx, dword [ebx + 0x496b94]
+mov ecx, dword [ebx + (_players+44)] ; mov ecx, dword [ebx + 0x496b94]
push ecx
mov ebx, dword [ref_00497160] ; mov ebx, dword [0x497160]
push ebx
@@ -71527,15 +71528,15 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul ebx, esi, 0x68
-mov edi, dword [ebx + ref_00496b8c] ; mov edi, dword [ebx + 0x496b8c]
+mov edi, dword [ebx + (_players+36)] ; mov edi, dword [ebx + 0x496b8c]
push edi
push esi
call fcn_00433bd8 ; call 0x433bd8
add esp, 8
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
xor edx, edx
-mov dword [ebx + ref_00496b8c], edx ; mov dword [ebx + 0x496b8c], edx
-mov dword [ebx + ref_00496b94], edx ; mov dword [ebx + 0x496b94], edx
+mov dword [ebx + (_players+36)], edx ; mov dword [ebx + 0x496b8c], edx
+mov dword [ebx + (_players+44)], edx ; mov dword [ebx + 0x496b94], edx
pop edi
pop esi
pop ebx
@@ -71602,7 +71603,7 @@ je near loc_00436c62 ; je 0x436c62
cmp edi, dword [_current_player] ; cmp edi, dword [0x49910c]
je near loc_00436c62 ; je 0x436c62
imul ebx, edi, 0x68
-mov ebx, dword [ebx + ref_00496b90] ; mov ebx, dword [ebx + 0x496b90]
+mov ebx, dword [ebx + (_players+40)] ; mov ebx, dword [ebx + 0x496b90]
mov dword [esp + 0x94], ebx
test ebx, ebx
je near loc_00436c62 ; je 0x436c62
@@ -71615,9 +71616,9 @@ jge short loc_00436ba5 ; jge 0x436ba5
cmp ebx, edi
je short loc_00436ba2 ; je 0x436ba2
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je short loc_00436ba2 ; je 0x436ba2
-add ebp, dword [esi + ref_00496b88] ; add ebp, dword [esi + 0x496b88]
+add ebp, dword [esi + (_players+32)] ; add ebp, dword [esi + 0x496b88]
loc_00436ba2:
inc ebx
@@ -71637,7 +71638,7 @@ add esp, 4
mov esi, dword [esp + 0x94]
sub esi, ebp
imul ebx, edi, 0x68
-mov ebp, dword [ebx + ref_00496b68] ; mov ebp, dword [ebx + 0x496b68]
+mov ebp, dword [ebx + (_players+0)] ; mov ebp, dword [ebx + 0x496b68]
push ebp
lea ebp, [esp + 0x84]
push ebp
@@ -71660,13 +71661,13 @@ push esi
push edi
call fcn_00433bd8 ; call 0x433bd8
add esp, 8
-mov eax, dword [ebx + ref_00496b90] ; mov eax, dword [ebx + 0x496b90]
+mov eax, dword [ebx + (_players+40)] ; mov eax, dword [ebx + 0x496b90]
sub eax, esi
-mov dword [ebx + ref_00496b90], eax ; mov dword [ebx + 0x496b90], eax
+mov dword [ebx + (_players+40)], eax ; mov dword [ebx + 0x496b90], eax
test eax, eax
jge short loc_00436c4b ; jge 0x436c4b
xor ecx, ecx
-mov dword [ebx + ref_00496b90], ecx ; mov dword [ebx + 0x496b90], ecx
+mov dword [ebx + (_players+40)], ecx ; mov dword [ebx + 0x496b90], ecx
loc_00436c4b:
mov ebx, dword [esp + 0x98]
@@ -71692,9 +71693,9 @@ jge short loc_00436c62 ; jge 0x436c62
cmp ebx, edi
je near loc_00436d34 ; je 0x436d34
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je near loc_00436d34 ; je 0x436d34
-cmp dword [esi + ref_00496b90], 0 ; cmp dword [esi + 0x496b90], 0
+cmp dword [esi + (_players+40)], 0 ; cmp dword [esi + 0x496b90], 0
je near loc_00436d34 ; je 0x436d34
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
mov dword [esp + 0x98], ebp
@@ -71708,9 +71709,9 @@ push 0x5dc
push ref_00464b9e ; push 0x464b9e
call fcn_00440cac ; call 0x440cac
add esp, 8
-mov ecx, dword [esi + ref_00496b90] ; mov ecx, dword [esi + 0x496b90]
+mov ecx, dword [esi + (_players+40)] ; mov ecx, dword [esi + 0x496b90]
push ecx
-mov ebp, dword [esi + ref_00496b68] ; mov ebp, dword [esi + 0x496b68]
+mov ebp, dword [esi + (_players+0)] ; mov ebp, dword [esi + 0x496b68]
push ebp
push ref_00464baf ; push 0x464baf
lea ebp, [esp + 0xc]
@@ -71722,13 +71723,13 @@ lea ebp, [esp + 4]
push ebp
call fcn_00440cac ; call 0x440cac
add esp, 8
-mov eax, dword [esi + ref_00496b90] ; mov eax, dword [esi + 0x496b90]
+mov eax, dword [esi + (_players+40)] ; mov eax, dword [esi + 0x496b90]
push eax
push ebx
call fcn_00433bd8 ; call 0x433bd8
add esp, 8
xor edx, edx
-mov dword [esi + ref_00496b90], edx ; mov dword [esi + 0x496b90], edx
+mov dword [esi + (_players+40)], edx ; mov dword [esi + 0x496b90], edx
mov esi, dword [esp + 0x98]
mov dword [_current_player], esi ; mov dword [0x49910c], esi
push 1
@@ -71959,7 +71960,7 @@ push eax
call fcn_00456418 ; call 0x456418
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_00437041 ; je 0x437041
push 0x8d
push 0x9d
@@ -71981,7 +71982,7 @@ call fcn_004563f5 ; call 0x4563f5
add esp, 0x10
mov dword [ref_0048c3f0], 1 ; mov dword [0x48c3f0], 1
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b84] ; mov eax, dword [eax + 0x496b84]
+mov eax, dword [eax + (_players+28)] ; mov eax, dword [eax + 0x496b84]
jmp short loc_00437072 ; jmp 0x437072
loc_00437041:
@@ -71997,7 +71998,7 @@ add esp, 0x10
xor ebx, ebx
mov dword [ref_0048c3f0], ebx ; mov dword [0x48c3f0], ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b88] ; mov eax, dword [eax + 0x496b88]
+mov eax, dword [eax + (_players+32)] ; mov eax, dword [eax + 0x496b88]
loc_00437072:
mov dword [ref_0048c3ec], eax ; mov dword [0x48c3ec], eax
@@ -72010,7 +72011,7 @@ push 0
call fcn_00436edb ; call 0x436edb
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_004370b4 ; je 0x4370b4
push 0
push 0
@@ -72060,7 +72061,7 @@ push esi
push eax
call dword [edx + 0x1c] ; ucall
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba4] ; mov al, byte [eax + 0x496ba4]
+mov al, byte [eax + (_players+60)] ; mov al, byte [eax + 0x496ba4]
and al, 0x7f
xor ebx, ebx
mov bl, al
@@ -72130,7 +72131,7 @@ loc_004371da:
test ebx, ebx
jne short loc_004371f9 ; jne 0x4371f9
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496ba4], 0 ; cmp byte [eax + 0x496ba4], 0
+cmp byte [eax + (_players+60)], 0 ; cmp byte [eax + 0x496ba4], 0
je short loc_004371f9 ; je 0x4371f9
mov ebx, dword [ref_0048c3f0] ; mov ebx, dword [0x48c3f0]
jmp near loc_0043738f ; jmp 0x43738f
@@ -72262,7 +72263,7 @@ add esp, 8
xor ecx, ecx
mov dword [ref_0048c3f0], ecx ; mov dword [0x48c3f0], ecx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b88] ; mov eax, dword [eax + 0x496b88]
+mov eax, dword [eax + (_players+32)] ; mov eax, dword [eax + 0x496b88]
loc_004373d7:
mov dword [ref_0048c3ec], eax ; mov dword [0x48c3ec], eax
@@ -72280,7 +72281,7 @@ call fcn_004542ce ; call 0x4542ce
add esp, 8
mov dword [ref_0048c3f0], 1 ; mov dword [0x48c3f0], 1
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov eax, dword [eax + ref_00496b84] ; mov eax, dword [eax + 0x496b84]
+mov eax, dword [eax + (_players+28)] ; mov eax, dword [eax + 0x496b84]
jmp short loc_004373d7 ; jmp 0x4373d7
loc_00437413:
@@ -72633,9 +72634,9 @@ mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
cmp dword [ref_0048c3f0], 0 ; cmp dword [0x48c3f0], 0
jne short loc_00437856 ; jne 0x437856
-sub dword [eax + ref_00496b88], ebx ; sub dword [eax + 0x496b88], ebx
-add dword [eax + ref_00496b84], ebx ; add dword [eax + 0x496b84], ebx
-mov eax, dword [eax + ref_00496b88] ; mov eax, dword [eax + 0x496b88]
+sub dword [eax + (_players+32)], ebx ; sub dword [eax + 0x496b88], ebx
+add dword [eax + (_players+28)], ebx ; add dword [eax + 0x496b84], ebx
+mov eax, dword [eax + (_players+32)] ; mov eax, dword [eax + 0x496b88]
mov dword [ref_0048c3ec], eax ; mov dword [0x48c3ec], eax
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
push ebx
@@ -72646,10 +72647,10 @@ call fcn_00436b0a ; call 0x436b0a
jmp short loc_00437876 ; jmp 0x437876
loc_00437856:
-add dword [eax + ref_00496b88], ebx ; add dword [eax + 0x496b88], ebx
-mov edi, dword [eax + ref_00496b84] ; mov edi, dword [eax + 0x496b84]
+add dword [eax + (_players+32)], ebx ; add dword [eax + 0x496b88], ebx
+mov edi, dword [eax + (_players+28)] ; mov edi, dword [eax + 0x496b84]
sub edi, ebx
-mov dword [eax + ref_00496b84], edi ; mov dword [eax + 0x496b84], edi
+mov dword [eax + (_players+28)], edi ; mov dword [eax + 0x496b84], edi
mov dword [ref_0048c3ec], edi ; mov dword [0x48c3ec], edi
push edx
call fcn_0041d433 ; call 0x41d433
@@ -72772,7 +72773,7 @@ push esi
sub esp, 0x98
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov ah, byte [edx + ref_00496ba3] ; mov ah, byte [edx + 0x496ba3]
+mov ah, byte [edx + (_players+59)] ; mov ah, byte [edx + 0x496ba3]
test ah, ah
je short loc_00437a18 ; je 0x437a18
mov al, ah
@@ -72793,7 +72794,7 @@ add esp, 8
jmp near loc_00437c1c ; jmp 0x437c1c
loc_00437a18:
-mov cl, byte [edx + ref_00496b7d] ; mov cl, byte [edx + 0x496b7d]
+mov cl, byte [edx + (_players+21)] ; mov cl, byte [edx + 0x496b7d]
cmp cl, 1
jne near loc_00437acd ; jne 0x437acd
mov byte [ref_0046cb00], cl ; mov byte [0x46cb00], cl
@@ -72851,14 +72852,14 @@ jmp near loc_00437c1c ; jmp 0x437c1c
loc_00437acd:
mov ecx, dword [ref_00497160] ; mov ecx, dword [0x497160]
and ecx, 0xff
-mov ebx, dword [edx + ref_00496b84] ; mov ebx, dword [edx + 0x496b84]
-add ebx, dword [edx + ref_00496b88] ; add ebx, dword [edx + 0x496b88]
-fild dword [edx + ref_00496b84] ; fild dword [edx + 0x496b84]
+mov ebx, dword [edx + (_players+28)] ; mov ebx, dword [edx + 0x496b84]
+add ebx, dword [edx + (_players+32)] ; add ebx, dword [edx + 0x496b88]
+fild dword [edx + (_players+28)] ; fild dword [edx + 0x496b84]
mov dword [esp + 0x90], ebx
fild dword [esp + 0x90]
fdivp st1 ; fdivp st(1)
fstp dword [esp + 0x8c]
-mov al, byte [edx + ref_00496b81] ; mov al, byte [edx + 0x496b81]
+mov al, byte [edx + (_players+25)] ; mov al, byte [edx + 0x496b81]
mov dword [esp + 0x94], eax
fild word [esp + 0x94]
fdiv dword [ref_00464c08] ; fdiv dword [0x464c08]
@@ -72904,7 +72905,7 @@ fnstsw ax
sahf
jbe short loc_00437bca ; jbe 0x437bca
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp dword [eax + ref_00496b84], 0 ; cmp dword [eax + 0x496b84], 0
+cmp dword [eax + (_players+28)], 0 ; cmp dword [eax + 0x496b84], 0
jne short loc_00437c1c ; jne 0x437c1c
loc_00437bca:
@@ -72916,9 +72917,9 @@ fistp dword [esp + 0x90]
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul edx, esi, 0x68
mov eax, dword [esp + 0x90]
-mov dword [edx + ref_00496b84], eax ; mov dword [edx + 0x496b84], eax
+mov dword [edx + (_players+28)], eax ; mov dword [edx + 0x496b84], eax
sub ebx, eax
-mov dword [edx + ref_00496b88], ebx ; mov dword [edx + 0x496b88], ebx
+mov dword [edx + (_players+32)], ebx ; mov dword [edx + 0x496b88], ebx
push esi
call fcn_0041d433 ; call 0x41d433
add esp, 4
@@ -72972,7 +72973,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73039,16 +73040,16 @@ jge short loc_00437d99 ; jge 0x437d99
xor edx, edx
mov dl, byte [eax + ref_0048c418] ; mov dl, byte [eax + 0x48c418]
imul edx, edx, 0x68
-mov ebx, dword [edx + ref_00496bc4] ; mov ebx, dword [edx + 0x496bc4]
-mov esi, dword [edx + ref_00496bc8] ; mov esi, dword [edx + 0x496bc8]
+mov ebx, dword [edx + (_players+92)] ; mov ebx, dword [edx + 0x496bc4]
+mov esi, dword [edx + (_players+96)] ; mov esi, dword [edx + 0x496bc8]
sub ebx, esi
mov esi, ebx
xor ebx, ebx
-mov bl, byte [edx + ref_00496baa] ; mov bl, byte [edx + 0x496baa]
+mov bl, byte [edx + (_players+66)] ; mov bl, byte [edx + 0x496baa]
imul ebx, dword [ref_004990e8] ; imul ebx, dword [0x4990e8]
imul ebx, ebx, 0x9c4
add esi, ebx
-movsx ebx, word [edx + ref_00496bac] ; movsx ebx, word [edx + 0x496bac]
+movsx ebx, word [edx + (_players+68)] ; movsx ebx, word [edx + 0x496bac]
mov edx, ebx
shl edx, 2
add edx, ebx
@@ -73405,7 +73406,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73445,12 +73446,12 @@ add esp, 0x10
xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
-cmp dword [eax + ref_00496b8c], 0 ; cmp dword [eax + 0x496b8c], 0
+cmp dword [eax + (_players+36)], 0 ; cmp dword [eax + 0x496b8c], 0
jne short loc_00438218 ; jne 0x438218
-fild dword [eax + ref_00496b88] ; fild dword [eax + 0x496b88]
+fild dword [eax + (_players+32)] ; fild dword [eax + 0x496b88]
fmul qword [ref_00464e88] ; fmul qword [0x464e88]
call fcn_00457dbc ; call 0x457dbc
-fistp dword [eax + ref_00496b88] ; fistp dword [eax + 0x496b88]
+fistp dword [eax + (_players+32)] ; fistp dword [eax + 0x496b88]
loc_00438218:
inc ebx
@@ -73657,7 +73658,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73703,7 +73704,7 @@ mov al, byte [ref_0048c42f] ; mov al, byte [0x48c42f]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov edx, dword [eax*4 + ref_00475988] ; mov edx, dword [eax*4 + 0x475988]
push edx
@@ -73723,7 +73724,7 @@ mov al, byte [ref_0048c42f] ; mov al, byte [0x48c42f]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, eax
add eax, 0x1a1
@@ -73828,7 +73829,7 @@ mov al, byte [ref_0048c42f] ; mov al, byte [0x48c42f]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov ecx, dword [eax + ref_00496bc4] ; mov ecx, dword [eax + 0x496bc4]
+mov ecx, dword [eax + (_players+92)] ; mov ecx, dword [eax + 0x496bc4]
push ecx
lea eax, [esp + 5]
push eax
@@ -73855,7 +73856,7 @@ mov al, byte [ref_0048c42f] ; mov al, byte [0x48c42f]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov ebx, dword [eax + ref_00496bc8] ; mov ebx, dword [eax + 0x496bc8]
+mov ebx, dword [eax + (_players+96)] ; mov ebx, dword [eax + 0x496bc8]
push ebx
lea eax, [esp + 5]
push eax
@@ -73882,7 +73883,7 @@ mov al, byte [ref_0048c42f] ; mov al, byte [0x48c42f]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496baa] ; mov al, byte [eax + 0x496baa]
+mov al, byte [eax + (_players+66)] ; mov al, byte [eax + 0x496baa]
and eax, 0xff
push eax
mov eax, ref_00464e1c ; mov eax, 0x464e1c
@@ -73913,7 +73914,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73964,7 +73965,7 @@ mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73976,7 +73977,7 @@ xor eax, eax
mov al, byte [edx + ref_0048c418] ; mov al, byte [edx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -73990,7 +73991,7 @@ mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -74245,7 +74246,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -74292,7 +74293,7 @@ mov al, byte [ref_0048c430] ; mov al, byte [0x48c430]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov edx, dword [eax*4 + ref_004759b8] ; mov edx, dword [eax*4 + 0x4759b8]
push edx
@@ -74311,7 +74312,7 @@ mov al, byte [ref_0048c430] ; mov al, byte [0x48c430]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, eax
add eax, 0x1a0
@@ -74392,7 +74393,7 @@ mov al, byte [ref_0048c430] ; mov al, byte [0x48c430]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b84] ; mov ebp, dword [eax + 0x496b84]
+mov ebp, dword [eax + (_players+28)] ; mov ebp, dword [eax + 0x496b84]
push ebp
lea eax, [esp + 5]
push eax
@@ -74418,7 +74419,7 @@ mov al, byte [ref_0048c430] ; mov al, byte [0x48c430]
mov al, byte [eax + ref_0048c418] ; mov al, byte [eax + 0x48c418]
and eax, 0xff
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b88] ; mov edx, dword [eax + 0x496b88]
+mov edx, dword [eax + (_players+32)] ; mov edx, dword [eax + 0x496b88]
push edx
lea eax, [esp + 5]
push eax
@@ -74474,7 +74475,7 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -74516,7 +74517,7 @@ xor eax, eax
mov al, byte [edx + ref_0048c418] ; mov al, byte [edx + 0x48c418]
imul eax, eax, 0x68
xor ecx, ecx
-mov cl, byte [eax + ref_00496b7b] ; mov cl, byte [eax + 0x496b7b]
+mov cl, byte [eax + (_players+19)] ; mov cl, byte [eax + 0x496b7b]
mov eax, ecx
shl eax, 2
sub eax, ecx
@@ -75414,7 +75415,7 @@ loc_00439caa:
cmp eax, esi
jge short loc_00439cd5 ; jge 0x439cd5
imul ebx, eax, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je short loc_00439cd2 ; je 0x439cd2
mov dl, byte [ref_0048c420] ; mov dl, byte [0x48c420]
xor ebx, ebx
@@ -75443,7 +75444,7 @@ movsx esi, word [edi + esi*2 + ref_00475918] ; movsx esi, word [edi + esi*2 + 0
push esi
push 0x258
imul esi, eax, 0x68
-movzx edi, byte [esi + ref_00496b7b] ; movzx edi, byte [esi + 0x496b7b]
+movzx edi, byte [esi + (_players+19)] ; movzx edi, byte [esi + 0x496b7b]
mov eax, edi
shl eax, 2
sub eax, edi
@@ -75477,7 +75478,7 @@ add eax, edi
push eax
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
-mov eax, dword [esi + ref_00496b88] ; mov eax, dword [esi + 0x496b88]
+mov eax, dword [esi + (_players+32)] ; mov eax, dword [esi + 0x496b88]
push eax
lea eax, [esp + 5]
push eax
@@ -75504,7 +75505,7 @@ add eax, edi
push eax
call fcn_0044fabc ; call 0x44fabc
add esp, 0x14
-cmp dword [esi + ref_00496b8c], 0 ; cmp dword [esi + 0x496b8c], 0
+cmp dword [esi + (_players+36)], 0 ; cmp dword [esi + 0x496b8c], 0
je short loc_00439e10 ; je 0x439e10
push 0
push 2
@@ -75532,7 +75533,7 @@ call fcn_0044f9d8 ; call 0x44f9d8
jmp short loc_00439e5b ; jmp 0x439e5b
loc_00439e10:
-fild dword [esi + ref_00496b88] ; fild dword [esi + 0x496b88]
+fild dword [esi + (_players+32)] ; fild dword [esi + 0x496b88]
fmul qword [ref_00464ea0] ; fmul qword [0x464ea0]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x80]
@@ -75598,10 +75599,10 @@ xor eax, eax
mov al, byte [ebx + ref_0048c418] ; mov al, byte [ebx + 0x48c418]
imul eax, eax, 0x68
xor ch, ch
-mov byte [eax + ref_00496baa], ch ; mov byte [eax + 0x496baa], ch
+mov byte [eax + (_players+66)], ch ; mov byte [eax + 0x496baa], ch
xor esi, esi
-mov dword [eax + ref_00496bc4], esi ; mov dword [eax + 0x496bc4], esi
-mov dword [eax + ref_00496bc8], esi ; mov dword [eax + 0x496bc8], esi
+mov dword [eax + (_players+92)], esi ; mov dword [eax + 0x496bc4], esi
+mov dword [eax + (_players+96)], esi ; mov dword [eax + 0x496bc8], esi
inc ebx
jmp short loc_00439ec6 ; jmp 0x439ec6
@@ -75788,7 +75789,7 @@ loc_0043a131:
mov ebx, dword [esp + 0x30]
dec ebx
imul ebx, ebx, 0x68
-mov eax, dword [ebx + ref_00496b84] ; mov eax, dword [ebx + 0x496b84]
+mov eax, dword [ebx + (_players+28)] ; mov eax, dword [ebx + 0x496b84]
cmp eax, dword [esp + 0x10]
jge short loc_0043a149 ; jge 0x43a149
mov dword [esp + 0x10], eax
@@ -75823,7 +75824,7 @@ mov ax, word [eax*4 + ref_0048c434] ; mov ax, word [eax*4 + 0x48c434]
and eax, 0xffff
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
lea edx, [eax + 0x4e]
mov ecx, dword [ref_0048c49c] ; mov ecx, dword [0x48c49c]
@@ -76081,7 +76082,7 @@ dec eax
imul edx, eax, 0x68
mov eax, dword [ref_0048c488] ; mov eax, dword [0x48c488]
add eax, dword [ebx*4 + ref_00475ba2] ; add eax, dword [ebx*4 + 0x475ba2]
-cmp eax, dword [edx + ref_00496b84] ; cmp eax, dword [edx + 0x496b84]
+cmp eax, dword [edx + (_players+28)] ; cmp eax, dword [edx + 0x496b84]
jg near loc_0043a3d7 ; jg 0x43a3d7
mov dword [ref_0048c488], eax ; mov dword [0x48c488], eax
mov eax, dword [ref_0048a0e0] ; mov eax, dword [0x48a0e0]
@@ -76918,7 +76919,7 @@ mov ax, word [eax*4 + ref_0048c434] ; mov ax, word [eax*4 + 0x48c434]
and eax, 0xffff
dec eax
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0043b0a0 ; jne 0x43b0a0
xor ebx, ebx
@@ -76952,7 +76953,7 @@ and eax, 0xffff
dec eax
imul eax, eax, 0x68
mov edx, dword [ref_0048c488] ; mov edx, dword [0x48c488]
-cmp edx, dword [eax + ref_00496b84] ; cmp edx, dword [eax + 0x496b84]
+cmp edx, dword [eax + (_players+28)] ; cmp edx, dword [eax + 0x496b84]
jle short loc_0043b08a ; jle 0x43b08a
mov byte [ref_0048c4ac], 4 ; mov byte [0x48c4ac], 4
push 0
@@ -77000,7 +77001,7 @@ mov dx, word [eax + ref_0048c434] ; mov dx, word [eax + 0x48c434]
dec edx
imul edx, edx, 0x68
mov ecx, dword [ref_0048c488] ; mov ecx, dword [0x48c488]
-cmp ecx, dword [edx + ref_00496b84] ; cmp ecx, dword [edx + 0x496b84]
+cmp ecx, dword [edx + (_players+28)] ; cmp ecx, dword [edx + 0x496b84]
jle short loc_0043b124 ; jle 0x43b124
mov ebx, 6
jmp near loc_0043b219 ; jmp 0x43b219
@@ -77058,7 +77059,7 @@ mov ax, word [eax*4 + ref_0048c434] ; mov ax, word [eax*4 + 0x48c434]
and eax, 0xffff
dec eax
imul eax, eax, 0x68
-mov edi, dword [eax + ref_00496b84] ; mov edi, dword [eax + 0x496b84]
+mov edi, dword [eax + (_players+28)] ; mov edi, dword [eax + 0x496b84]
add edi, 0x1f4
cmp esi, edi
jle short loc_0043b219 ; jle 0x43b219
@@ -77376,7 +77377,7 @@ mov ax, word [eax*4 + ref_0048c434] ; mov ax, word [eax*4 + 0x48c434]
and eax, 0xffff
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov edx, dword [eax*4 + ref_00475b54] ; mov edx, dword [eax*4 + 0x475b54]
push edx
@@ -78036,7 +78037,7 @@ xor eax, eax
mov al, ch
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, 0x5b
jmp near loc_0043bf29 ; jmp 0x43bf29
@@ -78132,7 +78133,7 @@ xor eax, eax
mov al, dh
dec eax
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
add eax, 0x68
@@ -78231,9 +78232,9 @@ loc_0043c110:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_0043c2f5 ; jge 0x43c2f5
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0043c2ef ; je 0x43c2ef
-mov eax, dword [eax + ref_00496b84] ; mov eax, dword [eax + 0x496b84]
+mov eax, dword [eax + (_players+28)] ; mov eax, dword [eax + 0x496b84]
cmp eax, dword [ref_0048c488] ; cmp eax, dword [0x48c488]
jg short loc_0043c152 ; jg 0x43c152
mov esi, dword [esp + 0x8c]
@@ -78244,7 +78245,7 @@ mov word [eax*4 + ref_0048c436], 8 ; mov word [eax*4 + 0x48c436], 8
loc_0043c152:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9a], 0 ; cmp byte [eax + 0x496b9a], 0
+cmp byte [eax + (_players+50)], 0 ; cmp byte [eax + 0x496b9a], 0
je short loc_0043c176 ; je 0x43c176
mov edx, dword [esp + 0x8c]
mov eax, edx
@@ -78254,7 +78255,7 @@ mov word [eax*4 + ref_0048c436], 1 ; mov word [eax*4 + 0x48c436], 1
loc_0043c176:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9b], 0 ; cmp byte [eax + 0x496b9b], 0
+cmp byte [eax + (_players+51)], 0 ; cmp byte [eax + 0x496b9b], 0
je short loc_0043c19a ; je 0x43c19a
mov edx, dword [esp + 0x8c]
mov eax, edx
@@ -78264,7 +78265,7 @@ mov word [eax*4 + ref_0048c436], 2 ; mov word [eax*4 + 0x48c436], 2
loc_0043c19a:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9c], 0 ; cmp byte [eax + 0x496b9c], 0
+cmp byte [eax + (_players+52)], 0 ; cmp byte [eax + 0x496b9c], 0
je short loc_0043c1be ; je 0x43c1be
mov esi, dword [esp + 0x8c]
mov eax, esi
@@ -78274,7 +78275,7 @@ mov word [eax*4 + ref_0048c436], 3 ; mov word [eax*4 + 0x48c436], 3
loc_0043c1be:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9d], 0 ; cmp byte [eax + 0x496b9d], 0
+cmp byte [eax + (_players+53)], 0 ; cmp byte [eax + 0x496b9d], 0
je short loc_0043c1e2 ; je 0x43c1e2
mov edx, dword [esp + 0x8c]
mov eax, edx
@@ -78284,7 +78285,7 @@ mov word [eax*4 + ref_0048c436], 4 ; mov word [eax*4 + 0x48c436], 4
loc_0043c1e2:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
je short loc_0043c206 ; je 0x43c206
mov edx, dword [esp + 0x8c]
mov eax, edx
@@ -78294,7 +78295,7 @@ mov word [eax*4 + ref_0048c436], 5 ; mov word [eax*4 + 0x48c436], 5
loc_0043c206:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_0043c22a ; je 0x43c22a
mov edx, dword [esp + 0x8c]
mov eax, edx
@@ -78323,7 +78324,7 @@ push 0
push 0
imul edi, ebx, 0x68
xor edx, edx
-mov dl, byte [edi + ref_00496b7b] ; mov dl, byte [edi + 0x496b7b]
+mov dl, byte [edi + (_players+19)] ; mov dl, byte [edi + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -78337,7 +78338,7 @@ mov dword [esi*4 + ref_0048c43c], eax ; mov dword [esi*4 + 0x48c43c], eax
push 0
push 0
xor edx, edx
-mov dl, byte [edi + ref_00496b7b] ; mov dl, byte [edi + 0x496b7b]
+mov dl, byte [edi + (_players+19)] ; mov dl, byte [edi + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -78351,7 +78352,7 @@ mov dword [esi*4 + ref_0048c440], eax ; mov dword [esi*4 + 0x48c440], eax
push 0
push 0
xor edx, edx
-mov dl, byte [edi + ref_00496b7b] ; mov dl, byte [edi + 0x496b7b]
+mov dl, byte [edi + (_players+19)] ; mov dl, byte [edi + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -78469,7 +78470,7 @@ mov ax, word [eax + ref_0048c434] ; mov ax, word [eax + 0x48c434]
and eax, 0xffff
dec eax
imul eax, eax, 0x68
-mov ecx, dword [eax + ref_00496b84] ; mov ecx, dword [eax + 0x496b84]
+mov ecx, dword [eax + (_players+28)] ; mov ecx, dword [eax + 0x496b84]
push ecx
push ref_00465050 ; push 0x465050
lea eax, [esp + 8]
@@ -78537,7 +78538,7 @@ mov ax, word [eax + ref_0048c434] ; mov ax, word [eax + 0x48c434]
and eax, 0xffff
sub eax, ebp
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
lea edx, [eax + 0x4e]
mov eax, edx
@@ -78563,7 +78564,7 @@ xor eax, eax
mov ax, word [esi + ref_0048c434] ; mov ax, word [esi + 0x48c434]
dec eax
imul eax, eax, 0x68
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
push edx
push ref_00465050 ; push 0x465050
lea eax, [esp + 8]
@@ -78611,7 +78612,7 @@ xor edx, edx
mov dx, ax
lea eax, [edx - 1]
imul eax, eax, 0x68
-test byte [eax + ref_00496b7d], 6 ; test byte [eax + 0x496b7d], 6
+test byte [eax + (_players+21)], 6 ; test byte [eax + 0x496b7d], 6
je short loc_0043c624 ; je 0x43c624
cmp word [esi + ref_0048c436], 0 ; cmp word [esi + 0x48c436], 0
jne short loc_0043c624 ; jne 0x43c624
@@ -78929,7 +78930,7 @@ push esi
mov edi, dword [eax + ref_00475c04] ; mov edi, dword [eax + 0x475c04]
push edi
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
lea edx, [eax + 5]
mov eax, edx
@@ -78978,7 +78979,7 @@ push 0xa
lea eax, [esp + 4]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
push eax
call fcn_00457d61 ; call 0x457d61
@@ -79230,7 +79231,7 @@ push 2
push edx
push eax
imul eax, ebx, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
jmp short loc_0043cdbb ; jmp 0x43cdbb
@@ -79355,7 +79356,7 @@ jmp near loc_0043cfdb ; jmp 0x43cfdb
loc_0043cf21:
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b9c] ; mov al, byte [eax + 0x496b9c]
+mov al, byte [eax + (_players+52)] ; mov al, byte [eax + 0x496b9c]
and al, 0x7f
and eax, 0xff
jne short loc_0043cf38 ; jne 0x43cf38
@@ -79377,14 +79378,14 @@ push 0x205
push edi
call dword [cs:__imp__PostMessageA@16] ; ucall: call dword cs:[0x462310]
imul eax, ebx, 0x68
-mov byte [eax + ref_00496b9c], 0x80 ; mov byte [eax + 0x496b9c], 0x80
+mov byte [eax + (_players+52)], 0x80 ; mov byte [eax + 0x496b9c], 0x80
xor dh, dh
mov byte [ebx + ref_00496b30], dh ; mov byte [ebx + 0x496b30], dh
loc_0043cf78:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
mov dx, word [ebx*4 + ref_00475c44] ; mov dx, word [ebx*4 + 0x475c44]
-sub word [eax + ref_00496b98], dx ; sub word [eax + 0x496b98], dx
+sub word [eax + (_players+48)], dx ; sub word [eax + 0x496b98], dx
mov byte [ref_0048c4c9], 1 ; mov byte [0x48c4c9], 1
jmp short loc_0043cfd1 ; jmp 0x43cfd1
@@ -79475,7 +79476,7 @@ mov dword [ref_0048c4c4], 0xffffffff ; mov dword [0x48c4c4], 0xffffffff
loc_0043d0bc:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
mov esi, ebx
shl esi, 2
@@ -79674,7 +79675,7 @@ loc_0043d321:
cmp ebx, 8
je near loc_0043d588 ; je 0x43d588
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0043d3d8 ; jne 0x43d3d8
push 0
push 0
@@ -79727,7 +79728,7 @@ test al, 1
je near loc_0043d588 ; je 0x43d588
xor esi, esi
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov dl, byte [edx + ref_00496b7f] ; mov dl, byte [edx + 0x496b7f]
+mov dl, byte [edx + (_players+23)] ; mov dl, byte [edx + 0x496b7f]
cmp dl, 1
jb short loc_0043d409 ; jb 0x43d409
jbe short loc_0043d432 ; jbe 0x43d432
@@ -79821,7 +79822,7 @@ mov esi, dword [ebx*4 + ref_00475c44] ; mov esi, dword [ebx*4 + 0x475c44]
cmp ebx, 4
jge short loc_0043d4e4 ; jge 0x43d4e4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
cmp eax, esi
jg short loc_0043d503 ; jg 0x43d503
@@ -79830,14 +79831,14 @@ loc_0043d4e4:
cmp ebx, 4
jl near loc_0043d588 ; jl 0x43d588
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp word [eax + ref_00496b98], 0x2bc ; cmp word [eax + 0x496b98], 0x2bc
+cmp word [eax + (_players+48)], 0x2bc ; cmp word [eax + 0x496b98], 0x2bc
jb near loc_0043d588 ; jb 0x43d588
loc_0043d503:
cmp ebx, 4
jge short loc_0043d514 ; jge 0x43d514
imul edx, ebx, 0x68
-mov ebp, dword [edx + ref_00496b68] ; mov ebp, dword [edx + 0x496b68]
+mov ebp, dword [edx + (_players+0)] ; mov ebp, dword [edx + 0x496b68]
push ebp
jmp short loc_0043d51c ; jmp 0x43d51c
@@ -79863,11 +79864,11 @@ push eax
call fcn_00440cac ; call 0x440cac
add esp, 8
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-sub word [edx + ref_00496b98], si ; sub word [edx + 0x496b98], si
+sub word [edx + (_players+48)], si ; sub word [edx + 0x496b98], si
cmp ebx, 4
jge short loc_0043d57f ; jge 0x43d57f
imul edx, ebx, 0x68
-mov byte [edx + ref_00496b9c], 0x80 ; mov byte [edx + 0x496b9c], 0x80
+mov byte [edx + (_players+52)], 0x80 ; mov byte [edx + 0x496b9c], 0x80
xor dl, dl
mov byte [ebx + ref_00496b30], dl ; mov byte [ebx + 0x496b30], dl
jmp short loc_0043d588 ; jmp 0x43d588
@@ -79903,14 +79904,14 @@ push 0
mov eax, edx
imul ebx, edx, 0x68
xor eax, edx
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-mov dh, byte [ebx + ref_00496b9c] ; mov dh, byte [ebx + 0x496b9c]
+mov dh, byte [ebx + (_players+52)] ; mov dh, byte [ebx + 0x496b9c]
test dh, dh
jne near loc_0043d6bd ; jne 0x43d6bd
mov edx, dword [esp + 0x14]
@@ -79923,26 +79924,26 @@ mov esi, dword [esp + 0x18]
push esi
call fcn_0044f2c2 ; call 0x44f2c2
add esp, 8
-and byte [ebx + ref_00496b7d], 0xf ; and byte [ebx + 0x496b7d], 0xf
+and byte [ebx + (_players+21)], 0xf ; and byte [ebx + 0x496b7d], 0xf
xor eax, eax
-mov ax, word [ebx + ref_00496b74] ; mov ax, word [ebx + 0x496b74]
+mov ax, word [ebx + (_players+12)] ; mov ax, word [ebx + 0x496b74]
mov esi, eax
shl esi, 2
add esi, eax
mov eax, dword [ref_00498e80] ; mov eax, dword [0x498e80]
and dword [eax + esi*8 + 0x24], edi
mov ax, word [ref_0048bae0] ; mov ax, word [0x48bae0]
-mov word [ebx + ref_00496b74], ax ; mov word [ebx + 0x496b74], ax
+mov word [ebx + (_players+12)], ax ; mov word [ebx + 0x496b74], ax
xor edx, edx
-mov word [ebx + ref_00496b76], dx ; mov word [ebx + 0x496b76], dx
-mov byte [ebx + ref_00496b83], 0xf ; mov byte [ebx + 0x496b83], 0xf
+mov word [ebx + (_players+14)], dx ; mov word [ebx + 0x496b76], dx
+mov byte [ebx + (_players+27)], 0xf ; mov byte [ebx + 0x496b83], 0xf
mov eax, dword [ref_00498e78] ; mov eax, dword [0x498e78]
mov si, word [eax + 0x38]
-mov word [ebx + ref_00496b70], si ; mov word [ebx + 0x496b70], si
+mov word [ebx + (_players+8)], si ; mov word [ebx + 0x496b70], si
mov ax, word [eax + 0x3a]
-mov word [ebx + ref_00496b72], ax ; mov word [ebx + 0x496b72], ax
+mov word [ebx + (_players+10)], ax ; mov word [ebx + 0x496b72], ax
mov al, byte [esp + 0x18]
-mov byte [ebx + ref_00496b9c], al ; mov byte [ebx + 0x496b9c], al
+mov byte [ebx + (_players+52)], al ; mov byte [ebx + 0x496b9c], al
mov eax, dword [esp + 0x14]
push eax
call fcn_0040fc00 ; call 0x40fc00
@@ -79975,24 +79976,24 @@ loc_0043d6bd:
mov al, byte [esp + 0x18]
mov cl, dh
add cl, al
-mov byte [ebx + ref_00496b9c], cl ; mov byte [ebx + 0x496b9c], cl
+mov byte [ebx + (_players+52)], cl ; mov byte [ebx + 0x496b9c], cl
mov ch, cl
and ch, 0x7f
-mov byte [ebx + ref_00496b9c], ch ; mov byte [ebx + 0x496b9c], ch
+mov byte [ebx + (_players+52)], ch ; mov byte [ebx + 0x496b9c], ch
loc_0043d6d6:
push 0
imul esi, dword [esp + 0x18], 0x68
xor eax, eax
-mov ax, word [esi + ref_00496b72] ; mov ax, word [esi + 0x496b72]
+mov ax, word [esi + (_players+10)] ; mov ax, word [esi + 0x496b72]
push eax
xor eax, eax
-mov ax, word [esi + ref_00496b70] ; mov ax, word [esi + 0x496b70]
+mov ax, word [esi + (_players+8)] ; mov ax, word [esi + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
xor eax, eax
-mov al, byte [esi + ref_00496b7b] ; mov al, byte [esi + 0x496b7b]
+mov al, byte [esi + (_players+19)] ; mov al, byte [esi + 0x496b7b]
mov ebx, eax
shl ebx, 2
sub ebx, eax
@@ -80022,7 +80023,7 @@ push ebp
call fcn_0044ba63 ; call 0x44ba63
add esp, 0xc
mov al, byte [esp + 0x18]
-add byte [esi + ref_00496baa], al ; add byte [esi + 0x496baa], al
+add byte [esi + (_players+66)], al ; add byte [esi + 0x496baa], al
pop ebp
pop edi
pop esi
@@ -80174,7 +80175,7 @@ push edx
mov ecx, dword [eax + ref_00475c64] ; mov ecx, dword [eax + 0x475c64]
push ecx
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
lea edx, [eax + 0xe]
mov eax, edx
@@ -80234,7 +80235,7 @@ push 0xa
lea eax, [esp + 4]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
push eax
call fcn_00457d61 ; call 0x457d61
@@ -80602,7 +80603,7 @@ loc_0043de56:
xor eax, eax
mov al, bl
imul eax, eax, 0x68
-mov al, byte [eax + ref_00496b9d] ; mov al, byte [eax + 0x496b9d]
+mov al, byte [eax + (_players+53)] ; mov al, byte [eax + 0x496b9d]
and al, 0x7f
and eax, 0xff
jne short loc_0043de71 ; jne 0x43de71
@@ -80623,7 +80624,7 @@ add esp, 0xc
xor eax, eax
mov al, byte [ref_0048c4f5] ; mov al, byte [0x48c4f5]
imul edx, eax, 0x68
-mov byte [edx + ref_00496b9d], 0x80 ; mov byte [edx + 0x496b9d], 0x80
+mov byte [edx + (_players+53)], 0x80 ; mov byte [edx + 0x496b9d], 0x80
xor cl, cl
mov byte [eax + ref_00496b60], cl ; mov byte [eax + 0x496b60], cl
@@ -80632,7 +80633,7 @@ imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
mov dl, byte [ref_0048c4f5] ; mov dl, byte [0x48c4f5]
mov dx, word [edx*4 + ref_00475ca4] ; mov dx, word [edx*4 + 0x475ca4]
-sub word [eax + ref_00496b98], dx ; sub word [eax + 0x496b98], dx
+sub word [eax + (_players+48)], dx ; sub word [eax + 0x496b98], dx
mov byte [ref_0048c4f6], 1 ; mov byte [0x48c4f6], 1
jmp near loc_0043df8b ; jmp 0x43df8b
@@ -81149,7 +81150,7 @@ push 2
push edx
push eax
imul eax, ebx, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
jmp short loc_0043e51b ; jmp 0x43e51b
@@ -81346,7 +81347,7 @@ mov byte [ref_0048c4f0], 0xff ; mov byte [0x48c4f0], 0xff
loc_0043e763:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b98] ; mov dx, word [eax + 0x496b98]
+mov dx, word [eax + (_players+48)] ; mov dx, word [eax + 0x496b98]
cmp edx, dword [ebx*4 + ref_00475ca4] ; cmp edx, dword [ebx*4 + 0x475ca4]
jl short loc_0043e7b8 ; jl 0x43e7b8
push 0xf0
@@ -81537,7 +81538,7 @@ loc_0043e9c1:
cmp ebx, 8
je near loc_0043ec34 ; je 0x43ec34
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_0043ea84 ; jne 0x43ea84
push 0
push 0
@@ -81593,7 +81594,7 @@ test al, 1
je near loc_0043ec34 ; je 0x43ec34
xor esi, esi
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-mov dl, byte [edx + ref_00496b7f] ; mov dl, byte [edx + 0x496b7f]
+mov dl, byte [edx + (_players+23)] ; mov dl, byte [edx + 0x496b7f]
cmp dl, 1
jb short loc_0043eab5 ; jb 0x43eab5
jbe short loc_0043eade ; jbe 0x43eade
@@ -81687,7 +81688,7 @@ mov esi, dword [ebx*4 + ref_00475ca4] ; mov esi, dword [ebx*4 + 0x475ca4]
cmp ebx, 4
jge short loc_0043eb90 ; jge 0x43eb90
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov ax, word [eax + ref_00496b98] ; mov ax, word [eax + 0x496b98]
+mov ax, word [eax + (_players+48)] ; mov ax, word [eax + 0x496b98]
and eax, 0xffff
cmp eax, esi
jg short loc_0043ebaf ; jg 0x43ebaf
@@ -81696,14 +81697,14 @@ loc_0043eb90:
cmp ebx, 4
jl near loc_0043ec34 ; jl 0x43ec34
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp word [eax + ref_00496b98], 0x2bc ; cmp word [eax + 0x496b98], 0x2bc
+cmp word [eax + (_players+48)], 0x2bc ; cmp word [eax + 0x496b98], 0x2bc
jb near loc_0043ec34 ; jb 0x43ec34
loc_0043ebaf:
cmp ebx, 4
jge short loc_0043ebc0 ; jge 0x43ebc0
imul eax, ebx, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
jmp short loc_0043ebc8 ; jmp 0x43ebc8
@@ -81729,11 +81730,11 @@ push eax
call fcn_00440cac ; call 0x440cac
add esp, 8
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-sub word [edx + ref_00496b98], si ; sub word [edx + 0x496b98], si
+sub word [edx + (_players+48)], si ; sub word [edx + 0x496b98], si
cmp ebx, 4
jge short loc_0043ec2b ; jge 0x43ec2b
imul eax, ebx, 0x68
-mov byte [eax + ref_00496b9d], 0x80 ; mov byte [eax + 0x496b9d], 0x80
+mov byte [eax + (_players+53)], 0x80 ; mov byte [eax + 0x496b9d], 0x80
xor dh, dh
mov byte [ebx + ref_00496b60], dh ; mov byte [ebx + 0x496b60], dh
jmp short loc_0043ec34 ; jmp 0x43ec34
@@ -81769,14 +81770,14 @@ push 0
mov eax, edx
imul ebx, edx, 0x68
xor eax, edx
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-mov dh, byte [ebx + ref_00496b9d] ; mov dh, byte [ebx + 0x496b9d]
+mov dh, byte [ebx + (_players+53)] ; mov dh, byte [ebx + 0x496b9d]
test dh, dh
jne near loc_0043ed6c ; jne 0x43ed6c
mov edx, dword [esp + 0x14]
@@ -81789,26 +81790,26 @@ mov esi, dword [esp + 0x18]
push esi
call fcn_0044f2c2 ; call 0x44f2c2
add esp, 8
-and byte [ebx + ref_00496b7d], 0xf ; and byte [ebx + 0x496b7d], 0xf
+and byte [ebx + (_players+21)], 0xf ; and byte [ebx + 0x496b7d], 0xf
xor eax, eax
-mov ax, word [ebx + ref_00496b74] ; mov ax, word [ebx + 0x496b74]
+mov ax, word [ebx + (_players+12)] ; mov ax, word [ebx + 0x496b74]
mov esi, eax
shl esi, 2
add esi, eax
mov eax, dword [ref_00498e80] ; mov eax, dword [0x498e80]
and dword [eax + esi*8 + 0x24], edi
mov ax, word [ref_0048bae2] ; mov ax, word [0x48bae2]
-mov word [ebx + ref_00496b74], ax ; mov word [ebx + 0x496b74], ax
+mov word [ebx + (_players+12)], ax ; mov word [ebx + 0x496b74], ax
xor edx, edx
-mov word [ebx + ref_00496b76], dx ; mov word [ebx + 0x496b76], dx
-mov byte [ebx + ref_00496b83], 0xf ; mov byte [ebx + 0x496b83], 0xf
+mov word [ebx + (_players+14)], dx ; mov word [ebx + 0x496b76], dx
+mov byte [ebx + (_players+27)], 0xf ; mov byte [ebx + 0x496b83], 0xf
mov eax, dword [ref_00498e78] ; mov eax, dword [0x498e78]
mov si, word [eax + 0x1c]
-mov word [ebx + ref_00496b70], si ; mov word [ebx + 0x496b70], si
+mov word [ebx + (_players+8)], si ; mov word [ebx + 0x496b70], si
mov ax, word [eax + 0x1e]
-mov word [ebx + ref_00496b72], ax ; mov word [ebx + 0x496b72], ax
+mov word [ebx + (_players+10)], ax ; mov word [ebx + 0x496b72], ax
mov al, byte [esp + 0x18]
-mov byte [ebx + ref_00496b9d], al ; mov byte [ebx + 0x496b9d], al
+mov byte [ebx + (_players+53)], al ; mov byte [ebx + 0x496b9d], al
mov eax, dword [esp + 0x14]
push eax
call fcn_0040fc00 ; call 0x40fc00
@@ -81841,24 +81842,24 @@ loc_0043ed6c:
mov al, byte [esp + 0x18]
mov cl, dh
add cl, al
-mov byte [ebx + ref_00496b9d], cl ; mov byte [ebx + 0x496b9d], cl
+mov byte [ebx + (_players+53)], cl ; mov byte [ebx + 0x496b9d], cl
mov ch, cl
and ch, 0x7f
-mov byte [ebx + ref_00496b9d], ch ; mov byte [ebx + 0x496b9d], ch
+mov byte [ebx + (_players+53)], ch ; mov byte [ebx + 0x496b9d], ch
loc_0043ed85:
push 0
imul esi, dword [esp + 0x18], 0x68
xor eax, eax
-mov ax, word [esi + ref_00496b72] ; mov ax, word [esi + 0x496b72]
+mov ax, word [esi + (_players+10)] ; mov ax, word [esi + 0x496b72]
push eax
xor eax, eax
-mov ax, word [esi + ref_00496b70] ; mov ax, word [esi + 0x496b70]
+mov ax, word [esi + (_players+8)] ; mov ax, word [esi + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
xor eax, eax
-mov al, byte [esi + ref_00496b7b] ; mov al, byte [esi + 0x496b7b]
+mov al, byte [esi + (_players+19)] ; mov al, byte [esi + 0x496b7b]
mov ebx, eax
shl ebx, 2
sub ebx, eax
@@ -81888,7 +81889,7 @@ push ebp
call fcn_0044ba63 ; call 0x44ba63
add esp, 0xc
mov al, byte [esp + 0x18]
-add byte [esi + ref_00496baa], al ; add byte [esi + 0x496baa], al
+add byte [esi + (_players+66)], al ; add byte [esi + 0x496baa], al
pop ebp
pop edi
pop esi
@@ -82312,9 +82313,9 @@ jl short loc_0043f2d7 ; jl 0x43f2d7
loc_0043f2f8:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
inc dword [esp + 0xb0]
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
ja short loc_0043f318 ; ja 0x43f318
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_0043f32c ; je 0x43f32c
loc_0043f318:
@@ -82648,9 +82649,9 @@ loc_0043f752:
cmp esi, 1
jne short loc_0043f78e ; jne 0x43f78e
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0043f78e ; jne 0x43f78e
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne short loc_0043f78e ; jne 0x43f78e
mov esi, 2
jmp short loc_0043f78e ; jmp 0x43f78e
@@ -82725,9 +82726,9 @@ call dword [cs:__imp__timeGetTime@0] ; ucall: call dword cs:[0x46246c]
mov edi, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
inc ebp
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
ja short loc_0043f861 ; ja 0x43f861
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
je short loc_0043f870 ; je 0x43f870
loc_0043f861:
@@ -82899,9 +82900,9 @@ jne short loc_0043fa97 ; jne 0x43fa97
loc_0043fa66:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0043faab ; jne 0x43faab
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne short loc_0043faab ; jne 0x43faab
cmp ebx, 1
jne short loc_0043fa8b ; jne 0x43fa8b
@@ -84513,7 +84514,7 @@ mov al, byte [ebx + eax]
and eax, 0xff
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -84627,7 +84628,7 @@ push ebp
sub esp, 0x10
mov edi, dword [esp + 0x24]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_004411e7 ; jne 0x4411e7
push 0
push 0
@@ -85482,7 +85483,7 @@ push ebp
sub esp, 0xa8
mov edi, dword [esp + 0xbc]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00441a5d ; jne 0x441a5d
push 0
push 0
@@ -85572,7 +85573,7 @@ mov esi, eax
add esp, 4
mov ebx, eax
imul eax, edi, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
lea eax, [esp + 0x84]
push eax
@@ -85708,7 +85709,7 @@ push edi
push ebp
sub esp, 0x98
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b7d] ; mov dl, byte [eax + 0x496b7d]
+mov dl, byte [eax + (_players+21)] ; mov dl, byte [eax + 0x496b7d]
cmp dl, 1
jne near loc_00441d00 ; jne 0x441d00
call fcn_0041d546 ; call 0x41d546
@@ -85809,7 +85810,7 @@ jmp near loc_00441e07 ; jmp 0x441e07
loc_00441d00:
test dl, 6
je near loc_00441e07 ; je 0x441e07
-test byte [eax + ref_00496b7e], 1 ; test byte [eax + 0x496b7e], 1
+test byte [eax + (_players+22)], 1 ; test byte [eax + 0x496b7e], 1
je near loc_00441e07 ; je 0x441e07
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
push ecx
@@ -86209,7 +86210,7 @@ add esp, 8
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86232,9 +86233,9 @@ loc_0044212c:
cmp ebx, edi
jge short loc_00442146 ; jge 0x442146
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00442143 ; je 0x442143
-add esi, dword [eax + ref_00496b84] ; add esi, dword [eax + 0x496b84]
+add esi, dword [eax + (_players+28)] ; add esi, dword [eax + 0x496b84]
inc ecx
loc_00442143:
@@ -86253,9 +86254,9 @@ loc_00442153:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0044219c ; jge 0x44219c
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00442199 ; je 0x442199
-mov edx, dword [eax + ref_00496b84] ; mov edx, dword [eax + 0x496b84]
+mov edx, dword [eax + (_players+28)] ; mov edx, dword [eax + 0x496b84]
cmp esi, edx
jge short loc_00442190 ; jge 0x442190
sub edx, esi
@@ -86272,7 +86273,7 @@ add esp, 0xc
loc_00442190:
imul eax, ebx, 0x68
-mov dword [eax + ref_00496b84], esi ; mov dword [eax + 0x496b84], esi
+mov dword [eax + (_players+28)], esi ; mov dword [eax + 0x496b84], esi
loc_00442199:
inc ebx
@@ -86297,7 +86298,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004421d4 ; jne 0x4421d4
push 0xe0c0410
call fcn_00446ae8 ; call 0x446ae8
@@ -86320,7 +86321,7 @@ add esp, 8
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86341,15 +86342,15 @@ add esp, 4
mov ebp, eax
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
imul ecx, edi, 0x68
-mov edx, dword [edx + ref_00496b84] ; mov edx, dword [edx + 0x496b84]
-mov esi, dword [ecx + ref_00496b84] ; mov esi, dword [ecx + 0x496b84]
+mov edx, dword [edx + (_players+28)] ; mov edx, dword [edx + 0x496b84]
+mov esi, dword [ecx + (_players+28)] ; mov esi, dword [ecx + 0x496b84]
add edx, esi
mov eax, edx
sar edx, 0x1f
sub eax, edx
sar eax, 1
mov esi, eax
-mov eax, dword [ecx + ref_00496b84] ; mov eax, dword [ecx + 0x496b84]
+mov eax, dword [ecx + (_players+28)] ; mov eax, dword [ecx + 0x496b84]
cmp esi, eax
jge short loc_00442288 ; jge 0x442288
mov edx, eax
@@ -86367,22 +86368,22 @@ add esp, 0xc
loc_00442288:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dword [eax + ref_00496b84], esi ; mov dword [eax + 0x496b84], esi
+mov dword [eax + (_players+28)], esi ; mov dword [eax + 0x496b84], esi
imul ecx, ebp, 0x68
-mov dword [ecx + ref_00496b84], esi ; mov dword [ecx + 0x496b84], esi
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+mov dword [ecx + (_players+28)], esi ; mov dword [ecx + 0x496b84], esi
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004422de ; je 0x4422de
push 0x64
xor edx, edx
-mov dx, word [ecx + ref_00496b72] ; mov dx, word [ecx + 0x496b72]
+mov dx, word [ecx + (_players+10)] ; mov dx, word [ecx + 0x496b72]
push edx
xor edx, edx
-mov dx, word [ecx + ref_00496b70] ; mov dx, word [ecx + 0x496b70]
+mov dx, word [ecx + (_players+8)] ; mov dx, word [ecx + 0x496b70]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -86396,7 +86397,7 @@ call fcn_0041d433 ; call 0x41d433
add esp, 4
imul eax, ebp, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86424,7 +86425,7 @@ sub esp, 8
xor esi, esi
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
xor ecx, ecx
-mov cx, word [edx + ref_00496b74] ; mov cx, word [edx + 0x496b74]
+mov cx, word [edx + (_players+12)] ; mov cx, word [edx + 0x496b74]
mov eax, ecx
shl eax, 2
add eax, ecx
@@ -86456,7 +86457,7 @@ xor ecx, ecx
mov cx, word [ebx + 0x1c]
add edi, ecx
imul edi, dword [ref_004990e8] ; imul edi, dword [0x4990e8]
-cmp edi, dword [edx + ref_00496b84] ; cmp edi, dword [edx + 0x496b84]
+cmp edi, dword [edx + (_players+28)] ; cmp edi, dword [edx + 0x496b84]
jg near loc_004425f1 ; jg 0x4425f1
lea esi, [eax - 1]
mov eax, dword [ref_004990e8] ; mov eax, dword [0x4990e8]
@@ -86480,7 +86481,7 @@ add esp, 0x10
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86521,7 +86522,7 @@ call fcn_0041d2c6 ; call 0x41d2c6
add esp, 0x10
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86569,7 +86570,7 @@ mov cx, word [ebx + 0x22]
lea edi, [ecx + edx]
imul edi, dword [ref_004990e8] ; imul edi, dword [0x4990e8]
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
-cmp edi, dword [edx + ref_00496b84] ; cmp edi, dword [edx + 0x496b84]
+cmp edi, dword [edx + (_players+28)] ; cmp edi, dword [edx + 0x496b84]
jg near loc_004425f1 ; jg 0x4425f1
lea esi, [eax - 1]
mov eax, dword [ref_004990e8] ; mov eax, dword [0x4990e8]
@@ -86593,7 +86594,7 @@ add esp, 0x10
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86662,7 +86663,7 @@ sub esp, 4
xor ebx, ebx
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
xor ecx, ecx
-mov cx, word [edx + ref_00496b74] ; mov cx, word [edx + 0x496b74]
+mov cx, word [edx + (_players+12)] ; mov cx, word [edx + 0x496b74]
mov eax, ecx
shl eax, 2
add eax, ecx
@@ -86677,7 +86678,7 @@ lea eax, [esi - 0x7d0]
imul eax, eax, 0x34
mov edi, dword [ref_00498e84] ; mov edi, dword [0x498e84]
add edi, eax
-cmp byte [edx + ref_00496b7d], 1 ; cmp byte [edx + 0x496b7d], 1
+cmp byte [edx + (_players+21)], 1 ; cmp byte [edx + 0x496b7d], 1
jne short loc_00442691 ; jne 0x442691
push 0xe0c0202
call fcn_00446ae8 ; call 0x446ae8
@@ -86727,7 +86728,7 @@ jb short loc_00442736 ; jb 0x442736
lea ecx, [ebx - 1]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86753,7 +86754,7 @@ mov ecx, dword [esp]
dec ecx
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86772,7 +86773,7 @@ add esp, 0xc
loc_0044277f:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004427bb ; je 0x4427bb
push 0x64
movsx edx, word [esi + 2]
@@ -86780,9 +86781,9 @@ push edx
movsx edx, word [esi]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -86820,7 +86821,7 @@ jb short loc_00442836 ; jb 0x442836
lea ecx, [ebp - 1]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86849,7 +86850,7 @@ jb short loc_00442882 ; jb 0x442882
lea edx, [ebx - 1]
imul eax, edx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -86883,7 +86884,7 @@ sub eax, edx
mov edi, dword [ref_00498e88] ; mov edi, dword [0x498e88]
add edi, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004428d8 ; jne 0x4428d8
push 0xe0c0204
call fcn_00446ae8 ; call 0x446ae8
@@ -86936,7 +86937,7 @@ jb short loc_00442984 ; jb 0x442984
lea ecx, [ebx - 1]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86962,7 +86963,7 @@ mov ecx, dword [esp]
dec ecx
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -86981,7 +86982,7 @@ add esp, 0xc
loc_004429cd:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00442a09 ; je 0x442a09
push 0x64
movsx edx, word [esi + 2]
@@ -86989,9 +86990,9 @@ push edx
movsx edx, word [esi]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -87029,7 +87030,7 @@ jb short loc_00442a87 ; jb 0x442a87
lea ecx, [ebp - 1]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87058,7 +87059,7 @@ jb near loc_00442882 ; jb 0x442882
dec ebx
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87104,7 +87105,7 @@ sub esp, 0xc
xor ebx, ebx
imul esi, dword [_current_player], 0x68 ; imul esi, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [esi + ref_00496b74] ; mov dx, word [esi + 0x496b74]
+mov dx, word [esi + (_players+12)] ; mov dx, word [esi + 0x496b74]
mov eax, edx
shl eax, 2
add edx, eax
@@ -87122,7 +87123,7 @@ imul eax, eax, 0x34
mov edx, dword [ref_00498e84] ; mov edx, dword [0x498e84]
add edx, eax
mov dword [esp + 4], edx
-cmp byte [esi + ref_00496b7d], 1 ; cmp byte [esi + 0x496b7d], 1
+cmp byte [esi + (_players+21)], 1 ; cmp byte [esi + 0x496b7d], 1
jne short loc_00442b77 ; jne 0x442b77
push 0xe0c0202
call fcn_00446ae8 ; call 0x446ae8
@@ -87187,7 +87188,7 @@ lea ecx, [esi - 1]
loc_00442c1b:
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov edx, eax
shl eax, 2
@@ -87205,7 +87206,7 @@ add esp, 0xc
loc_00442c4c:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00442c89 ; je 0x442c89
push 0x64
movsx edx, word [ebp + 2]
@@ -87213,9 +87214,9 @@ push edx
movsx edx, word [ebp]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -87244,7 +87245,7 @@ jb short loc_00442ce3 ; jb 0x442ce3
dec esi
imul eax, esi, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -87276,7 +87277,7 @@ jb short loc_00442d30 ; jb 0x442d30
dec edi
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87312,7 +87313,7 @@ mov edx, dword [ref_00498e88] ; mov edx, dword [0x498e88]
add edx, eax
mov dword [esp], edx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00442d8d ; jne 0x442d8d
push 0xe0c0204
call fcn_00446ae8 ; call 0x446ae8
@@ -87380,7 +87381,7 @@ lea ecx, [esi - 1]
loc_00442e36:
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov edx, eax
shl eax, 2
@@ -87398,7 +87399,7 @@ add esp, 0xc
loc_00442e67:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00442ea4 ; je 0x442ea4
push 0x64
movsx edx, word [ebp + 2]
@@ -87406,9 +87407,9 @@ push edx
movsx edx, word [ebp]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -87437,7 +87438,7 @@ jb short loc_00442f00 ; jb 0x442f00
dec esi
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87491,7 +87492,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00442f6d ; jne 0x442f6d
push 0xe0c0010
call fcn_00446ae8 ; call 0x446ae8
@@ -87512,7 +87513,7 @@ push ecx
call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-movzx esi, byte [eax + ref_00496b7b] ; movzx esi, byte [eax + 0x496b7b]
+movzx esi, byte [eax + (_players+19)] ; movzx esi, byte [eax + 0x496b7b]
mov eax, esi
shl eax, 2
sub eax, esi
@@ -87533,20 +87534,20 @@ mov edx, eax
add esp, 4
mov esi, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00443024 ; je 0x443024
push 0x64
imul edx, edx, 0x68
xor ecx, ecx
-mov cx, word [edx + ref_00496b72] ; mov cx, word [edx + 0x496b72]
+mov cx, word [edx + (_players+10)] ; mov cx, word [edx + 0x496b72]
push ecx
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -87563,7 +87564,7 @@ mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
cmp esi, edi
jne short loc_00443070 ; jne 0x443070
imul eax, edi, 0x68
-movzx esi, byte [eax + ref_00496b7b] ; movzx esi, byte [eax + 0x496b7b]
+movzx esi, byte [eax + (_players+19)] ; movzx esi, byte [eax + 0x496b7b]
mov eax, esi
shl eax, 2
sub eax, esi
@@ -87591,7 +87592,7 @@ ret
loc_00443070:
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87612,7 +87613,7 @@ push edi
xor esi, esi
imul edx, dword [_current_player], 0x68 ; imul edx, dword [0x49910c], 0x68
xor ebx, ebx
-mov bx, word [edx + ref_00496b74] ; mov bx, word [edx + 0x496b74]
+mov bx, word [edx + (_players+12)] ; mov bx, word [edx + 0x496b74]
mov eax, ebx
shl eax, 2
add eax, ebx
@@ -87629,7 +87630,7 @@ mov ebx, dword [ref_00498e84] ; mov ebx, dword [0x498e84]
add ebx, eax
cmp byte [ebx + 0x1a], 0
je near loc_00443202 ; je 0x443202
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -87674,7 +87675,7 @@ je near loc_00443202 ; je 0x443202
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87689,7 +87690,7 @@ push esi
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004431da ; jne 0x4431da
push 1
call fcn_00440aac ; call 0x440aac
@@ -87741,7 +87742,7 @@ sub esp, 8
xor ebx, ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov eax, edx
shl eax, 2
add eax, edx
@@ -87784,7 +87785,7 @@ add esp, 0x10
loc_004432ce:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87808,7 +87809,7 @@ je short loc_00443345 ; je 0x443345
lea edx, [ebx - 1]
imul eax, edx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -87885,7 +87886,7 @@ add esp, 0x10
loc_004433f7:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87909,7 +87910,7 @@ je short loc_0044346c ; je 0x44346c
dec ebx
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -87966,7 +87967,7 @@ sub esp, 4
xor edx, edx
mov dword [esp], edx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004434e8 ; jne 0x4434e8
push 0xe0c0006
call fcn_00446ae8 ; call 0x446ae8
@@ -87989,7 +87990,7 @@ add esp, 8
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -88064,9 +88065,9 @@ movsx eax, word [edi]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bx, word [eax + ref_00496b72] ; mov bx, word [eax + 0x496b72]
+mov bx, word [eax + (_players+10)] ; mov bx, word [eax + 0x496b72]
push ebx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88095,7 +88096,7 @@ push edx
call fcn_00456c0a ; call 0x456c0a
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004436a7 ; je 0x4436a7
push 0x64
movsx esi, word [ebx + 2]
@@ -88103,9 +88104,9 @@ push esi
movsx ebx, word [ebx]
push ebx
xor ebx, ebx
-mov bx, word [eax + ref_00496b72] ; mov bx, word [eax + 0x496b72]
+mov bx, word [eax + (_players+10)] ; mov bx, word [eax + 0x496b72]
push ebx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88143,7 +88144,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00443700 ; jne 0x443700
push 0xe0c0006
call fcn_00446ae8 ; call 0x446ae8
@@ -88166,7 +88167,7 @@ add esp, 8
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -88239,7 +88240,7 @@ jmp short loc_00443788 ; jmp 0x443788
loc_00443803:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je near loc_0044390d ; je 0x44390d
push 0x64
movsx edx, word [edi + 2]
@@ -88247,9 +88248,9 @@ push edx
movsx edx, word [edi]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88300,7 +88301,7 @@ mov byte [ebx + 0x1a], 0
mov byte [ebx + 0x18], 0
call fcn_0040dffa ; call 0x40dffa
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_0044390d ; je 0x44390d
push 0x64
movsx edx, word [ebx + 2]
@@ -88308,9 +88309,9 @@ push edx
movsx edx, word [ebx]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88327,7 +88328,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00443937 ; jne 0x443937
push 0xe0c0506
call fcn_00446ae8 ; call 0x446ae8
@@ -88348,7 +88349,7 @@ push ecx
call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ebx, eax
shl ebx, 2
@@ -88423,15 +88424,15 @@ movzx edi, byte [ebx + 0x19]
movsx ebp, word [ebx]
movsx ebx, word [ebx + 2]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00443a72 ; je 0x443a72
push 0x64
push ebx
push ebp
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88473,7 +88474,7 @@ test edi, edi
je short loc_00443b03 ; je 0x443b03
dec edi
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ebx, eax
shl ebx, 2
@@ -88508,7 +88509,7 @@ push ebp
sub esp, 4
xor edi, edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00443b34 ; jne 0x443b34
push 0xe0c0626
call fcn_00446ae8 ; call 0x446ae8
@@ -88530,7 +88531,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul eax, ebp, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ebx, eax
shl ebx, 2
@@ -88555,7 +88556,7 @@ imul ebx, ebx, 0x34
mov eax, dword [ref_00498e84] ; mov eax, dword [0x498e84]
add ebx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00443bf9 ; je 0x443bf9
push 0x64
movsx edx, word [ebx + 2]
@@ -88563,9 +88564,9 @@ push edx
movsx edx, word [ebx]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88621,7 +88622,7 @@ mov eax, ebx
mov ebx, dword [ref_00498e88] ; mov ebx, dword [0x498e88]
add ebx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00443cc5 ; je 0x443cc5
push 0x64
movsx edx, word [ebx + 2]
@@ -88629,9 +88630,9 @@ push edx
movsx edx, word [ebx]
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88680,7 +88681,7 @@ mov esi, dword [esp]
and esi, 0x7f00
sar esi, 8
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-cmp byte [ebx + ref_00496b7d], 1 ; cmp byte [ebx + 0x496b7d], 1
+cmp byte [ebx + (_players+21)], 1 ; cmp byte [ebx + 0x496b7d], 1
je short loc_00443d97 ; je 0x443d97
push 0x64
lea edx, [esi - 1]
@@ -88700,10 +88701,10 @@ push edx
movsx eax, word [eax]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
push 0
call fcn_0040e669 ; call 0x40e669
@@ -88749,7 +88750,7 @@ test esi, esi
je short loc_00443e30 ; je 0x443e30
dec esi
imul eax, esi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
mov ebx, eax
shl ebx, 2
@@ -88777,7 +88778,7 @@ push ebx
push esi
push edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00443e5c ; jne 0x443e5c
push 0xe0c0410
call fcn_00446ae8 ; call 0x446ae8
@@ -88795,7 +88796,7 @@ je near loc_00441f1b ; je 0x441f1b
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -88815,20 +88816,20 @@ mov edx, eax
add esp, 4
mov esi, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00443eff ; je 0x443eff
push 0x64
imul edx, edx, 0x68
xor ebx, ebx
-mov bx, word [edx + ref_00496b72] ; mov bx, word [edx + 0x496b72]
+mov bx, word [edx + (_players+10)] ; mov bx, word [edx + 0x496b72]
push ebx
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88860,7 +88861,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, esi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -88883,7 +88884,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00443fa0 ; jne 0x443fa0
push 0xe0c0010
call fcn_00446ae8 ; call 0x446ae8
@@ -88913,7 +88914,7 @@ cmp ebx, ebp
je short loc_0044400a ; je 0x44400a
imul eax, ebp, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -88930,20 +88931,20 @@ add esp, 0xc
loc_0044400a:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00444058 ; je 0x444058
push 0x64
imul edx, esi, 0x68
xor ebx, ebx
-mov bx, word [edx + ref_00496b72] ; mov bx, word [edx + 0x496b72]
+mov bx, word [edx + (_players+10)] ; mov bx, word [edx + 0x496b72]
push ebx
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -88957,7 +88958,7 @@ imul ebx, esi, 0x68
cmp esi, dword [_current_player] ; cmp esi, dword [0x49910c]
jne short loc_004440a0 ; jne 0x4440a0
xor edx, edx
-mov dl, byte [ebx + ref_00496b7b] ; mov dl, byte [ebx + 0x496b7b]
+mov dl, byte [ebx + (_players+19)] ; mov dl, byte [ebx + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -88971,12 +88972,12 @@ push 3
push esi
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
-mov byte [ebx + ref_00496ba0], 0x80 ; mov byte [ebx + 0x496ba0], 0x80
+mov byte [ebx + (_players+56)], 0x80 ; mov byte [ebx + 0x496ba0], 0x80
jmp short loc_004440e3 ; jmp 0x4440e3
loc_004440a0:
xor edx, edx
-mov dl, byte [ebx + ref_00496b7b] ; mov dl, byte [ebx + 0x496b7b]
+mov dl, byte [ebx + (_players+19)] ; mov dl, byte [ebx + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -88990,7 +88991,7 @@ push 2
push esi
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
-mov byte [ebx + ref_00496ba0], 1 ; mov byte [ebx + 0x496ba0], 1
+mov byte [ebx + (_players+56)], 1 ; mov byte [ebx + 0x496ba0], 1
call fcn_0041d546 ; call 0x41d546
jmp short loc_004440e3 ; jmp 0x4440e3
@@ -89018,7 +89019,7 @@ add esp, 8
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89050,11 +89051,11 @@ mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
cmp ebx, edi
je short loc_00444136 ; je 0x444136
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je short loc_00444136 ; je 0x444136
-cmp word [esi + ref_00496b70], 0 ; cmp word [esi + 0x496b70], 0
+cmp word [esi + (_players+8)], 0 ; cmp word [esi + 0x496b70], 0
je short loc_00444136 ; je 0x444136
-cmp dword [esi + ref_00496b9a], 0 ; cmp dword [esi + 0x496b9a], 0
+cmp dword [esi + (_players+50)], 0 ; cmp dword [esi + 0x496b9a], 0
jne short loc_00444136 ; jne 0x444136
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -89070,10 +89071,10 @@ push ebx
call fcn_0040df69 ; call 0x40df69
add esp, 0xc
xor dl, dl
-mov byte [esi + ref_00496b9f], dl ; mov byte [esi + 0x496b9f], dl
+mov byte [esi + (_players+55)], dl ; mov byte [esi + 0x496b9f], dl
mov dh, 5
-mov byte [esi + ref_00496b9e], dh ; mov byte [esi + 0x496b9e], dh
-add byte [esi + ref_00496baa], dh ; add byte [esi + 0x496baa], dh
+mov byte [esi + (_players+54)], dh ; mov byte [esi + 0x496b9e], dh
+add byte [esi + (_players+66)], dh ; add byte [esi + 0x496baa], dh
jmp short loc_00444136 ; jmp 0x444136
loc_004441a9:
@@ -89100,7 +89101,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004441fc ; jne 0x4441fc
push 0xe0c0710
call fcn_00446ae8 ; call 0x446ae8
@@ -89123,7 +89124,7 @@ add esp, 8
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89144,20 +89145,20 @@ add esp, 4
mov ebp, eax
mov ebx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004442b2 ; je 0x4442b2
push 0x64
imul edx, edx, 0x68
xor edi, edi
-mov di, word [edx + ref_00496b72] ; mov di, word [edx + 0x496b72]
+mov di, word [edx + (_players+10)] ; mov di, word [edx + 0x496b72]
push edi
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -89168,7 +89169,7 @@ loc_004442b2:
cmp ebx, 4
jge near loc_0044449b ; jge 0x44449b
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
jne near loc_0044449b ; jne 0x44449b
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -89214,7 +89215,7 @@ mov ebx, eax
loc_00444334:
imul edi, ebx, 0x68
xor edx, edx
-mov dl, byte [edi + ref_00496b7b] ; mov dl, byte [edi + 0x496b7b]
+mov dl, byte [edi + (_players+19)] ; mov dl, byte [edi + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89229,14 +89230,14 @@ add esp, 0xc
cmp ebx, dword [_current_player] ; cmp ebx, dword [0x49910c]
setne al
add al, 4
-mov byte [edi + ref_00496b9f], al ; mov byte [edi + 0x496b9f], al
+mov byte [edi + (_players+55)], al ; mov byte [edi + 0x496b9f], al
imul eax, ebx, 0x68
-add byte [eax + ref_00496baa], 5 ; add byte [eax + 0x496baa], 5
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
-mov byte [eax + ref_00496bce], dl ; mov byte [eax + 0x496bce], dl
-mov dl, byte [eax + ref_00496b7a] ; mov dl, byte [eax + 0x496b7a]
-mov byte [eax + ref_00496bcf], dl ; mov byte [eax + 0x496bcf], dl
-mov dh, byte [eax + ref_00496b79] ; mov dh, byte [eax + 0x496b79]
+add byte [eax + (_players+66)], 5 ; add byte [eax + 0x496baa], 5
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
+mov byte [eax + (_players+102)], dl ; mov byte [eax + 0x496bce], dl
+mov dl, byte [eax + (_players+18)] ; mov dl, byte [eax + 0x496b7a]
+mov byte [eax + (_players+103)], dl ; mov byte [eax + 0x496bcf], dl
+mov dh, byte [eax + (_players+17)] ; mov dh, byte [eax + 0x496b79]
test dh, dh
je short loc_004443e6 ; je 0x4443e6
cmp dh, 1
@@ -89251,7 +89252,7 @@ inc byte [eax + ref_00499160] ; inc byte [eax + 0x499160]
loc_004443b4:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne short loc_004443d4 ; jne 0x4443d4
mov eax, ebx
shl eax, 2
@@ -89264,8 +89265,8 @@ inc byte [eax + ref_00499161] ; inc byte [eax + 0x499161]
loc_004443d4:
imul eax, ebx, 0x68
xor cl, cl
-mov byte [eax + ref_00496b79], cl ; mov byte [eax + 0x496b79], cl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], cl ; mov byte [eax + 0x496b79], cl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
loc_004443e6:
push ebx
@@ -89284,12 +89285,12 @@ call fcn_00444691 ; call 0x444691
add esp, 4
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov byte [eax + ref_00496b9f], 5 ; mov byte [eax + 0x496b9f], 5
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
-mov byte [eax + ref_00496bce], dl ; mov byte [eax + 0x496bce], dl
-mov dl, byte [eax + ref_00496b7a] ; mov dl, byte [eax + 0x496b7a]
-mov byte [eax + ref_00496bcf], dl ; mov byte [eax + 0x496bcf], dl
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+mov byte [eax + (_players+55)], 5 ; mov byte [eax + 0x496b9f], 5
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
+mov byte [eax + (_players+102)], dl ; mov byte [eax + 0x496bce], dl
+mov dl, byte [eax + (_players+18)] ; mov dl, byte [eax + 0x496b7a]
+mov byte [eax + (_players+103)], dl ; mov byte [eax + 0x496bcf], dl
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne short loc_00444459 ; jne 0x444459
mov eax, ecx
shl eax, 2
@@ -89301,7 +89302,7 @@ inc byte [eax + ref_00499160] ; inc byte [eax + 0x499160]
loc_00444459:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne short loc_00444483 ; jne 0x444483
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
mov eax, edx
@@ -89315,8 +89316,8 @@ inc byte [eax + ref_00499161] ; inc byte [eax + 0x499161]
loc_00444483:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ch, ch
-mov byte [eax + ref_00496b79], ch ; mov byte [eax + 0x496b79], ch
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], ch ; mov byte [eax + 0x496b79], ch
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
jmp short loc_004444b3 ; jmp 0x4444b3
loc_0044449b:
@@ -89344,7 +89345,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004444df ; jne 0x4444df
push 0xe0c0710
call fcn_00446ae8 ; call 0x446ae8
@@ -89366,7 +89367,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -89388,20 +89389,20 @@ add esp, 4
mov edi, eax
mov ebx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00444599 ; je 0x444599
push 0x64
imul edx, edx, 0x68
xor ecx, ecx
-mov cx, word [edx + ref_00496b72] ; mov cx, word [edx + 0x496b72]
+mov cx, word [edx + (_players+10)] ; mov cx, word [edx + 0x496b72]
push ecx
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -89469,7 +89470,7 @@ call fcn_0043d593 ; call 0x43d593
add esp, 8
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89526,14 +89527,14 @@ sub esp, 0x80
push 0
imul ebx, dword [esp + 0x94], 0x68
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-mov ecx, dword [ebx + ref_00496b68] ; mov ecx, dword [ebx + 0x496b68]
+mov ecx, dword [ebx + (_players+0)] ; mov ecx, dword [ebx + 0x496b68]
push ecx
push ref_0046532c ; push 0x46532c
lea eax, [esp + 8]
@@ -89550,7 +89551,7 @@ mov esi, dword [esp + 0x94]
push esi
call fcn_00441343 ; call 0x441343
add esp, 8
-mov bl, byte [ebx + ref_00496b7b] ; mov bl, byte [ebx + 0x496b7b]
+mov bl, byte [ebx + (_players+19)] ; mov bl, byte [ebx + 0x496b7b]
and ebx, 0xff
mov eax, ebx
shl eax, 2
@@ -89568,7 +89569,7 @@ add esp, 0xc
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -89602,14 +89603,14 @@ mov ebx, 0xffffffff
push 0
imul esi, edi, 0x68
xor eax, eax
-mov ax, word [esi + ref_00496b72] ; mov ax, word [esi + 0x496b72]
+mov ax, word [esi + (_players+10)] ; mov ax, word [esi + 0x496b72]
push eax
xor eax, eax
-mov ax, word [esi + ref_00496b70] ; mov ax, word [esi + 0x496b70]
+mov ax, word [esi + (_players+8)] ; mov ax, word [esi + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-cmp byte [esi + ref_00496b7d], 1 ; cmp byte [esi + 0x496b7d], 1
+cmp byte [esi + (_players+21)], 1 ; cmp byte [esi + 0x496b7d], 1
jne near loc_004448b0 ; jne 0x4448b0
xor ebx, ebx
xor esi, esi
@@ -89619,7 +89620,7 @@ loc_004447b8:
cmp ebx, ebp
jge short loc_004447d7 ; jge 0x4447d7
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_004447d4 ; je 0x4447d4
cmp ebx, edi
je short loc_004447d4 ; je 0x4447d4
@@ -89634,7 +89635,7 @@ loc_004447d7:
imul eax, edi, 0x68
cmp esi, 1
jne near loc_0044486d ; jne 0x44486d
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046533d ; push 0x46533d
lea eax, [esp + 8]
@@ -89649,7 +89650,7 @@ add esp, 8
xor eax, eax
mov al, byte [esp + 0x9c]
imul eax, eax, 0x68
-mov ebx, dword [eax + ref_00496b68] ; mov ebx, dword [eax + 0x496b68]
+mov ebx, dword [eax + (_players+0)] ; mov ebx, dword [eax + 0x496b68]
push ebx
lea eax, [esp + 0x84]
push eax
@@ -89677,7 +89678,7 @@ mov ebx, 0xffffffff
jmp near loc_00444a53 ; jmp 0x444a53
loc_0044486d:
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
push ref_0046533d ; push 0x46533d
lea eax, [esp + 8]
@@ -89738,14 +89739,14 @@ mov esi, dword [ref_004990e8] ; mov esi, dword [0x4990e8]
imul esi, edx
mov eax, dword [esp + 0xbc]
mov edx, dword [esp + 0x94]
-cmp eax, dword [edx + ref_00496b84] ; cmp eax, dword [edx + 0x496b84]
+cmp eax, dword [edx + (_players+28)] ; cmp eax, dword [edx + 0x496b84]
jg short loc_00444971 ; jg 0x444971
cmp esi, eax
jge short loc_00444973 ; jge 0x444973
jmp short loc_00444971 ; jmp 0x444971
loc_00444934:
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
fmul qword [ref_00465380] ; fmul qword [0x465380]
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -89771,7 +89772,7 @@ loc_00444973:
cmp ebx, 0xffffffff
je short loc_004449e7 ; je 0x4449e7
imul eax, edi, 0x68
-mov ecx, dword [eax + ref_00496b68] ; mov ecx, dword [eax + 0x496b68]
+mov ecx, dword [eax + (_players+0)] ; mov ecx, dword [eax + 0x496b68]
push ecx
push ref_0046533d ; push 0x46533d
lea eax, [esp + 8]
@@ -89784,7 +89785,7 @@ push 0x13
call fcn_00441f73 ; call 0x441f73
add esp, 8
imul ebp, ebp, 0x68
-mov esi, dword [ebp + ref_00496b68] ; mov esi, dword [ebp + 0x496b68]
+mov esi, dword [ebp + (_players+0)] ; mov esi, dword [ebp + 0x496b68]
push esi
lea eax, [esp + 0x84]
push eax
@@ -89812,7 +89813,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89828,7 +89829,7 @@ call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89862,14 +89863,14 @@ mov edi, dword [esp + 0x94]
push 0
imul ebx, edi, 0x68
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-cmp byte [ebx + ref_00496b7d], 1 ; cmp byte [ebx + 0x496b7d], 1
+cmp byte [ebx + (_players+21)], 1 ; cmp byte [ebx + 0x496b7d], 1
je short loc_00444ad8 ; je 0x444ad8
call clib_rand ; call 0x456f2d
mov edx, eax
@@ -89880,7 +89881,7 @@ add edx, esi
mov esi, dword [ref_004990e8] ; mov esi, dword [0x4990e8]
imul esi, edx
mov eax, dword [esp + 0x9c]
-cmp eax, dword [ebx + ref_00496b84] ; cmp eax, dword [ebx + 0x496b84]
+cmp eax, dword [ebx + (_players+28)] ; cmp eax, dword [ebx + 0x496b84]
jg short loc_00444aca ; jg 0x444aca
cmp esi, eax
jge short loc_00444ad1 ; jge 0x444ad1
@@ -89894,7 +89895,7 @@ xor esi, esi
jmp near loc_00444ba0 ; jmp 0x444ba0
loc_00444ad8:
-mov esi, dword [ebx + ref_00496b68] ; mov esi, dword [ebx + 0x496b68]
+mov esi, dword [ebx + (_players+0)] ; mov esi, dword [ebx + 0x496b68]
push esi
push ref_00465388 ; push 0x465388
lea eax, [esp + 8]
@@ -89928,7 +89929,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89947,7 +89948,7 @@ cmp ecx, 0xffffffff
je short loc_00444ba0 ; je 0x444ba0
imul eax, ecx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -89980,14 +89981,14 @@ sub esp, 0x80
push 0
imul ebx, dword [esp + 0x94], 0x68
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-mov ecx, dword [ebx + ref_00496b68] ; mov ecx, dword [ebx + 0x496b68]
+mov ecx, dword [ebx + (_players+0)] ; mov ecx, dword [ebx + 0x496b68]
push ecx
push ref_0046539d ; push 0x46539d
lea eax, [esp + 8]
@@ -90004,7 +90005,7 @@ mov esi, dword [esp + 0x94]
push esi
call fcn_00441343 ; call 0x441343
add esp, 8
-mov bl, byte [ebx + ref_00496b7b] ; mov bl, byte [ebx + 0x496b7b]
+mov bl, byte [ebx + (_players+19)] ; mov bl, byte [ebx + 0x496b7b]
and ebx, 0xff
mov eax, ebx
shl eax, 2
@@ -90026,7 +90027,7 @@ push edi
push ebp
xor ebx, ebx
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496ba8] ; mov dl, byte [eax + 0x496ba8]
+mov dl, byte [eax + (_players+64)] ; mov dl, byte [eax + 0x496ba8]
test dl, dl
je short loc_00444c71 ; je 0x444c71
mov al, dl
@@ -90038,7 +90039,7 @@ mov ebx, 1
loc_00444c71:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dh, byte [eax + ref_00496ba7] ; mov dh, byte [eax + 0x496ba7]
+mov dh, byte [eax + (_players+63)] ; mov dh, byte [eax + 0x496ba7]
test dh, dh
je short loc_00444cd3 ; je 0x444cd3
mov al, dh
@@ -90083,7 +90084,7 @@ add esp, 8
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -90147,9 +90148,9 @@ movsx edx, word [eax]
movsx ecx, word [eax + 2]
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edi, edi
-mov di, word [eax + ref_00496b70] ; mov di, word [eax + 0x496b70]
+mov di, word [eax + (_players+8)] ; mov di, word [eax + 0x496b70]
sub edx, edi
-mov ax, word [eax + ref_00496b72] ; mov ax, word [eax + 0x496b72]
+mov ax, word [eax + (_players+10)] ; mov ax, word [eax + 0x496b72]
and eax, 0xffff
sub ecx, eax
mov eax, ecx
@@ -90188,7 +90189,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00444e35 ; jne 0x444e35
call fcn_00444d1a ; call 0x444d1a
jmp short loc_00444e3f ; jmp 0x444e3f
@@ -90209,7 +90210,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90240,9 +90241,9 @@ add esp, 0xc
push 0
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
mov eax, edi
@@ -90278,7 +90279,7 @@ sub esp, 0x94
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90293,7 +90294,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_00444fea ; je 0x444fea
push 0
call fcn_0041e6f2 ; call 0x41e6f2
@@ -90376,7 +90377,7 @@ push ebp
sub esp, 0xc8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -90403,7 +90404,7 @@ inc ebx
cmp ebx, 0xc
jl short loc_00445083 ; jl 0x445083
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004450e2 ; jne 0x4450e2
push 0xa
push 0xf
@@ -90524,7 +90525,7 @@ push edi
push ebp
sub esp, 0x98
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00445216 ; jne 0x445216
push 0xe0c0410
call fcn_00446ae8 ; call 0x446ae8
@@ -90546,7 +90547,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90567,20 +90568,20 @@ mov esi, eax
add esp, 4
mov ebx, eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004452ce ; je 0x4452ce
push 0x64
imul esi, esi, 0x68
xor edx, edx
-mov dx, word [esi + ref_00496b72] ; mov dx, word [esi + 0x496b72]
+mov dx, word [esi + (_players+10)] ; mov dx, word [esi + 0x496b72]
push edx
-mov si, word [esi + ref_00496b70] ; mov si, word [esi + 0x496b70]
+mov si, word [esi + (_players+8)] ; mov si, word [esi + 0x496b70]
and esi, 0xffff
push esi
xor esi, esi
-mov si, word [eax + ref_00496b72] ; mov si, word [eax + 0x496b72]
+mov si, word [eax + (_players+10)] ; mov si, word [eax + 0x496b72]
push esi
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -90589,7 +90590,7 @@ add esp, 0x18
loc_004452ce:
imul eax, ebx, 0x68
-fild dword [eax + ref_00496b84] ; fild dword [eax + 0x496b84]
+fild dword [eax + (_players+28)] ; fild dword [eax + 0x496b84]
fmul qword [ref_004653d8] ; fmul qword [0x4653d8]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x94]
@@ -90643,7 +90644,7 @@ mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
cmp ebx, edx
je near loc_00445421 ; je 0x445421
imul esi, ebx, 0x68
-fild dword [esi + ref_00496b84] ; fild dword [esi + 0x496b84]
+fild dword [esi + (_players+28)] ; fild dword [esi + 0x496b84]
fmul qword [ref_004653d8] ; fmul qword [0x4653d8]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x94]
@@ -90654,7 +90655,7 @@ push edx
push ebx
call fcn_0041d2c6 ; call 0x41d2c6
add esp, 0x10
-mov eax, dword [esi + ref_00496b68] ; mov eax, dword [esi + 0x496b68]
+mov eax, dword [esi + (_players+0)] ; mov eax, dword [esi + 0x496b68]
push eax
lea eax, [esp + 0x84]
push eax
@@ -90674,7 +90675,7 @@ lea eax, [esp + 4]
push eax
call fcn_00440cac ; call 0x440cac
add esp, 8
-movzx esi, byte [esi + ref_00496b7b] ; movzx esi, byte [esi + 0x496b7b]
+movzx esi, byte [esi + (_players+19)] ; movzx esi, byte [esi + 0x496b7b]
mov eax, esi
shl eax, 2
sub eax, esi
@@ -90702,7 +90703,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0044544d ; jne 0x44544d
push 0xe0c0006
call fcn_00446ae8 ; call 0x446ae8
@@ -90724,7 +90725,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90769,7 +90770,7 @@ jmp short loc_004454d0 ; jmp 0x4454d0
loc_004454f6:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je near loc_0044557e ; je 0x44557e
push 0x64
movsx ebx, word [edi + 2]
@@ -90791,7 +90792,7 @@ mov ebx, dword [ref_00498e88] ; mov ebx, dword [0x498e88]
add ebx, eax
mov byte [ebx + 0x1c], 0x50
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_0044557e ; je 0x44557e
push 0x64
movsx esi, word [ebx + 2]
@@ -90801,9 +90802,9 @@ movsx ebx, word [ebx]
loc_0044555c:
push ebx
xor ebx, ebx
-mov bx, word [eax + ref_00496b72] ; mov bx, word [eax + 0x496b72]
+mov bx, word [eax + (_players+10)] ; mov bx, word [eax + 0x496b72]
push ebx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
loc_00445573:
@@ -90833,7 +90834,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004455b3 ; jne 0x4455b3
push 0xe0c0006
call fcn_00446ae8 ; call 0x446ae8
@@ -90855,7 +90856,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90900,7 +90901,7 @@ jmp short loc_0044563a ; jmp 0x44563a
loc_00445660:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je near loc_0044557e ; je 0x44557e
push 0x64
movsx ebx, word [edi + 2]
@@ -90908,9 +90909,9 @@ push ebx
movsx ebx, word [edi]
push ebx
xor ebx, ebx
-mov bx, word [eax + ref_00496b72] ; mov bx, word [eax + 0x496b72]
+mov bx, word [eax + (_players+10)] ; mov bx, word [eax + 0x496b72]
push ebx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
jmp near loc_00445573 ; jmp 0x445573
@@ -90934,7 +90935,7 @@ mov byte [eax + 0x1e], 0
loc_004456d9:
imul ebx, dword [_current_player], 0x68 ; imul ebx, dword [0x49910c], 0x68
-cmp byte [ebx + ref_00496b7d], 1 ; cmp byte [ebx + 0x496b7d], 1
+cmp byte [ebx + (_players+21)], 1 ; cmp byte [ebx + 0x496b7d], 1
je near loc_0044557e ; je 0x44557e
push 0x64
movsx esi, word [eax + 2]
@@ -90942,10 +90943,10 @@ push esi
movsx eax, word [eax]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
jmp near loc_00445573 ; jmp 0x445573
fcn_00445710:
@@ -90955,7 +90956,7 @@ push edi
push ebp
sub esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00445733 ; jne 0x445733
push 0xe0c0410
call fcn_00446ae8 ; call 0x446ae8
@@ -90977,7 +90978,7 @@ call fcn_00441343 ; call 0x441343
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -90998,20 +90999,20 @@ mov ebx, eax
add esp, 4
mov dword [esp], eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004457e8 ; je 0x4457e8
push 0x64
imul ebx, ebx, 0x68
xor edx, edx
-mov dx, word [ebx + ref_00496b72] ; mov dx, word [ebx + 0x496b72]
+mov dx, word [ebx + (_players+10)] ; mov dx, word [ebx + 0x496b72]
push edx
xor edx, edx
-mov dx, word [ebx + ref_00496b70] ; mov dx, word [ebx + 0x496b70]
+mov dx, word [ebx + (_players+8)] ; mov dx, word [ebx + 0x496b70]
push edx
xor ebx, ebx
-mov bx, word [eax + ref_00496b72] ; mov bx, word [eax + 0x496b72]
+mov bx, word [eax + (_players+10)] ; mov bx, word [eax + 0x496b72]
push ebx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -91020,7 +91021,7 @@ add esp, 0x18
loc_004457e8:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov bl, byte [eax + ref_00496ba9] ; mov bl, byte [eax + 0x496ba9]
+mov bl, byte [eax + (_players+65)] ; mov bl, byte [eax + 0x496ba9]
test bl, bl
je short loc_00445827 ; je 0x445827
xor edx, edx
@@ -91028,50 +91029,50 @@ mov dl, bl
dec edx
imul ebx, edx, 0x68
xor cl, cl
-mov byte [ebx + ref_00496ba9], cl ; mov byte [ebx + 0x496ba9], cl
+mov byte [ebx + (_players+65)], cl ; mov byte [ebx + 0x496ba9], cl
xor edx, edx
-mov dl, byte [eax + ref_00496ba9] ; mov dl, byte [eax + 0x496ba9]
+mov dl, byte [eax + (_players+65)] ; mov dl, byte [eax + 0x496ba9]
dec edx
imul ebx, edx, 0x68
-mov byte [ebx + ref_00496ba5], cl ; mov byte [ebx + 0x496ba5], cl
-mov byte [eax + ref_00496ba9], cl ; mov byte [eax + 0x496ba9], cl
-mov byte [eax + ref_00496ba5], cl ; mov byte [eax + 0x496ba5], cl
+mov byte [ebx + (_players+61)], cl ; mov byte [ebx + 0x496ba5], cl
+mov byte [eax + (_players+65)], cl ; mov byte [eax + 0x496ba9], cl
+mov byte [eax + (_players+61)], cl ; mov byte [eax + 0x496ba5], cl
loc_00445827:
imul eax, dword [esp], 0x68
-cmp byte [eax + ref_00496ba9], 0 ; cmp byte [eax + 0x496ba9], 0
+cmp byte [eax + (_players+65)], 0 ; cmp byte [eax + 0x496ba9], 0
je short loc_00445866 ; je 0x445866
xor ebx, ebx
-mov bl, byte [eax + ref_00496ba9] ; mov bl, byte [eax + 0x496ba9]
+mov bl, byte [eax + (_players+65)] ; mov bl, byte [eax + 0x496ba9]
dec ebx
imul ebx, ebx, 0x68
xor cl, cl
-mov byte [ebx + ref_00496ba9], cl ; mov byte [ebx + 0x496ba9], cl
+mov byte [ebx + (_players+65)], cl ; mov byte [ebx + 0x496ba9], cl
xor ebx, ebx
-mov bl, byte [eax + ref_00496ba9] ; mov bl, byte [eax + 0x496ba9]
+mov bl, byte [eax + (_players+65)] ; mov bl, byte [eax + 0x496ba9]
dec ebx
imul ebx, ebx, 0x68
-mov byte [ebx + ref_00496ba5], cl ; mov byte [ebx + 0x496ba5], cl
-mov byte [eax + ref_00496ba9], cl ; mov byte [eax + 0x496ba9], cl
-mov byte [eax + ref_00496ba5], cl ; mov byte [eax + 0x496ba5], cl
+mov byte [ebx + (_players+61)], cl ; mov byte [ebx + 0x496ba5], cl
+mov byte [eax + (_players+65)], cl ; mov byte [eax + 0x496ba9], cl
+mov byte [eax + (_players+61)], cl ; mov byte [eax + 0x496ba5], cl
loc_00445866:
mov dl, byte [esp]
inc dl
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-mov byte [eax + ref_00496ba9], dl ; mov byte [eax + 0x496ba9], dl
-mov byte [eax + ref_00496ba5], 7 ; mov byte [eax + 0x496ba5], 7
+mov byte [eax + (_players+65)], dl ; mov byte [eax + 0x496ba9], dl
+mov byte [eax + (_players+61)], 7 ; mov byte [eax + 0x496ba5], 7
mov al, byte [_current_player] ; mov al, byte [0x49910c]
inc al
mov ebp, dword [esp]
imul ebx, ebp, 0x68
-mov byte [ebx + ref_00496ba9], al ; mov byte [ebx + 0x496ba9], al
-mov byte [ebx + ref_00496ba5], 7 ; mov byte [ebx + 0x496ba5], 7
+mov byte [ebx + (_players+65)], al ; mov byte [ebx + 0x496ba9], al
+mov byte [ebx + (_players+61)], 7 ; mov byte [ebx + 0x496ba5], 7
push edi
call fcn_0041d433 ; call 0x41d433
add esp, 4
-mov bl, byte [ebx + ref_00496b7b] ; mov bl, byte [ebx + 0x496b7b]
+mov bl, byte [ebx + (_players+19)] ; mov bl, byte [ebx + 0x496b7b]
and ebx, 0xff
mov eax, ebx
shl eax, 2
@@ -91098,7 +91099,7 @@ push esi
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004458ff ; jne 0x4458ff
push 0xe0c0010
call fcn_00446ae8 ; call 0x446ae8
@@ -91128,7 +91129,7 @@ cmp ebx, ebp
je short loc_00445969 ; je 0x445969
imul eax, ebp, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -91145,20 +91146,20 @@ add esp, 0xc
loc_00445969:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
je short loc_004459b7 ; je 0x4459b7
push 0x64
imul edx, esi, 0x68
xor ebx, ebx
-mov bx, word [edx + ref_00496b72] ; mov bx, word [edx + 0x496b72]
+mov bx, word [edx + (_players+10)] ; mov bx, word [edx + 0x496b72]
push ebx
-mov dx, word [edx + ref_00496b70] ; mov dx, word [edx + 0x496b70]
+mov dx, word [edx + (_players+8)] ; mov dx, word [edx + 0x496b70]
and edx, 0xffff
push edx
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push 0
@@ -91172,7 +91173,7 @@ imul ebx, esi, 0x68
cmp esi, dword [_current_player] ; cmp esi, dword [0x49910c]
jne short loc_00445a02 ; jne 0x445a02
xor edx, edx
-mov dl, byte [ebx + ref_00496b7b] ; mov dl, byte [ebx + 0x496b7b]
+mov dl, byte [ebx + (_players+19)] ; mov dl, byte [ebx + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -91186,12 +91187,12 @@ push 3
push esi
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
-mov byte [ebx + ref_00496ba1], 2 ; mov byte [ebx + 0x496ba1], 2
+mov byte [ebx + (_players+57)], 2 ; mov byte [ebx + 0x496ba1], 2
jmp near loc_004440e3 ; jmp 0x4440e3
loc_00445a02:
xor edx, edx
-mov dl, byte [ebx + ref_00496b7b] ; mov dl, byte [ebx + 0x496b7b]
+mov dl, byte [ebx + (_players+19)] ; mov dl, byte [ebx + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -91205,7 +91206,7 @@ push 2
push esi
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
-mov byte [ebx + ref_00496ba1], 3 ; mov byte [ebx + 0x496ba1], 3
+mov byte [ebx + (_players+57)], 3 ; mov byte [ebx + 0x496ba1], 3
call fcn_0041d546 ; call 0x41d546
jmp near loc_004440e3 ; jmp 0x4440e3
@@ -91329,7 +91330,7 @@ push esi
push edi
mov esi, dword [esp + 0x10]
imul eax, esi, 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
test dl, dl
je short loc_00445baa ; je 0x445baa
mov bl, dl
@@ -91363,8 +91364,8 @@ inc byte [eax + ref_00499167] ; inc byte [eax + 0x499167]
loc_00445b8f:
imul eax, esi, 0x68
xor cl, cl
-mov byte [eax + ref_00496b79], cl ; mov byte [eax + 0x496b79], cl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], cl ; mov byte [eax + 0x496b79], cl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
push esi
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -91866,9 +91867,9 @@ mov edx, dword [ref_0048be18] ; mov edx, dword [0x48be18]
test edx, edx
jne short loc_004461de ; jne 0x4461de
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dx, word [eax + ref_00496b70] ; mov dx, word [eax + 0x496b70]
+mov dx, word [eax + (_players+8)] ; mov dx, word [eax + 0x496b70]
mov dword [ref_0048c570], edx ; mov dword [0x48c570], edx
-mov ax, word [eax + ref_00496b72] ; mov ax, word [eax + 0x496b72]
+mov ax, word [eax + (_players+10)] ; mov ax, word [eax + 0x496b72]
and eax, 0xffff
jmp short loc_004461ed ; jmp 0x4461ed
@@ -91950,7 +91951,7 @@ cmp eax, 4
jge short loc_004462e2 ; jge 0x4462e2
jge short loc_004462e7 ; jge 0x4462e7
imul eax, eax, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_004462e7 ; je 0x4462e7
loc_004462e2:
@@ -92013,7 +92014,7 @@ jmp near loc_004465ba ; jmp 0x4465ba
loc_0044639a:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ecx, ecx
-mov cx, word [eax + ref_00496b74] ; mov cx, word [eax + 0x496b74]
+mov cx, word [eax + (_players+12)] ; mov cx, word [eax + 0x496b74]
mov eax, ecx
shl eax, 2
add eax, ecx
@@ -92617,7 +92618,7 @@ call fcn_00445aa2 ; call 0x445aa2
add esp, 8
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ebx, dword [eax + (_tool_strings+0)] ; mov ebx, dword [eax + 0x480d5a]
@@ -92627,17 +92628,17 @@ push ecx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dx, word [eax + ref_00496b70] ; mov dx, word [eax + 0x496b70]
+mov dx, word [eax + (_players+8)] ; mov dx, word [eax + 0x496b70]
mov word [ref_00498e68], dx ; mov word [0x498e68], dx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
mov word [ref_00498e6a], dx ; mov word [0x498e6a], dx
-mov dx, word [eax + ref_00496b74] ; mov dx, word [eax + 0x496b74]
+mov dx, word [eax + (_players+12)] ; mov dx, word [eax + 0x496b74]
mov word [ref_00498e6c], dx ; mov word [0x498e6c], dx
-mov dx, word [eax + ref_00496b76] ; mov dx, word [eax + 0x496b76]
+mov dx, word [eax + (_players+14)] ; mov dx, word [eax + 0x496b76]
mov word [ref_00498e6e], dx ; mov word [0x498e6e], dx
mov dl, byte [_current_player] ; mov dl, byte [0x49910c]
mov byte [ref_00498e70], dl ; mov byte [0x498e70], dl
-mov al, byte [eax + ref_00496b78] ; mov al, byte [eax + 0x496b78]
+mov al, byte [eax + (_players+16)] ; mov al, byte [eax + 0x496b78]
mov byte [ref_00498e71], al ; mov byte [0x498e71], al
xor ah, ah
mov byte [ref_00498e72], ah ; mov byte [0x498e72], ah
@@ -92653,7 +92654,7 @@ fcn_00446baa:
push ebx
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+4)] ; mov ecx, dword [eax + 0x480d5e]
@@ -92663,7 +92664,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00446bed ; jne 0x446bed
push 1
call fcn_00446ae8 ; call 0x446ae8
@@ -92698,9 +92699,9 @@ movsx eax, word [eax]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push ecx
@@ -92729,7 +92730,7 @@ fcn_00446c88:
push ebx
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+8)] ; mov ecx, dword [eax + 0x480d62]
@@ -92739,7 +92740,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00446cce ; jne 0x446cce
push 0x10001
call fcn_00446ae8 ; call 0x446ae8
@@ -92774,9 +92775,9 @@ movsx eax, word [eax]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push ecx
@@ -92805,7 +92806,7 @@ fcn_00446d69:
push ebx
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+12)] ; mov ecx, dword [eax + 0x480d66]
@@ -92815,7 +92816,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00446daf ; jne 0x446daf
push 0x20001
call fcn_00446ae8 ; call 0x446ae8
@@ -92850,9 +92851,9 @@ movsx eax, word [eax]
push eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
push ecx
@@ -92882,7 +92883,7 @@ push ebx
push esi
push edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
cmp dl, 1
jne short loc_00446e66 ; jne 0x446e66
xor edx, edx
@@ -92902,8 +92903,8 @@ inc byte [eax + ref_00499161] ; inc byte [eax + 0x499161]
loc_00446e85:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov byte [eax + ref_00496b79], 1 ; mov byte [eax + 0x496b79], 1
-mov byte [eax + ref_00496b7a], 2 ; mov byte [eax + 0x496b7a], 2
+mov byte [eax + (_players+17)], 1 ; mov byte [eax + 0x496b79], 1
+mov byte [eax + (_players+18)], 2 ; mov byte [eax + 0x496b7a], 2
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
push ebx
call fcn_0040b93b ; call 0x40b93b
@@ -92915,7 +92916,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov edi, dword [eax + (_tool_strings+16)] ; mov edi, dword [eax + 0x480d6a]
@@ -92946,7 +92947,7 @@ push ebx
push esi
push edi
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
cmp dl, 2
jne short loc_00446f1e ; jne 0x446f1e
xor edx, edx
@@ -92966,8 +92967,8 @@ inc byte [eax + ref_00499160] ; inc byte [eax + 0x499160]
loc_00446f3d:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov byte [eax + ref_00496b79], 2 ; mov byte [eax + 0x496b79], 2
-mov byte [eax + ref_00496b7a], 3 ; mov byte [eax + 0x496b7a], 3
+mov byte [eax + (_players+17)], 2 ; mov byte [eax + 0x496b79], 2
+mov byte [eax + (_players+18)], 3 ; mov byte [eax + 0x496b7a], 3
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
push ebx
call fcn_0040b93b ; call 0x40b93b
@@ -92979,7 +92980,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov edi, dword [eax + (_tool_strings+20)] ; mov edi, dword [eax + 0x480d6e]
@@ -93006,7 +93007,7 @@ push ebp
sub esp, 8
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+24)] ; mov ecx, dword [eax + 0x480d72]
@@ -93016,7 +93017,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00447007 ; jne 0x447007
push 0x300c0
call fcn_00446ae8 ; call 0x446ae8
@@ -93081,7 +93082,7 @@ loc_004470a1:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_004470ea ; jge 0x4470ea
imul eax, ebx, 0x68
-test byte [eax + ref_00496b7d], 0x40 ; test byte [eax + 0x496b7d], 0x40
+test byte [eax + (_players+21)], 0x40 ; test byte [eax + 0x496b7d], 0x40
je short loc_004470e7 ; je 0x4470e7
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -93124,7 +93125,7 @@ push edi
push ebp
sub esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne near loc_00447250 ; jne 0x447250
push 0
push 0
@@ -93136,7 +93137,7 @@ add esp, 0x10
mov dword [ref_0048c55c], eax ; mov dword [0x48c55c], eax
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov esi, dword [eax + (_tool_strings+28)] ; mov esi, dword [eax + 0x480d76]
@@ -93262,7 +93263,7 @@ sub esp, 8
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul ebx, edx, 0x68
xor eax, eax
-mov al, byte [ebx + ref_00496b7b] ; mov al, byte [ebx + 0x496b7b]
+mov al, byte [ebx + (_players+19)] ; mov al, byte [ebx + 0x496b7b]
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+32)] ; mov ecx, dword [eax + 0x480d7a]
push ecx
@@ -93271,7 +93272,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_004472de ; jne 0x4472de
push 0x2090006
call fcn_00446ae8 ; call 0x446ae8
@@ -93348,7 +93349,7 @@ push ebx
push esi
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+36)] ; mov ecx, dword [eax + 0x480d7e]
@@ -93411,7 +93412,7 @@ sub esp, 0x28
xor esi, esi
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+40)] ; mov ecx, dword [eax + 0x480d82]
@@ -93421,7 +93422,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00447478 ; jne 0x447478
push 0x1200036
call fcn_00446ae8 ; call 0x446ae8
@@ -93561,7 +93562,7 @@ call fcn_0040d293 ; call 0x40d293
add esp, 4
mov dword [esp + 8], eax
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_0044765f ; jne 0x44765f
push 0x2090001
call fcn_00446ae8 ; call 0x446ae8
@@ -93617,7 +93618,7 @@ mov eax, dword [esp + 8]
cmp eax, 4
jge short loc_004476ef ; jge 0x4476ef
imul ebp, eax, 0x68
-movzx ebp, byte [ebp + ref_00496b78] ; movzx ebp, byte [ebp + 0x496b78]
+movzx ebp, byte [ebp + (_players+16)] ; movzx ebp, byte [ebp + 0x496b78]
jmp short loc_004476fb ; jmp 0x4476fb
loc_004476ef:
@@ -93727,7 +93728,7 @@ loc_004477e2:
mov ecx, dword [esp + 8]
imul ebx, ecx, 0x68
xor edx, edx
-mov dx, word [ebx + ref_00496b74] ; mov dx, word [ebx + 0x496b74]
+mov dx, word [ebx + (_players+12)] ; mov dx, word [ebx + 0x496b74]
mov eax, edx
shl eax, 2
add edx, eax
@@ -93738,20 +93739,20 @@ mov edx, edi
not edx
and dword [eax + 0x24], edx
mov eax, dword [esp + 0x14]
-mov word [ebx + ref_00496b74], ax ; mov word [ebx + 0x496b74], ax
-mov word [ebx + ref_00496b76], si ; mov word [ebx + 0x496b76], si
+mov word [ebx + (_players+12)], ax ; mov word [ebx + 0x496b74], ax
+mov word [ebx + (_players+14)], si ; mov word [ebx + 0x496b76], si
mov al, byte [esp + 0x20]
-mov byte [ebx + ref_00496b78], al ; mov byte [ebx + 0x496b78], al
+mov byte [ebx + (_players+16)], al ; mov byte [ebx + 0x496b78], al
mov eax, dword [esp + 0x18]
mov ax, word [eax]
-mov word [ebx + ref_00496b70], ax ; mov word [ebx + 0x496b70], ax
+mov word [ebx + (_players+8)], ax ; mov word [ebx + 0x496b70], ax
mov eax, dword [esp + 0x18]
mov ax, word [eax + 2]
-mov word [ebx + ref_00496b72], ax ; mov word [ebx + 0x496b72], ax
+mov word [ebx + (_players+10)], ax ; mov word [ebx + 0x496b72], ax
push ecx
call fcn_0040fc00 ; call 0x40fc00
add esp, 4
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je short loc_004478bc ; je 0x4478bc
jmp short loc_004478b5 ; jmp 0x4478b5
@@ -93892,7 +93893,7 @@ push ebx
push edi
push ebp
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
and dl, 3
cmp dl, 3
jne short loc_004479f1 ; jne 0x4479f1
@@ -93900,7 +93901,7 @@ xor edx, edx
jmp near loc_00447ac8 ; jmp 0x447ac8
loc_004479f1:
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne short loc_00447a14 ; jne 0x447a14
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
mov eax, edx
@@ -93914,7 +93915,7 @@ inc byte [eax + ref_00499160] ; inc byte [eax + 0x499160]
loc_00447a14:
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne short loc_00447a3a ; jne 0x447a3a
mov eax, ecx
shl eax, 2
@@ -93927,12 +93928,12 @@ inc byte [eax + ref_00499161] ; inc byte [eax + 0x499161]
loc_00447a3a:
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
-mov dl, byte [eax + ref_00496b79] ; mov dl, byte [eax + 0x496b79]
-mov byte [eax + ref_00496bcc], dl ; mov byte [eax + 0x496bcc], dl
-mov dl, byte [eax + ref_00496b7a] ; mov dl, byte [eax + 0x496b7a]
-mov byte [eax + ref_00496bcd], dl ; mov byte [eax + 0x496bcd], dl
-mov byte [eax + ref_00496b79], 0x1f ; mov byte [eax + 0x496b79], 0x1f
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov dl, byte [eax + (_players+17)] ; mov dl, byte [eax + 0x496b79]
+mov byte [eax + (_players+100)], dl ; mov byte [eax + 0x496bcc], dl
+mov dl, byte [eax + (_players+18)] ; mov dl, byte [eax + 0x496b7a]
+mov byte [eax + (_players+101)], dl ; mov byte [eax + 0x496bcd], dl
+mov byte [eax + (_players+17)], 0x1f ; mov byte [eax + 0x496b79], 0x1f
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
push ebx
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -93943,7 +93944,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ebp, dword [eax + (_tool_strings+44)] ; mov ebp, dword [eax + 0x480d86]
@@ -93976,7 +93977,7 @@ push ebp
sub esp, 8
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
imul eax, edx, 0x68
-mov al, byte [eax + ref_00496b7b] ; mov al, byte [eax + 0x496b7b]
+mov al, byte [eax + (_players+19)] ; mov al, byte [eax + 0x496b7b]
and eax, 0xff
imul eax, eax, 0x68
mov ecx, dword [eax + (_tool_strings+48)] ; mov ecx, dword [eax + 0x480d8a]
@@ -93986,7 +93987,7 @@ push edx
call fcn_0044ef41 ; call 0x44ef41
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 1 ; cmp byte [eax + 0x496b7d], 1
+cmp byte [eax + (_players+21)], 1 ; cmp byte [eax + 0x496b7d], 1
jne short loc_00447b19 ; jne 0x447b19
push 0x400c0
call fcn_00446ae8 ; call 0x446ae8
@@ -94051,7 +94052,7 @@ loc_00447bb3:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_004470ea ; jge 0x4470ea
imul eax, ebx, 0x68
-test byte [eax + ref_00496b7d], 0x40 ; test byte [eax + 0x496b7d], 0x40
+test byte [eax + (_players+21)], 0x40 ; test byte [eax + 0x496b7d], 0x40
je short loc_00447bfd ; je 0x447bfd
mov edx, dword [ref_004990e8] ; mov edx, dword [0x4990e8]
mov eax, edx
@@ -94086,7 +94087,7 @@ add eax, edx
mov edx, eax
shl eax, 2
sub eax, edx
-mov dl, byte [ecx + ref_00496b79] ; mov dl, byte [ecx + 0x496b79]
+mov dl, byte [ecx + (_players+17)] ; mov dl, byte [ecx + 0x496b79]
cmp dl, 1
jne short loc_00447c2b ; jne 0x447c2b
add byte [eax + ref_00499160], dl ; add byte [eax + 0x499160], dl
@@ -94100,8 +94101,8 @@ inc byte [eax + ref_00499161] ; inc byte [eax + 0x499161]
loc_00447c36:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor cl, cl
-mov byte [eax + ref_00496b79], cl ; mov byte [eax + 0x496b79], cl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], cl ; mov byte [eax + 0x496b79], cl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
push ebx
call fcn_0040b93b ; call 0x40b93b
@@ -94234,7 +94235,7 @@ push edi
push ebp
sub esp, 0x4c
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov dl, byte [eax + ref_00496b7d] ; mov dl, byte [eax + 0x496b7d]
+mov dl, byte [eax + (_players+21)] ; mov dl, byte [eax + 0x496b7d]
cmp dl, 1
jne near loc_00447f82 ; jne 0x447f82
call fcn_0041d546 ; call 0x41d546
@@ -94255,7 +94256,7 @@ call fcn_00447c6e ; call 0x447c6e
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
lea edx, [ebx + 0x18]
-mov cl, byte [eax + ref_00496b79] ; mov cl, byte [eax + 0x496b79]
+mov cl, byte [eax + (_players+17)] ; mov cl, byte [eax + 0x496b79]
cmp cl, 1
jne short loc_00447e08 ; jne 0x447e08
push 0x75
@@ -94396,7 +94397,7 @@ ret
loc_00447f82:
test dl, 6
je short loc_00447f7a ; je 0x447f7a
-test byte [eax + ref_00496b7e], 2 ; test byte [eax + 0x496b7e], 2
+test byte [eax + (_players+22)], 2 ; test byte [eax + 0x496b7e], 2
je short loc_00447f7a ; je 0x447f7a
push 0xd
push 0
@@ -94506,7 +94507,7 @@ cmp edx, 4
jge near loc_00448541 ; jge 0x448541
jge short loc_004480ad ; jge 0x4480ad
imul eax, edx, 0x68
-test byte [eax + ref_00496b7d], 1 ; test byte [eax + 0x496b7d], 1
+test byte [eax + (_players+21)], 1 ; test byte [eax + 0x496b7d], 1
je near loc_00448541 ; je 0x448541
loc_004480ad:
@@ -94526,7 +94527,7 @@ mov dword [eax + ref_0048cb80], 1 ; mov dword [eax + 0x48cb80], 1
mov edx, dword [ref_00497160] ; mov edx, dword [0x497160]
mov dword [eax + ref_0048cb84], edx ; mov dword [eax + 0x48cb84], edx
push 0x1a0
-push ref_00496b68 ; push 0x496b68
+push (_players+0) ; push 0x496b68
add eax, ref_0048cb80 ; add eax, 0x48cb80
add eax, 8
push eax
@@ -94894,7 +94895,7 @@ push 0x1a0
add eax, ref_0048cb80 ; add eax, 0x48cb80
add eax, 8
push eax
-push ref_00496b68 ; push 0x496b68
+push (_players+0) ; push 0x496b68
call _memcpy ; call 0x456de8
add esp, 0xc
xor ebx, ebx
@@ -94905,10 +94906,10 @@ cmp ebx, ecx
jge short loc_004485c7 ; jge 0x4485c7
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
imul edx, edx, 0x68
mov edx, dword [edx + _rich4_players] ; mov edx, dword [edx + 0x47e80c]
-mov dword [eax + ref_00496b68], edx ; mov dword [eax + 0x496b68], edx
+mov dword [eax + (_players+0)], edx ; mov dword [eax + 0x496b68], edx
inc ebx
jmp short loc_004485a6 ; jmp 0x4485a6
@@ -95296,7 +95297,7 @@ push esi
mov esi, dword [esp + 0xc]
xor ebx, ebx
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_00448b6e ; je 0x448b6e
mov ecx, dword [esp + 0x10]
mov edx, ecx
@@ -95305,13 +95306,13 @@ add edx, ecx
mov ecx, dword [ref_00498e80] ; mov ecx, dword [0x498e80]
mov dx, word [ecx + edx*8 + 0x20]
and edx, 0xffff
-mov cl, byte [eax + ref_00496b79] ; mov cl, byte [eax + 0x496b79]
+mov cl, byte [eax + (_players+17)] ; mov cl, byte [eax + 0x496b79]
and cl, 0x83
cmp cl, 3
jne near loc_00448b6e ; jne 0x448b6e
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_00448b6e ; jne 0x448b6e
-cmp byte [eax + ref_00496b9a], 0 ; cmp byte [eax + 0x496b9a], 0
+cmp byte [eax + (_players+50)], 0 ; cmp byte [eax + 0x496b9a], 0
jne near loc_00448b6e ; jne 0x448b6e
cmp edx, 0x7d0
jle short loc_00448b12 ; jle 0x448b12
@@ -95619,7 +95620,7 @@ jge short loc_00448dec ; jge 0x448dec
loc_00448dc5:
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00448dbf ; je 0x448dbf
mov ecx, ebx
shl ecx, 2
@@ -95641,9 +95642,9 @@ loc_00448df1:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00448d06 ; jge 0x448d06
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00448e16 ; je 0x448e16
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
je near loc_00448ec3 ; je 0x448ec3
loc_00448e16:
@@ -95657,9 +95658,9 @@ loc_00448e1b:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_00448d06 ; jge 0x448d06
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00448e40 ; je 0x448e40
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
jne near loc_00448ec3 ; jne 0x448ec3
loc_00448e40:
@@ -95778,7 +95779,7 @@ push eax
call fcn_004562a5 ; call 0x4562a5
add esp, 0x10
imul eax, ebx, 0x68
-mov byte [eax + ref_00496b9c], 0x80 ; mov byte [eax + 0x496b9c], 0x80
+mov byte [eax + (_players+52)], 0x80 ; mov byte [eax + 0x496b9c], 0x80
xor dh, dh
mov byte [ebx + ref_00496b30], dh ; mov byte [ebx + 0x496b30], dh
add esi, 0x2a
@@ -95834,12 +95835,12 @@ add esp, 0x10
imul eax, ebx, 0x68
add esi, 0x2a
mov dl, byte [esp + 0x80]
-mov dh, byte [eax + ref_00496b9c] ; mov dh, byte [eax + 0x496b9c]
+mov dh, byte [eax + (_players+52)] ; mov dh, byte [eax + 0x496b9c]
add dh, dl
-mov byte [eax + ref_00496b9c], dh ; mov byte [eax + 0x496b9c], dh
+mov byte [eax + (_players+52)], dh ; mov byte [eax + 0x496b9c], dh
mov cl, dh
and cl, 0x7f
-mov byte [eax + ref_00496b9c], cl ; mov byte [eax + 0x496b9c], cl
+mov byte [eax + (_players+52)], cl ; mov byte [eax + 0x496b9c], cl
jmp short loc_00448fa2 ; jmp 0x448fa2
loc_00448ffd:
@@ -95889,7 +95890,7 @@ push eax
call fcn_004562a5 ; call 0x4562a5
add esp, 0x10
imul eax, ebx, 0x68
-mov byte [eax + ref_00496b9d], 0x80 ; mov byte [eax + 0x496b9d], 0x80
+mov byte [eax + (_players+53)], 0x80 ; mov byte [eax + 0x496b9d], 0x80
xor dh, dh
mov byte [ebx + ref_00496b60], dh ; mov byte [ebx + 0x496b60], dh
add esi, 0x2a
@@ -95945,12 +95946,12 @@ add esp, 0x10
imul eax, ebx, 0x68
add esi, 0x2a
mov dl, byte [esp + 0x80]
-mov dh, byte [eax + ref_00496b9d] ; mov dh, byte [eax + 0x496b9d]
+mov dh, byte [eax + (_players+53)] ; mov dh, byte [eax + 0x496b9d]
add dh, dl
-mov byte [eax + ref_00496b9d], dh ; mov byte [eax + 0x496b9d], dh
+mov byte [eax + (_players+53)], dh ; mov byte [eax + 0x496b9d], dh
mov cl, dh
and cl, 0x7f
-mov byte [eax + ref_00496b9d], cl ; mov byte [eax + 0x496b9d], cl
+mov byte [eax + (_players+53)], cl ; mov byte [eax + 0x496b9d], cl
jmp short loc_004490de ; jmp 0x4490de
fcn_0044913d:
@@ -96069,7 +96070,7 @@ loc_0044926e:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_00449290 ; jge 0x449290
imul eax, ebx, 0x68
-test byte [eax + ref_00496b7d], 0x40 ; test byte [eax + 0x496b7d], 0x40
+test byte [eax + (_players+21)], 0x40 ; test byte [eax + 0x496b7d], 0x40
je short loc_0044928d ; je 0x44928d
push 3
push ebx
@@ -96258,7 +96259,7 @@ je short loc_004494d5 ; je 0x4494d5
dec eax
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -96660,7 +96661,7 @@ loc_0044994c:
cmp eax, edi
jge short loc_00449976 ; jge 0x449976
imul ecx, eax, 0x68
-cmp byte [ecx + ref_00496b7d], 0 ; cmp byte [ecx + 0x496b7d], 0
+cmp byte [ecx + (_players+21)], 0 ; cmp byte [ecx + 0x496b7d], 0
je short loc_00449973 ; je 0x449973
mov ecx, eax
shl ecx, 2
@@ -96676,7 +96677,7 @@ jmp short loc_0044994c ; jmp 0x44994c
loc_00449976:
imul eax, dword [ref_0048c59c], 0x68 ; imul eax, dword [0x48c59c], 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0x84]
push eax
@@ -96736,9 +96737,9 @@ loc_00449a24:
push 2
imul eax, dword [ref_0048c59c], 0x68 ; imul eax, dword [0x48c59c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -96824,7 +96825,7 @@ loc_00449b22:
cmp eax, edi
jge short loc_00449b4c ; jge 0x449b4c
imul ecx, eax, 0x68
-cmp byte [ecx + ref_00496b7d], 0 ; cmp byte [ecx + 0x496b7d], 0
+cmp byte [ecx + (_players+21)], 0 ; cmp byte [ecx + 0x496b7d], 0
je short loc_00449b49 ; je 0x449b49
mov ecx, eax
shl ecx, 2
@@ -96840,7 +96841,7 @@ jmp short loc_00449b22 ; jmp 0x449b22
loc_00449b4c:
imul eax, dword [ref_0048c59c], 0x68 ; imul eax, dword [0x48c59c], 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0x84]
push eax
@@ -96907,7 +96908,7 @@ loc_00449bfd:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge short loc_00449c2c ; jge 0x449c2c
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00449c29 ; je 0x449c29
mov eax, esi
shl eax, 2
@@ -96923,7 +96924,7 @@ jmp short loc_00449bfd ; jmp 0x449bfd
loc_00449c2c:
imul eax, dword [ref_0048c59c], 0x68 ; imul eax, dword [0x48c59c], 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -96977,9 +96978,9 @@ loc_00449cd2:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge near loc_0044972a ; jge 0x44972a
imul edx, ebx, 0x68
-cmp byte [edx + ref_00496b7d], 0 ; cmp byte [edx + 0x496b7d], 0
+cmp byte [edx + (_players+21)], 0 ; cmp byte [edx + 0x496b7d], 0
je near loc_00449d99 ; je 0x449d99
-fild dword [edx + ref_00496b84] ; fild dword [edx + 0x496b84]
+fild dword [edx + (_players+28)] ; fild dword [edx + 0x496b84]
fmul qword [ref_004655a4] ; fmul qword [0x4655a4]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x94]
@@ -96989,7 +96990,7 @@ mov eax, dword [esp + 0x94]
mov dword [esi + ref_0048c59c], eax ; mov dword [esi + 0x48c59c], eax
test eax, eax
je short loc_00449d99 ; je 0x449d99
-mov ecx, dword [edx + ref_00496b68] ; mov ecx, dword [edx + 0x496b68]
+mov ecx, dword [edx + (_players+0)] ; mov ecx, dword [edx + 0x496b68]
push ecx
lea eax, [esp + 0x84]
push eax
@@ -97041,7 +97042,7 @@ jge near loc_0044972a ; jge 0x44972a
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne near loc_0044972a ; jne 0x44972a
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_00449de3 ; je 0x449de3
mov eax, ebx
shl eax, 2
@@ -97097,7 +97098,7 @@ loc_00449e50:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge near loc_0044a01e ; jge 0x44a01e
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_00449fd9 ; je 0x449fd9
mov dword [esp + 0xa4], 1
mov edx, dword [ref_00498e84] ; mov edx, dword [0x498e84]
@@ -97169,7 +97170,7 @@ mov dword [ebx + ref_0048c59c], eax ; mov dword [ebx + 0x48c59c], eax
test eax, eax
je near loc_00449fd9 ; je 0x449fd9
imul eax, esi, 0x68
-mov edx, dword [eax + ref_00496b68] ; mov edx, dword [eax + 0x496b68]
+mov edx, dword [eax + (_players+0)] ; mov edx, dword [eax + 0x496b68]
push edx
lea eax, [esp + 0x84]
push eax
@@ -97221,7 +97222,7 @@ jge short loc_0044a01e ; jge 0x44a01e
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne short loc_0044a01e ; jne 0x44a01e
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0044a01b ; je 0x44a01b
mov eax, esi
shl eax, 2
@@ -97285,7 +97286,7 @@ loc_0044a08f:
cmp ebx, dword [_nplayers] ; cmp ebx, dword [0x499114]
jge short loc_0044a01e ; jge 0x44a01e
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0044a1d3 ; je 0x44a1d3
xor edx, edx
mov dword [esp + 0xa4], edx
@@ -97333,7 +97334,7 @@ mov dword [esi + ref_0048c59c], eax ; mov dword [esi + 0x48c59c], eax
test eax, eax
je near loc_0044a1d3 ; je 0x44a1d3
imul eax, ebx, 0x68
-mov edi, dword [eax + ref_00496b68] ; mov edi, dword [eax + 0x496b68]
+mov edi, dword [eax + (_players+0)] ; mov edi, dword [eax + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -97385,7 +97386,7 @@ jge near loc_0044a01e ; jge 0x44a01e
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne near loc_0044a01e ; jne 0x44a01e
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0044a21d ; je 0x44a21d
mov eax, ebx
shl eax, 2
@@ -97670,7 +97671,7 @@ je short loc_0044a5cb ; je 0x44a5cb
dec ebx
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -97720,9 +97721,9 @@ loc_0044a606:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge short loc_0044a5d2 ; jge 0x44a5d2
imul ebx, esi, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je short loc_0044a654 ; je 0x44a654
-cmp byte [ebx + ref_00496b79], 0 ; cmp byte [ebx + 0x496b79], 0
+cmp byte [ebx + (_players+17)], 0 ; cmp byte [ebx + 0x496b79], 0
jne short loc_0044a654 ; jne 0x44a654
lea eax, [edi + 0xc]
push eax
@@ -97736,7 +97737,7 @@ add eax, 0xc
push eax
call fcn_004562a5 ; call 0x4562a5
add esp, 0x10
-mov byte [ebx + ref_00496ba0], 1 ; mov byte [ebx + 0x496ba0], 1
+mov byte [ebx + (_players+56)], 1 ; mov byte [ebx + 0x496ba0], 1
add edi, 0x20
loc_0044a654:
@@ -97766,9 +97767,9 @@ loc_0044a68b:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge near loc_0044a5d2 ; jge 0x44a5d2
imul ebx, esi, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je short loc_0044a6dd ; je 0x44a6dd
-cmp byte [ebx + ref_00496b79], 0 ; cmp byte [ebx + 0x496b79], 0
+cmp byte [ebx + (_players+17)], 0 ; cmp byte [ebx + 0x496b79], 0
je short loc_0044a6dd ; je 0x44a6dd
lea eax, [edi + 0xc]
push eax
@@ -97782,7 +97783,7 @@ add eax, 0xc
push eax
call fcn_004562a5 ; call 0x4562a5
add esp, 0x10
-mov byte [ebx + ref_00496ba0], 1 ; mov byte [ebx + 0x496ba0], 1
+mov byte [ebx + (_players+56)], 1 ; mov byte [ebx + 0x496ba0], 1
add edi, 0x20
loc_0044a6dd:
@@ -98105,7 +98106,7 @@ je short loc_0044ab21 ; je 0x44ab21
lea eax, [edx - 1]
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -98384,7 +98385,7 @@ je near loc_0044ab21 ; je 0x44ab21
dec eax
imul eax, eax, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -98420,9 +98421,9 @@ loc_0044aebe:
cmp edx, ecx
jge near loc_0044ac97 ; jge 0x44ac97
imul eax, edx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0044aed8 ; je 0x44aed8
-mov byte [eax + ref_00496ba4], bh ; mov byte [eax + 0x496ba4], bh
+mov byte [eax + (_players+60)], bh ; mov byte [eax + 0x496ba4], bh
loc_0044aed8:
inc edx
@@ -98453,12 +98454,12 @@ loc_0044af1a:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge near loc_0044972a ; jge 0x44972a
imul ebx, esi, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je near loc_0044b004 ; je 0x44b004
-mov ebp, dword [ebx + ref_00496b8c] ; mov ebp, dword [ebx + 0x496b8c]
+mov ebp, dword [ebx + (_players+36)] ; mov ebp, dword [ebx + 0x496b8c]
test ebp, ebp
jne near loc_0044b004 ; jne 0x44b004
-fild dword [ebx + ref_00496b88] ; fild dword [ebx + 0x496b88]
+fild dword [ebx + (_players+32)] ; fild dword [ebx + 0x496b88]
fmul qword [ref_00465734] ; fmul qword [0x465734]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x94]
@@ -98475,7 +98476,7 @@ push 0xf0f0f0
push 0x18
call fcn_0044f9d8 ; call 0x44f9d8
add esp, 0x14
-mov edx, dword [ebx + ref_00496b68] ; mov edx, dword [ebx + 0x496b68]
+mov edx, dword [ebx + (_players+0)] ; mov edx, dword [ebx + 0x496b68]
push edx
lea ebx, [esp + 0x84]
push ebx
@@ -98770,7 +98771,7 @@ xor eax, eax
mov al, byte [ebx + 0x18]
dec eax
imul eax, eax, 0x68
-mov ebp, dword [eax + ref_00496b68] ; mov ebp, dword [eax + 0x496b68]
+mov ebp, dword [eax + (_players+0)] ; mov ebp, dword [eax + 0x496b68]
push ebp
lea eax, [esp + 0xb4]
push eax
@@ -98805,9 +98806,9 @@ loc_0044b323:
push 2
imul eax, dword [ref_0048c59c], 0x68 ; imul eax, dword [0x48c59c], 0x68
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -99266,7 +99267,7 @@ cmp dword [esp + 0x14], 0
jne near loc_0044b9d3 ; jne 0x44b9d3
cmp dword [esp + 0x18], 0
jne near loc_0044b94b ; jne 0x44b94b
-mov si, word [eax + ref_00496bae] ; mov si, word [eax + 0x496bae]
+mov si, word [eax + (_players+70)] ; mov si, word [eax + 0x496bae]
cmp si, 0x64
jle short loc_0044b8d5 ; jle 0x44b8d5
mov ebx, 2
@@ -99293,7 +99294,7 @@ jne short loc_0044b91e ; jne 0x44b91e
loc_0044b8fa:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov ebp, dword [eax*4 + ref_0047ed76] ; mov ebp, dword [eax*4 + 0x47ed76]
push ebp
@@ -99306,7 +99307,7 @@ jne near loc_0044ba5c ; jne 0x44ba5c
loc_0044b927:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov esi, dword [eax*4 + ref_0047ed76] ; mov esi, dword [eax*4 + 0x47ed76]
push esi
@@ -99314,7 +99315,7 @@ push ref_0046589b ; push 0x46589b
jmp near loc_0044ba4f ; jmp 0x44ba4f
loc_0044b94b:
-mov di, word [eax + ref_00496bae] ; mov di, word [eax + 0x496bae]
+mov di, word [eax + (_players+70)] ; mov di, word [eax + 0x496bae]
cmp di, 0x64
jle short loc_0044b95f ; jle 0x44b95f
mov ebx, 1
@@ -99340,7 +99341,7 @@ jne short loc_0044b9a6 ; jne 0x44b9a6
loc_0044b982:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov edi, dword [eax*4 + ref_0047ed76] ; mov edi, dword [eax*4 + 0x47ed76]
push edi
@@ -99353,7 +99354,7 @@ jne near loc_0044ba5c ; jne 0x44ba5c
loc_0044b9af:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov edx, dword [eax*4 + ref_0047ed76] ; mov edx, dword [eax*4 + 0x47ed76]
push edx
@@ -99361,7 +99362,7 @@ push ref_004658c1 ; push 0x4658c1
jmp near loc_0044ba4f ; jmp 0x44ba4f
loc_0044b9d3:
-mov dx, word [eax + ref_00496bb0] ; mov dx, word [eax + 0x496bb0]
+mov dx, word [eax + (_players+72)] ; mov dx, word [eax + 0x496bb0]
cmp dx, 0x64
jle short loc_0044b9e7 ; jle 0x44b9e7
mov ebx, 1
@@ -99387,7 +99388,7 @@ jne short loc_0044ba2b ; jne 0x44ba2b
loc_0044ba0a:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov edi, dword [eax*4 + ref_0047ed76] ; mov edi, dword [eax*4 + 0x47ed76]
push edi
@@ -99400,7 +99401,7 @@ jne short loc_0044ba5c ; jne 0x44ba5c
loc_0044ba30:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-mov al, byte [eax + ref_00496ba7] ; mov al, byte [eax + 0x496ba7]
+mov al, byte [eax + (_players+63)] ; mov al, byte [eax + 0x496ba7]
and eax, 0xff
mov edx, dword [eax*4 + ref_0047ed76] ; mov edx, dword [eax*4 + 0x47ed76]
push edx
@@ -99425,7 +99426,7 @@ push esi
push ebp
sub esp, 0x80
imul eax, dword [esp + 0x90], 0x68
-cmp byte [eax + ref_00496ba6], 0 ; cmp byte [eax + 0x496ba6], 0
+cmp byte [eax + (_players+62)], 0 ; cmp byte [eax + 0x496ba6], 0
je short loc_0044bae0 ; je 0x44bae0
mov ebx, 1
mov edx, dword [ref_00498e7c] ; mov edx, dword [0x498e7c]
@@ -99672,15 +99673,15 @@ jmp near loc_0044be0f ; jmp 0x44be0f
loc_0044bcb1:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
je short loc_0044bcd5 ; je 0x44bcd5
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne near loc_0044be0d ; jne 0x44be0d
loc_0044bcd5:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne near loc_0044be0f ; jne 0x44be0f
mov dword [edx], 0xb
jmp near loc_0044be0f ; jmp 0x44be0f
@@ -99688,15 +99689,15 @@ jmp near loc_0044be0f ; jmp 0x44be0f
loc_0044bcf4:
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
je short loc_0044bd16 ; je 0x44bd16
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b79], 2 ; cmp byte [eax + 0x496b79], 2
+cmp byte [eax + (_players+17)], 2 ; cmp byte [eax + 0x496b79], 2
jne near loc_0044be0d ; jne 0x44be0d
loc_0044bd16:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne near loc_0044be0f ; jne 0x44be0f
mov dword [edx], 0xa
jmp near loc_0044be0f ; jmp 0x44be0f
@@ -99704,21 +99705,21 @@ jmp near loc_0044be0f ; jmp 0x44be0f
loc_0044bd35:
mov esi, dword [_current_player] ; mov esi, dword [0x49910c]
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
je short loc_0044bd57 ; je 0x44bd57
imul eax, esi, 0x68
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne near loc_0044be0d ; jne 0x44be0d
loc_0044bd57:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 1 ; cmp byte [eax + 0x496b79], 1
+cmp byte [eax + (_players+17)], 1 ; cmp byte [eax + 0x496b79], 1
jne near loc_0044be0f ; jne 0x44be0f
mov dword [edx], 0xd
jmp near loc_0044be0f ; jmp 0x44be0f
loc_0044bd76:
-mov bh, byte [eax + ref_00496b79] ; mov bh, byte [eax + 0x496b79]
+mov bh, byte [eax + (_players+17)] ; mov bh, byte [eax + 0x496b79]
test bh, bh
je short loc_0044bd89 ; je 0x44bd89
cmp bh, 1
@@ -99726,13 +99727,13 @@ jne near loc_0044be0d ; jne 0x44be0d
loc_0044bd89:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
jne near loc_0044be0f ; jne 0x44be0f
mov dword [edx], 0xc
jmp near loc_0044be0f ; jmp 0x44be0f
loc_0044bda8:
-mov cl, byte [eax + ref_00496b79] ; mov cl, byte [eax + 0x496b79]
+mov cl, byte [eax + (_players+17)] ; mov cl, byte [eax + 0x496b79]
cmp cl, 2
ja near loc_0044be0d ; ja 0x44be0d
cmp cl, 1
@@ -99751,7 +99752,7 @@ mov dword [edx], 0x10
jmp short loc_0044be0f ; jmp 0x44be0f
loc_0044bdd1:
-mov ch, byte [eax + ref_00496b79] ; mov ch, byte [eax + 0x496b79]
+mov ch, byte [eax + (_players+17)] ; mov ch, byte [eax + 0x496b79]
cmp ch, 2
ja short loc_0044be0d ; ja 0x44be0d
test ch, ch
@@ -99766,7 +99767,7 @@ cmp ch, 2
jmp short loc_0044bdc7 ; jmp 0x44bdc7
loc_0044bded:
-mov bl, byte [eax + ref_00496b79] ; mov bl, byte [eax + 0x496b79]
+mov bl, byte [eax + (_players+17)] ; mov bl, byte [eax + 0x496b79]
cmp bl, 2
ja short loc_0044be0d ; ja 0x44be0d
test bl, bl
@@ -99900,7 +99901,7 @@ call fcn_004528b9 ; call 0x4528b9
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -100108,7 +100109,7 @@ loc_0044c1eb:
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
mov edx, dword [ref_0048c5b4] ; mov edx, dword [0x48c5b4]
-add dword [eax + ref_00496b8c], edx ; add dword [eax + 0x496b8c], edx
+add dword [eax + (_players+36)], edx ; add dword [eax + 0x496b8c], edx
push ebx
call fcn_00433b7e ; call 0x433b7e
add esp, 4
@@ -100173,7 +100174,7 @@ ret
loc_0044c2b3:
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-add byte [eax + ref_00496ba3], 0x1e ; add byte [eax + 0x496ba3], 0x1e
+add byte [eax + (_players+59)], 0x1e ; add byte [eax + 0x496ba3], 0x1e
ret
fcn_0044c2c2:
@@ -100226,11 +100227,11 @@ mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
cmp ebx, edi
je short loc_0044c3ab ; je 0x44c3ab
imul eax, ebx, 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je short loc_0044c3ab ; je 0x44c3ab
-cmp dword [eax + ref_00496b88], 0 ; cmp dword [eax + 0x496b88], 0
+cmp dword [eax + (_players+32)], 0 ; cmp dword [eax + 0x496b88], 0
je short loc_0044c3ab ; je 0x44c3ab
-fild dword [eax + ref_00496b88] ; fild dword [eax + 0x496b88]
+fild dword [eax + (_players+32)] ; fild dword [eax + 0x496b88]
fmul dword [esp + 0x84]
call fcn_00457dbc ; call 0x457dbc
fistp dword [esp + 0x80]
@@ -100293,7 +100294,7 @@ jge near loc_0044c57b ; jge 0x44c57b
cmp ebx, dword [_current_player] ; cmp ebx, dword [0x49910c]
je near loc_0044c575 ; je 0x44c575
imul esi, ebx, 0x68
-cmp byte [esi + ref_00496b7d], 0 ; cmp byte [esi + 0x496b7d], 0
+cmp byte [esi + (_players+21)], 0 ; cmp byte [esi + 0x496b7d], 0
je near loc_0044c575 ; je 0x44c575
push ebx
call fcn_00441262 ; call 0x441262
@@ -100302,7 +100303,7 @@ test eax, eax
je near loc_0044c575 ; je 0x44c575
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
lea ebp, [edi + 1]
-mov dl, byte [eax + ref_00496b7d] ; mov dl, byte [eax + 0x496b7d]
+mov dl, byte [eax + (_players+21)] ; mov dl, byte [eax + 0x496b7d]
cmp dl, 1
jbe short loc_0044c48b ; jbe 0x44c48b
push ebx
@@ -100332,7 +100333,7 @@ push ref_0048a068 ; push 0x48a068
push 0
push eax
call dword [edi + 0x64] ; ucall
-mov edi, dword [esi + ref_00496b68] ; mov edi, dword [esi + 0x496b68]
+mov edi, dword [esi + (_players+0)] ; mov edi, dword [esi + 0x496b68]
push edi
lea eax, [esp + 0x84]
push eax
@@ -100408,7 +100409,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -100786,7 +100787,7 @@ call fcn_0041d433 ; call 0x41d433
add esp, 4
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -100865,8 +100866,8 @@ loc_0044cad9:
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor dl, dl
-mov byte [eax + ref_00496b79], dl ; mov byte [eax + 0x496b79], dl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], dl ; mov byte [eax + 0x496b79], dl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
push ecx
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -100877,7 +100878,7 @@ call fcn_0041d476 ; call 0x41d476
add esp, 0xc
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -100958,8 +100959,8 @@ loc_0044cbea:
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
xor dl, dl
-mov byte [eax + ref_00496b79], dl ; mov byte [eax + 0x496b79], dl
-mov byte [eax + ref_00496b7a], 1 ; mov byte [eax + 0x496b7a], 1
+mov byte [eax + (_players+17)], dl ; mov byte [eax + 0x496b79], dl
+mov byte [eax + (_players+18)], 1 ; mov byte [eax + 0x496b7a], 1
push ebx
call fcn_0040b93b ; call 0x40b93b
add esp, 4
@@ -100971,7 +100972,7 @@ add esp, 0xc
mov edi, dword [_current_player] ; mov edi, dword [0x49910c]
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -101191,7 +101192,7 @@ loc_0044cec2:
call fcn_0041d2c6 ; call 0x41d2c6
add esp, 0x10
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b7d], 0 ; cmp byte [eax + 0x496b7d], 0
+cmp byte [eax + (_players+21)], 0 ; cmp byte [eax + 0x496b7d], 0
je near loc_0044d800 ; je 0x44d800
cmp byte [ref_0046caf8], 0 ; cmp byte [0x46caf8], 0
jne near loc_0044d800 ; jne 0x44d800
@@ -101217,7 +101218,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
jne short loc_0044cf4d ; jne 0x44cf4d
mov ebx, dword [esp + 0x94]
push ebx
@@ -101324,7 +101325,7 @@ push edi
push ebp
sub esp, 0x80
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
-cmp byte [eax + ref_00496b79], 0 ; cmp byte [eax + 0x496b79], 0
+cmp byte [eax + (_players+17)], 0 ; cmp byte [eax + 0x496b79], 0
jne short loc_0044d09c ; jne 0x44d09c
mov ebx, dword [esp + 0x94]
push ebx
@@ -101889,13 +101890,13 @@ imul ebx, esi, 0x68
push esi
call fcn_00445b3f ; call 0x445b3f
add esp, 4
-add word [ebx + ref_00496b98], ax ; add word [ebx + 0x496b98], ax
+add word [ebx + (_players+48)], ax ; add word [ebx + 0x496b98], ax
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul ebx, ebp, 0x68
push ebp
call fcn_00441f21 ; call 0x441f21
add esp, 4
-add word [ebx + ref_00496b98], ax ; add word [ebx + 0x496b98], ax
+add word [ebx + (_players+48)], ax ; add word [ebx + 0x496b98], ax
mov edx, dword [_current_player] ; mov edx, dword [0x49910c]
push edx
call fcn_0041d433 ; call 0x41d433
@@ -101903,7 +101904,7 @@ add esp, 4
mov ecx, dword [_current_player] ; mov ecx, dword [0x49910c]
imul eax, ecx, 0x68
xor ebx, ebx
-mov bl, byte [eax + ref_00496b7b] ; mov bl, byte [eax + 0x496b7b]
+mov bl, byte [eax + (_players+19)] ; mov bl, byte [eax + 0x496b7b]
mov eax, ebx
shl eax, 2
sub eax, ebx
@@ -101988,7 +101989,7 @@ call fcn_00440cac ; call 0x440cac
add esp, 8
imul eax, dword [_current_player], 0x68 ; imul eax, dword [0x49910c], 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -103935,19 +103936,19 @@ and dword [esp + 0x24], 0x7fff
loc_0044ef74:
imul eax, dword [esp + 0x24], 0x68
-cmp byte [eax + ref_00496b9b], 0 ; cmp byte [eax + 0x496b9b], 0
+cmp byte [eax + (_players+51)], 0 ; cmp byte [eax + 0x496b9b], 0
jne near loc_0044f228 ; jne 0x44f228
-cmp byte [eax + ref_00496b9f], 0 ; cmp byte [eax + 0x496b9f], 0
+cmp byte [eax + (_players+55)], 0 ; cmp byte [eax + 0x496b9f], 0
jne near loc_0044f228 ; jne 0x44f228
-cmp byte [eax + ref_00496b9e], 0 ; cmp byte [eax + 0x496b9e], 0
+cmp byte [eax + (_players+54)], 0 ; cmp byte [eax + 0x496b9e], 0
jne near loc_0044f228 ; jne 0x44f228
test edx, edx
je short loc_0044efc5 ; je 0x44efc5
push 0
xor edx, edx
-mov dx, word [eax + ref_00496b72] ; mov dx, word [eax + 0x496b72]
+mov dx, word [eax + (_players+10)] ; mov dx, word [eax + 0x496b72]
push edx
-mov ax, word [eax + ref_00496b70] ; mov ax, word [eax + 0x496b70]
+mov ax, word [eax + (_players+8)] ; mov ax, word [eax + 0x496b70]
and eax, 0xffff
push eax
call fcn_0041d476 ; call 0x41d476
@@ -104179,7 +104180,7 @@ imul eax, esi, 0x68
cmp edx, 0x64
jle short loc_0044f262 ; jle 0x44f262
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104193,7 +104194,7 @@ loc_0044f262:
cmp edx, 0x32
jle short loc_0044f292 ; jle 0x44f292
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104211,7 +104212,7 @@ loc_0044f292:
test edx, edx
je short loc_0044f2bd ; je 0x44f2bd
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104244,7 +104245,7 @@ imul eax, esi, 0x68
cmp edx, 6
jle short loc_0044f2f4 ; jle 0x44f2f4
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104258,7 +104259,7 @@ loc_0044f2f4:
cmp edx, 3
jle short loc_0044f324 ; jle 0x44f324
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104276,7 +104277,7 @@ loc_0044f324:
test edx, edx
je short loc_0044f34f ; je 0x44f34f
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104309,7 +104310,7 @@ imul eax, dword [ref_004990e8], 0x2328 ; imul eax, dword [0x4990e8], 0x2328
imul edx, esi, 0x68
cmp ebx, eax
jl short loc_0044f396 ; jl 0x44f396
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104332,7 +104333,7 @@ add eax, ecx
shl eax, 3
cmp ebx, eax
jl short loc_0044f3e3 ; jl 0x44f3e3
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104359,7 +104360,7 @@ shl eax, 2
add eax, ecx
cmp ebx, eax
jl short loc_0044f428 ; jl 0x44f428
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104393,7 +104394,7 @@ imul eax, dword [ref_004990e8], 0x2328 ; imul eax, dword [0x4990e8], 0x2328
imul edx, esi, 0x68
cmp ebx, eax
jl short loc_0044f46c ; jl 0x44f46c
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104416,7 +104417,7 @@ add eax, ecx
shl eax, 3
cmp ebx, eax
jl short loc_0044f4b9 ; jl 0x44f4b9
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104434,7 +104435,7 @@ jmp short loc_0044f4dd ; jmp 0x44f4dd
loc_0044f4b9:
test ebx, ebx
jle short loc_0044f4e8 ; jle 0x44f4e8
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104485,7 +104486,7 @@ je short loc_0044f561 ; je 0x44f561
mov edi, dword [esp + 0x10]
imul eax, edi, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104517,7 +104518,7 @@ imul eax, dword [ref_004990e8], 0x2328 ; imul eax, dword [0x4990e8], 0x2328
imul edx, esi, 0x68
cmp ebx, eax
jl short loc_0044f5a6 ; jl 0x44f5a6
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104540,7 +104541,7 @@ add eax, ecx
shl eax, 3
cmp ebx, eax
jl short loc_0044f5f3 ; jl 0x44f5f3
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104558,7 +104559,7 @@ jmp short loc_0044f617 ; jmp 0x44f617
loc_0044f5f3:
test ebx, ebx
jle short loc_0044f622 ; jle 0x44f622
-mov dl, byte [edx + ref_00496b7b] ; mov dl, byte [edx + 0x496b7b]
+mov dl, byte [edx + (_players+19)] ; mov dl, byte [edx + 0x496b7b]
and edx, 0xff
mov eax, edx
shl eax, 2
@@ -104628,7 +104629,7 @@ test edx, edx
jne short loc_0044f6e7 ; jne 0x44f6e7
mov ebp, dword [_current_player] ; mov ebp, dword [0x49910c]
imul eax, ebp, 0x68
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -104644,7 +104645,7 @@ loc_0044f6b8:
mov ebx, dword [_current_player] ; mov ebx, dword [0x49910c]
imul eax, ebx, 0x68
xor edx, edx
-mov dl, byte [eax + ref_00496b7b] ; mov dl, byte [eax + 0x496b7b]
+mov dl, byte [eax + (_players+19)] ; mov dl, byte [eax + 0x496b7b]
mov eax, edx
shl eax, 2
sub eax, edx
@@ -109337,7 +109338,7 @@ loc_00452647:
cmp esi, dword [_nplayers] ; cmp esi, dword [0x499114]
jge near loc_00452761 ; jge 0x452761
imul ebx, esi, 0x68
-cmp byte [ebx + ref_00496b7d], 0 ; cmp byte [ebx + 0x496b7d], 0
+cmp byte [ebx + (_players+21)], 0 ; cmp byte [ebx + 0x496b7d], 0
je near loc_0045275b ; je 0x45275b
push esi
call fcn_00441e12 ; call 0x441e12
@@ -109348,14 +109349,14 @@ test eax, eax
je near loc_0045275b ; je 0x45275b
push 0
xor eax, eax
-mov ax, word [ebx + ref_00496b72] ; mov ax, word [ebx + 0x496b72]
+mov ax, word [ebx + (_players+10)] ; mov ax, word [ebx + 0x496b72]
push eax
xor eax, eax
-mov ax, word [ebx + ref_00496b70] ; mov ax, word [ebx + 0x496b70]
+mov ax, word [ebx + (_players+8)] ; mov ax, word [ebx + 0x496b70]
push eax
call fcn_0041d476 ; call 0x41d476
add esp, 0xc
-mov eax, dword [ebx + ref_00496b68] ; mov eax, dword [ebx + 0x496b68]
+mov eax, dword [ebx + (_players+0)] ; mov eax, dword [ebx + 0x496b68]
push eax
lea eax, [esp + 0x84]
push eax
@@ -176878,159 +176879,6 @@ resb 1
ref_00496b67:
resb 1
-ref_00496b68:
-resb 4
-
-ref_00496b6c:
-resb 4
-
-ref_00496b70:
-resb 2
-
-ref_00496b72:
-resb 2
-
-ref_00496b74:
-resb 2
-
-ref_00496b76:
-resb 2
-
-ref_00496b78:
-resb 1
-
-ref_00496b79:
-resb 1
-
-ref_00496b7a:
-resb 1
-
-ref_00496b7b:
-resb 1
-
-ref_00496b7c:
-resb 1
-
-ref_00496b7d:
-resb 1
-
-ref_00496b7e:
-resb 1
-
-ref_00496b7f:
-resb 1
-
-ref_00496b80:
-resb 1
-
-ref_00496b81:
-resb 1
-
-ref_00496b82:
-resb 1
-
-ref_00496b83:
-resb 1
-
-ref_00496b84:
-resb 4
-
-ref_00496b88:
-resb 4
-
-ref_00496b8c:
-resb 4
-
-ref_00496b90:
-resb 4
-
-ref_00496b94:
-resb 4
-
-ref_00496b98:
-resb 2
-
-ref_00496b9a:
-resb 1
-
-ref_00496b9b:
-resb 1
-
-ref_00496b9c:
-resb 1
-
-ref_00496b9d:
-resb 1
-
-ref_00496b9e:
-resb 1
-
-ref_00496b9f:
-resb 1
-
-ref_00496ba0:
-resb 1
-
-ref_00496ba1:
-resb 2
-
-ref_00496ba3:
-resb 1
-
-ref_00496ba4:
-resb 1
-
-ref_00496ba5:
-resb 1
-
-ref_00496ba6:
-resb 1
-
-ref_00496ba7:
-resb 1
-
-ref_00496ba8:
-resb 1
-
-ref_00496ba9:
-resb 1
-
-ref_00496baa:
-resb 2
-
-ref_00496bac:
-resb 2
-
-ref_00496bae:
-resb 2
-
-ref_00496bb0:
-resb 2
-
-ref_00496bb2:
-resb 2
-
-ref_00496bb4:
-resb 16
-
-ref_00496bc4:
-resb 4
-
-ref_00496bc8:
-resb 4
-
-ref_00496bcc:
-resb 1
-
-ref_00496bcd:
-resb 1
-
-ref_00496bce:
-resb 1
-
-ref_00496bcf:
-resb 313
-
ref_00496d08:
resb 1