Function at 0x4297a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x44616a
mov eax, dword fs:[0]
push eax
sub esp, 0xa84
mov eax, dword [0x44eea4]
xor eax, esp
mov dword [esp + 0xa80], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x44eea4]
xor eax, esp
push eax
lea eax, [esp + 0xa98]
mov dword fs:[0], eax
cmp dword [0x4512cc], 0xa
mov eax, dword [esp + 0xaa8]
mov ebp, dword [esp + 0xaac]
mov edi, ecx
mov ecx, dword [esp + 0xab0]
mov dword [esp + 0x14], edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x40], ebp
mov dword [esp + 0x1c], ecx
je 0x42981e
cmp dword [ebp], 0xa
jne 0x42981e
push str.bgmmain.wma
call fcn.00402020
add esp, 4
mov edx, dword [ebp]
mov eax, dword [0x4512c8]
xor esi, esi
or ebx, 0xffffffff
cmp dword [0x44d07c], esi
mov dword [0x4512cc], edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x3c], eax
mov ecx, 1
mov edx, 2
je 0x429ec7
push 0x1f50
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], esi
je 0x429887
push str.CHARMENU
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429889
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512c4], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 1
je 0x4298c5
push 0x449ab4
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x4298c7
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512b0], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 2
je 0x429903
push 0x449ab0
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429905
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512b4], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 3
je 0x429941
push 0x449aac
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429943
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512b8], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 4
je 0x42997f
push 0x449aa8
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429981
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512bc], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 5
je 0x4299bd
push 0x449aa4
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x4299bf
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512c0], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 6
je 0x4299fb
push 0x449aa0
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x4299fd
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512ac], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 7
je 0x429a39
push 0x449a98
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429a3b
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x4512a8], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 8
je 0x429a77
push 0x449a94
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429a79
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x44fd88], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 9
je 0x429ab5
push str.RFACE
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429ab7
xor eax, eax
push 0x1f50
mov dword [esp + 0xaa4], ebx
mov dword [0x44fd84], eax
call sub.MSVCR80.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov dword [esp + 0xaa0], 0xa
je 0x429af3
push str.SPARK
push 0x40
mov ecx, eax
call fcn.0043ef50
jmp 0x429af5
xor eax, eax
mov dword [0x44f8fc], eax
mov dword [0x451288], esi
mov dword [0x451268], esi
mov dword [0x451248], ebx
mov dword [0x45128c], esi
mov dword [0x45126c], esi
mov dword [0x45124c], ebx
mov dword [0x451290], esi
mov dword [0x451270], esi
mov dword [0x451250], ebx
mov dword [0x451294], esi
mov dword [0x451274], esi
mov dword [0x451254], ebx
mov dword [0x451298], esi
mov dword [0x451278], esi
mov dword [0x451258], ebx
mov dword [0x45129c], esi
mov dword [0x45127c], esi
mov dword [0x45125c], ebx
mov dword [0x4512a0], esi
mov dword [0x451280], esi
mov dword [0x451260], ebx
mov dword [0x4512a4], esi
mov dword [0x451284], esi
mov dword [0x451264], ebx
mov dword [eax + 0xc], 0x14
mov ecx, dword [0x44f8fc]
mov eax, 0x66
mov dword [ecx + 0x14], eax
mov edx, dword [0x44f8fc]
mov dword [edx + 0x7e4], esi
mov ecx, dword [0x44f8fc]
mov dword [ecx + 0xfb4], eax
mov edx, dword [0x44f8fc]
mov edi, 0x50
mov dword [edx + 0x1784], edi
mov ecx, dword [0x44f8fc]
mov dword [ecx + 0x3c], eax
mov edx, dword [0x44f8fc]
mov ecx, 0x80
mov dword [edx + 0x80c], ecx
mov edx, dword [0x44f8fc]
mov dword [edx + 0xfdc], eax
mov edx, dword [0x44f8fc]
mov dword [edx + 0x17ac], edi
mov ebp, dword [0x44f8fc]
mov edx, 0xcc
mov dword [ebp + 0x18], edx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x7e8], esi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfb8], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x1788], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x40], edx
mov edx, dword [0x44f8fc]
mov dword [edx + 0x810], ecx
mov edx, dword [0x44f8fc]
mov dword [edx + 0xfe0], eax
mov edx, dword [0x44f8fc]
mov dword [edx + 0x17b0], edi
mov ebp, dword [0x44f8fc]
mov edx, 0x132
mov dword [ebp + 0x1c], edx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x7ec], esi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfbc], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x178c], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x44], edx
mov edx, dword [0x44f8fc]
mov dword [edx + 0x814], ecx
mov edx, dword [0x44f8fc]
mov dword [edx + 0xfe4], eax
mov edx, dword [0x44f8fc]
mov dword [esp + 0xaa0], ebx
mov dword [0x44d07c], esi
mov dword [edx + 0x17b4], edi
mov ebp, dword [0x44f8fc]
mov edx, 0x198
mov dword [ebp + 0x20], edx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x7f0], esi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfc0], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x1790], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x48], edx
mov edx, dword [0x44f8fc]
mov dword [edx + 0x818], ecx
mov ecx, dword [0x44f8fc]
mov dword [ecx + 0xfe8], eax
mov edx, dword [0x44f8fc]
mov dword [edx + 0x17b8], edi
mov ecx, dword [0x44f8fc]
mov eax, 0x3d
mov dword [ecx + 0x28], eax
mov edx, dword [0x44f8fc]
mov dword [edx + 0x7f8], edi
mov ecx, dword [0x44f8fc]
mov dword [ecx + 0xfc8], eax
mov edx, dword [0x44f8fc]
mov ecx, 0x30
mov dword [edx + 0x1798], ecx
mov edx, dword [0x44f8fc]
mov dword [edx + 0x50], eax
mov edi, dword [0x44f8fc]
mov edx, 0xd0
mov dword [edi + 0x820], edx
mov edi, dword [0x44f8fc]
mov dword [edi + 0xff0], eax
mov edi, dword [0x44f8fc]
mov dword [edi + 0x17c0], ecx
mov ebp, dword [0x44f8fc]
mov edi, 0x7a
mov dword [ebp + 0x2c], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x7fc], 0x50
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfcc], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x179c], ecx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x54], edi
mov edi, dword [0x44f8fc]
mov dword [edi + 0x824], edx
mov edi, dword [0x44f8fc]
mov dword [edi + 0xff4], eax
mov edi, dword [0x44f8fc]
mov dword [edi + 0x17c4], ecx
mov ebp, dword [0x44f8fc]
mov edi, 0xb7
mov dword [ebp + 0x30], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x800], 0x50
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfd0], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x17a0], ecx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x58], edi
mov edi, dword [0x44f8fc]
mov dword [edi + 0x828], edx
mov edi, dword [0x44f8fc]
mov dword [edi + 0xff8], eax
mov edi, dword [0x44f8fc]
mov dword [edi + 0x17c8], ecx
mov ebp, dword [0x44f8fc]
mov edi, 0xf4
mov dword [ebp + 0x34], edi
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x804], 0x50
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0xfd4], eax
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x17a4], ecx
mov ebp, dword [0x44f8fc]
mov dword [ebp + 0x5c], edi
mov edi, dword [0x44f8fc]
mov ebp, dword [esp + 0x40]
mov dword [edi + 0x82c], edx
mov edx, dword [0x44f8fc]
mov edi, dword [esp + 0x14]
mov dword [edx + 0xffc], eax
mov eax, dword [0x44f8fc]
mov dword [eax + 0x17cc], ecx
mov edx, 2
mov ecx, 1
mov eax, dword [esp + 0x1c]
cmp dword [eax], 5
jne 0x429ee7
cmp dword [0x450c2c], esi
jne 0x429ee7
mov dword [0x44d02c], ecx
mov dword [ebp], 0xa
jmp 0x429f0d
mov eax, dword [ebp]
cmp eax, 0x12c
jne 0x429f08
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
push ecx
push ebp
push edx
mov ecx, edi
call fcn.00437310
jmp 0x42e134
cmp eax, 0xa
jne 0x429f29
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
push 0x4512c8
push eax
push ebp
push ecx
mov ecx, edi
call fcn.00431d70
jmp 0x42e134
cmp eax, 0x14
jl 0x429f4a
cmp eax, 0x32
jg 0x429f4a
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
push edx
push ebp
push eax
mov ecx, edi
call fcn.00432b10
jmp 0x42e134
cmp eax, 0x78
jl 0x429f6d
cmp eax, 0x96
jg 0x429f6d
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
push ecx
push ebp
push edx
mov ecx, edi
call fcn.00434b10
jmp 0x42e134
cmp eax, 3
jne 0x42a10b
mov eax, dword [esp + 0x1c]
mov dword [0x451288], esi
mov dword [0x451248], ebx
mov dword [0x451268], ecx
mov dword [0x45128c], esi
mov dword [0x45124c], ebx
mov dword [0x45126c], ecx
mov dword [0x451290], esi
mov dword [0x451250], ebx
mov dword [0x451270], ecx
mov dword [0x451294], esi
mov dword [0x451254], ebx
mov dword [0x451274], ecx
mov dword [0x451298], esi
mov dword [0x451258], ebx
mov dword [0x451278], ecx
mov dword [0x45129c], esi
mov dword [0x45125c], ebx
mov dword [0x45127c], ecx
mov dword [0x4512a0], esi
mov dword [0x451260], ebx
mov dword [0x451280], ecx
mov dword [0x4512a4], esi
mov dword [0x451264], ebx
mov dword [0x451284], ecx
cmp dword [eax], ecx
jne 0x42a036
lea eax, [edi + 0x194]
mov dword [esp + 0x18], 0x14
lea esp, [esp]
mov edx, dword [eax]
add eax, 4
sub dword [esp + 0x18], ecx
mov dword [edx + 0x364], ecx
jne 0x42a020
mov edx, 2
mov eax, dword [esp + 0x1c]
cmp dword [eax], 4
jne 0x42a103
mov eax, dword [edi + 0x1bc]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x194]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x1c0]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x198]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x1c4]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x19c]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x1c8]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x1a0]
mov dword [eax + 0x364], ecx
mov eax, dword [edi + 0x1cc]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1a4]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1d0]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1a8]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1d4]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1ac]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1d8]
mov dword [eax + 0x364], edx
mov eax, dword [edi + 0x1b0]
mov dword [eax + 0x364], edx
mov dword [0x4512c8], esi
jmp 0x42a119
cmp eax, edx
jne 0x42a120
mov dword [0x4512c8], 3
mov dword [ebp], ecx
mov dword [esp + 0x3c], esi
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], 4
jne 0x42a145
cmp dword [0x4512c8], 3
jne 0x42a145
mov eax, dword [ebp]
cmp eax, 0xc8
jge 0x42a14f
mov dword [ebp], 0xc8
jmp 0x42a156
mov eax, dword [ebp]
cmp eax, 0xc8
jl 0x42a17f
cmp eax, 0x12c
jge 0x42a17f
mov eax, dword [esp + 0x24]
push 0x451228
push 0x451248
push 0x451288
push 0x4512c8
mov edx, ecx
push edx
push ebp
push eax
mov ecx, edi
call fcn.00438c40
jmp 0x42e134
mov eax, dword [0x451224]
add eax, 1
cdq
mov ecx, 0x1e
idiv ecx
lea eax, [edi + 0x198]
mov edi, 0x50
mov ebp, 1
mov dword [0x451224], edx
mov edx, dword [eax - 4]
mov ecx, dword [edx + 0x364]
cmp ecx, esi
jl 0x42a1b7
cmp ecx, 4
jle 0x42a1bd
mov dword [edx + 0x364], esi
mov edx, dword [eax]
mov ecx, dword [edx + 0x364]
cmp ecx, esi
jl 0x42a1ce
cmp ecx, 4
jle 0x42a1d4
mov dword [edx + 0x364], esi
mov edx, dword [eax + 4]
mov ecx, dword [edx + 0x364]
cmp ecx, esi
jl 0x42a1e6
cmp ecx, 4
jle 0x42a1ec
mov dword [edx + 0x364], esi
mov edx, dword [eax + 8]
mov ecx, dword [edx + 0x364]
cmp ecx, esi
jl 0x42a1fe
cmp ecx, 4
jle 0x42a204
mov dword [edx + 0x364], esi
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x364]
cmp ecx, esi
jl 0x42a216
cmp ecx, 4
jle 0x42a21c
mov dword [edx + 0x364], esi
add eax, 0x14
sub edi, ebp
jne 0x42a1a5
push esi
push 0x226
push 0x31a
push esi
push esi
call fcn.00437040
mov edx, dword [esp + 0x38]
mov ecx, dword [0x4512c4]
add esp, 0x14
push edx
push esi
push esi
push ebx
push 0x21
push 0x28
call fcn.0043f100
cmp dword [0x4512c8], esi
jne 0x42a2b9
cmp dword [0x451288], esi
jne 0x42a263
mov dword [esp + 0x28], ebp
cmp dword [0x45128c], esi
jne 0x42a26f
add dword [esp + 0x28], ebp
cmp dword [0x451290], esi
jne 0x42a27b
add dword [esp + 0x28], ebp
cmp dword [0x451294], esi
jne 0x42a287
add dword [esp + 0x28], ebp
cmp dword [0x451298], esi
jne 0x42a293
add dword [esp + 0x28], ebp
cmp dword [0x45129c], esi
jne 0x42a29f
add dword [esp + 0x28], ebp
cmp dword [0x4512a0], esi
jne 0x42a2ab
add dword [esp + 0x28], ebp
cmp dword [0x4512a4], esi
jne 0x42a2bd
add dword [esp + 0x28], ebp
jmp 0x42a2bd
mov dword [esp + 0x28], ebx
xor ebp, ebp
mov eax, dword [ebp*4 + 0x451288]
test eax, eax
mov edi, ebp
jle 0x42a36a
cmp eax, 0xb
mov eax, ebp
cdq
jge 0x42a328
and edx, 3
add eax, edx
mov esi, eax
sar esi, 2
imul esi, esi, 0xd4
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42a2f5
dec edi
or edi, 0xfffffffc
inc edi
mov edx, dword [0x455608]
imul edi, edi, 0x99
mov ecx, ebp
imul ecx, ecx, 0xb
lea eax, [esi + 0xdb]
push eax
lea ebx, [edi + 0xb1]
push ebx
push 0xffffff
push 0
add ecx, 0x44fcc0
push ecx
push edx
jmp 0x42a427
and edx, 3
add eax, edx
mov esi, eax
sar esi, 2
imul esi, esi, 0xd4
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42a345
dec edi
or edi, 0xfffffffc
inc edi
imul edi, edi, 0x99
lea eax, [esi + 0xdb]
push eax
lea ebx, [edi + 0xb1]
push ebx
push 0x9b9bff
push 0
push str.Computer
jmp 0x42a420
mov eax, ebp
cdq
and edx, 3
add eax, edx
mov esi, eax
sar esi, 2
imul esi, esi, 0xd4
cmp dword [0x4512c8], 0
jne 0x42a3f3
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42a393
dec edi
or edi, 0xfffffffc
inc edi
mov eax, 0x2aaaaaab
imul edi, edi, 0x99
imul dword [0x451224]
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, 0x4c
imul dl
mov cl, al
mov al, byte [0x451224]
mov dl, 0x1e
imul dl
add cl, al
mov dl, cl
lea eax, [esi + 0xdb]
push eax
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
lea ebx, [edi + 0xb1]
push ebx
shl eax, 8
or eax, ecx
push eax
push 0
push str.___Join_
push edx
jmp 0x42a427
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42a400
dec edi
or edi, 0xfffffffc
inc edi
imul edi, edi, 0x99
lea eax, [esi + 0xdb]
push eax
lea ebx, [edi + 0xb1]
push ebx
push 0xffffff
push 0
push 0x449a60
mov ecx, dword [0x455608]
push ecx
call fcn.00401290
add esp, 0x18
cmp dword [ebp*4 + 0x451288], 0
jne 0x42a57d
cmp dword [0x4512c8], 0
jne 0x42a57d
mov ecx, dword [0x44d078]
cmp ecx, 0x96
jne 0x42a49e
mov ecx, dword [0x451224]
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x24]
push eax
push 0
sub ecx, edx
push 0
push 0xffffffffffffffff
cmp ecx, 3
lea ecx, [esi + 0x78]
lea edx, [edi + 0x93]
push ecx
push edx
jge 0x42a496
mov ecx, dword [0x4512ac]
jmp 0x42a4d2
mov ecx, dword [0x4512a8]
jmp 0x42a4d2
test ecx, ecx
jl 0x42a4d7
mov eax, dword [esp + 0x24]
push eax
push 0
push 0
push 0xffffffffffffffff
lea edx, [esi + 0x7d]
push edx
lea eax, [edi + 0xb5]
push eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov ecx, dword [ecx*4 + 0x4512b0]
call fcn.0043f100
mov edx, dword [esp + 0x14]
mov eax, dword [edx + ebp*4 + 0x194]
cmp byte [eax + 0xd1], 0
je 0x42a522
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a515
cmp dword [0x44d074], 0
jne 0x42a515
push 0
mov ecx, 0x45560c
mov dword [ebp*4 + 0x451288], 1
call fcn.00401a30
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a57d
cmp byte [eax + 0xd2], 0
je 0x42a572
cmp dword [esp + 0x28], 8
jne 0x42a572
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a565
push 0
mov ecx, 0x455614
call fcn.00401a30
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x14]
mov dword [eax], 0xa
mov dword [0x457580], 0
call fcn.00431cd0
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a57d
mov dword [ebp*4 + 0x451268], 0
cmp dword [ebp*4 + 0x451288], 1
jne 0x42a8f9
cmp dword [ebp*4 + 0x451248], 0
jl 0x42a630
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
lea edx, [esi + 0x5e]
push edx
mov edx, dword [ecx + ebp*4 + 0x194]
lea eax, [edi + 0x93]
push eax
mov eax, dword [edx + 0x368]
mov ecx, dword [eax + 0x6fc]
call fcn.0043f100
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov dl, 0x1e
mov al, bl
imul dl
add cl, al
mov dl, cl
lea eax, [esi + 0xf1]
push eax
lea eax, [edi + 0xb1]
push eax
add dl, 0x46
movzx eax, dl
mov edx, dword [esp + 0x1c]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
mov eax, dword [edx + ebp*4 + 0x194]
mov ecx, dword [eax + 0x368]
push 0
add ecx, 0x25324
push ecx
jmp 0x42a69c
mov eax, dword [esp + 0x24]
push eax
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esi + 0x5e]
push ecx
mov ecx, dword [0x44fd84]
lea edx, [edi + 0x93]
push edx
call fcn.0043f100
mov eax, 0x2aaaaaab
imul dword [0x451224]
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, byte [0x451224]
mov dl, 0x1e
imul dl
add cl, al
mov dl, cl
lea eax, [esi + 0xf1]
push eax
add dl, 0x46
movzx eax, dl
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
push ebx
shl eax, 8
or eax, ecx
push eax
push 0
push str._Random
mov edx, dword [0x455608]
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebx + ebp*4 + 0x194]
add esp, 0x18
cmp byte [eax + 0xd0], 0
je 0x42a769
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a73e
lea ecx, [ecx]
add dword [ebp*4 + 0x451248], 1
mov ecx, dword [ebp*4 + 0x451248]
mov eax, dword [ebx + 0x7d4]
cmp ecx, dword [eax + 0x4d82380]
jge 0x42a74e
cmp ecx, 0xffffffff
je 0x42a73e
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0x6f8], 0
jne 0x42a6d0
mov edx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x42a71f
cmp eax, 3
jne 0x42a728
cmp dword [0x458428], 1
jne 0x42a6d0
mov eax, dword [ebx + 0x7d4]
mov edx, dword [ebx + ebp*4 + 0x194]
mov eax, dword [eax + ecx*4]
mov dword [edx + 0x368], eax
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
mov dword [ebp*4 + 0x451248], 0xffffffff
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
cmp byte [eax + 0xcf], 0
je 0x42a846
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a836
or eax, 0xffffffff
add dword [ebp*4 + 0x451248], eax
cmp dword [ebp*4 + 0x451248], eax
je 0x42a836
jge 0x42a7b3
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [ecx + 0x4d82380]
sub edx, 1
mov dword [ebp*4 + 0x451248], edx
mov eax, dword [ebp*4 + 0x451248]
mov ecx, dword [ebx + 0x7d4]
mov eax, dword [ecx + eax*4]
cmp dword [eax + 0x6f8], 0
jne 0x42a7f6
mov ecx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x42a7ed
cmp eax, 3
jne 0x42a819
cmp dword [0x458428], 1
je 0x42a819
or eax, 0xffffffff
add dword [ebp*4 + 0x451248], eax
cmp dword [ebp*4 + 0x451248], eax
jne 0x42a79b
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
mov edx, dword [ebp*4 + 0x451248]
mov eax, dword [ebx + 0x7d4]
mov ecx, dword [ebx + ebp*4 + 0x194]
mov edx, dword [eax + edx*4]
mov dword [ecx + 0x368], edx
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
cmp byte [eax + 0xcd], 0
je 0x42a874
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a864
mov dword [ebp*4 + 0x451248], 0xffffffff
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
cmp byte [eax + 0xd1], 0
je 0x42a8b7
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a8aa
push 0
mov ecx, 0x45560c
call fcn.00401a30
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
sub ecx, 1
neg ecx
sbb ecx, ecx
add ecx, 3
mov dword [ebp*4 + 0x451288], ecx
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
cmp byte [eax + 0xd2], 0
je 0x42a8ee
cmp dword [ebp*4 + 0x451268], 0
jne 0x42a8e1
push 0
mov ecx, 0x455614
call fcn.00401a30
mov dword [ebp*4 + 0x451288], 0
mov dword [ebp*4 + 0x451268], 1
jmp 0x42a8f9
mov dword [ebp*4 + 0x451268], 0
cmp dword [ebp*4 + 0x451288], 2
jne 0x42afe5
mov ecx, 3
xor edx, edx
xor eax, eax
cmp dword [0x451288], ecx
jne 0x42a91d
mov eax, 1
cmp dword [0x45128c], ecx
jne 0x42a928
add eax, 1
cmp dword [0x451290], ecx
jne 0x42a933
add eax, 1
cmp dword [0x451294], ecx
jne 0x42a93e
add eax, 1
cmp dword [0x451298], ecx
jne 0x42a949
add eax, 1
cmp dword [0x45129c], ecx
jne 0x42a954
add eax, 1
cmp dword [0x4512a0], ecx
jne 0x42a95f
add eax, 1
cmp dword [0x4512a4], ecx
jne 0x42a96a
add eax, 1
cmp eax, 7
jne 0x42a974
mov edx, 1
or ebx, 0xffffffff
cmp edx, 1
mov dword [esp + 0x2c], ebx
jne 0x42aaed
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
test eax, eax
je 0x42a997
cmp eax, 4
jne 0x42aaed
mov eax, dword [esp + 0x14]
add eax, 0x198
mov dword [esp + 0x2c], 2
mov dword [esp + 0x30], 0x45128c
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov eax, dword [eax - 4]
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x42a9fa
mov edx, dword [esp + 0x2c]
add edx, 0xfffffffe
cmp edx, ebp
je 0x42a9fa
mov eax, dword [esp + 0x18]
mov ecx, dword [eax - 4]
mov eax, dword [ecx + 0x364]
test eax, eax
je 0x42a9f5
cmp ebx, 0xffffffff
jne 0x42a9ed
mov ebx, eax
jmp 0x42a9fa
test ebx, ebx
jl 0x42a9fa
cmp eax, ebx
je 0x42a9fa
mov ebx, 0xfffffffe
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x42aa3e
mov edx, dword [esp + 0x2c]
add edx, 0xffffffff
cmp edx, ebp
je 0x42aa3e
mov eax, dword [esp + 0x18]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x364]
test eax, eax
je 0x42aa39
cmp ebx, 0xffffffff
jne 0x42aa31
mov ebx, eax
jmp 0x42aa3e
test ebx, ebx
jl 0x42aa3e
cmp eax, ebx
je 0x42aa3e
mov ebx, 0xfffffffe
mov edx, dword [esp + 0x30]
mov eax, dword [edx + 4]
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x42aa7f
cmp dword [esp + 0x2c], ebp
je 0x42aa7f
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x364]
test eax, eax
je 0x42aa7a
cmp ebx, 0xffffffff
jne 0x42aa72
mov ebx, eax
jmp 0x42aa7f
test ebx, ebx
jl 0x42aa7f
cmp eax, ebx
je 0x42aa7f
mov ebx, 0xfffffffe
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + 8]
cdq
mov ecx, 0xa
idiv ecx
cmp edx, 3
jne 0x42aac5
mov edx, dword [esp + 0x2c]
add edx, 1
cmp edx, ebp
je 0x42aac5
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x364]
test eax, eax
je 0x42aac0
cmp ebx, 0xffffffff
jne 0x42aab8
mov ebx, eax
jmp 0x42aac5
test ebx, ebx
jl 0x42aac5
cmp eax, ebx
je 0x42aac5
mov ebx, 0xfffffffe
mov eax, dword [esp + 0x2c]
add eax, 4
mov ecx, 0x10
add dword [esp + 0x30], ecx
add dword [esp + 0x18], ecx
mov dword [esp + 0x2c], eax
add eax, 0xfffffffe
cmp eax, 8
jl 0x42a9b4
mov dword [esp + 0x2c], ebx
cmp dword [ebp*4 + 0x451248], 0
jl 0x42ab5e
mov edx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
lea eax, [esi + 0x5e]
push eax
mov eax, dword [edx + ebp*4 + 0x194]
lea ecx, [edi + 0x93]
push ecx
mov ecx, dword [eax + 0x368]
mov ecx, dword [ecx + 0x6fc]
call fcn.0043f100
lea edx, [esi + 0xf1]
push edx
lea eax, [edi + 0xb1]
push eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + ebp*4 + 0x194]
mov edx, dword [ecx + 0x368]
mov eax, dword [0x455608]
push 0xffffff
push 0
add edx, 0x25324
push edx
push eax
jmp 0x42aba0
mov ecx, dword [esp + 0x24]
push ecx
mov ecx, dword [0x44fd84]
push 0
push 0
push 0xffffffffffffffff
lea edx, [esi + 0x5e]
push edx
lea eax, [edi + 0x93]
push eax
call fcn.0043f100
mov edx, dword [0x455608]
lea ecx, [esi + 0xf1]
push ecx
lea eax, [edi + 0xb1]
push eax
push 0xffffff
push 0
push str._Random
push edx
call fcn.00401290
add esp, 0x18
jmp 0x42abb0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + ebp*4 + 0x194]
mov eax, dword [ecx + 0x364]
cmp eax, ebx
je 0x42abd7
mov edx, dword [esp + 0x1c]
cmp dword [edx], 4
jne 0x42abee
test eax, eax
je 0x42abd7
cmp eax, 2
jle 0x42abee
add eax, 1
cdq
mov ebx, 5
idiv ebx
mov ebx, dword [esp + 0x2c]
mov dword [ecx + 0x364], edx
jmp 0x42abb0
mov edx, dword [esp + 0x14]
mov eax, dword [edx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 1
jne 0x42ac69
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
lea eax, [esi + 0x107]
push eax
mov al, cl
lea edx, [edi + 0xbb]
push edx
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [0x455608]
shl edx, 8
or edx, eax
push edx
push 0
push str.Team_1
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [edx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 2
jne 0x42ace0
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
lea eax, [esi + 0x107]
push eax
mov al, cl
lea edx, [edi + 0xbb]
push edx
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [0x455608]
shl edx, 8
or edx, eax
push edx
push 0
push str.Team_2
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [edx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 3
jne 0x42ad57
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
lea eax, [esi + 0x107]
push eax
mov al, cl
lea edx, [edi + 0xbb]
push edx
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [0x455608]
shl edx, 8
or edx, eax
push edx
push 0
push str.Team_3
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [edx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 4
jne 0x42adce
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
lea eax, [esi + 0x107]
push eax
mov al, cl
lea edx, [edi + 0xbb]
push edx
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [0x455608]
shl edx, 8
or edx, eax
push edx
push 0
push str.Team_4
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x2c]
add esp, 0x18
mov ecx, dword [edx + ebp*4 + 0x194]
xor eax, eax
cmp dword [ecx + 0x364], eax
jne 0x42ae48
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, 0x4c
imul dl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
lea eax, [esi + 0x107]
push eax
mov al, cl
lea edx, [edi + 0xa7]
push edx
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [0x455608]
shl edx, 8
or edx, eax
push edx
push 0
push str.Independent
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x2c]
add esp, 0x18
xor eax, eax
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], 2
jne 0x42ae73
mov ecx, dword [edx + ebp*4 + 0x194]
mov dword [ecx + 0x364], eax
mov ecx, dword [edx + ebp*4 + 0x194]
mov byte [ecx + 0xd1], 1
mov dword [ebp*4 + 0x451268], eax
mov ecx, dword [edx + ebp*4 + 0x194]
cmp byte [ecx + 0xd0], 0
je 0x42aedc
cmp dword [ebp*4 + 0x451268], eax
jne 0x42aecc
mov eax, dword [ecx + 0x364]
add eax, 1
cdq
mov ebx, 5
idiv ebx
mov dword [ecx + 0x364], edx
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + ebp*4 + 0x194]
mov eax, dword [ecx + 0x364]
cmp eax, dword [esp + 0x2c]
je 0x42ae92
mov edx, dword [esp + 0x1c]
cmp dword [edx], 4
jne 0x42aecc
test eax, eax
je 0x42ae92
cmp eax, 2
jg 0x42ae92
mov dword [ebp*4 + 0x451268], 1
jmp 0x42afe5
cmp byte [ecx + 0xcf], 0
je 0x42af72
cmp dword [ebp*4 + 0x451268], eax
jne 0x42afd1
add dword [ecx + 0x364], 0xffffffff
mov ecx, dword [edx + ebp*4 + 0x194]
cmp dword [ecx + 0x364], eax
jge 0x42af20
mov dword [ecx + 0x364], 4
jmp 0x42af20
mov eax, dword [edx + ebp*4 + 0x194]
mov ecx, dword [eax + 0x364]
cmp ecx, ebx
je 0x42af4f
mov edx, dword [esp + 0x1c]
cmp dword [edx], 4
jne 0x42afd1
test ecx, ecx
je 0x42af4b
cmp ecx, 2
jle 0x42afd1
mov edx, dword [esp + 0x14]
add dword [eax + 0x364], 0xffffffff
mov eax, dword [edx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 0
jge 0x42af20
mov dword [eax + 0x364], 4
jmp 0x42af20
cmp byte [ecx + 0xd1], 0
je 0x42afa8
cmp dword [ebp*4 + 0x451268], eax
jne 0x42af9b
push 0
mov ecx, 0x45560c
call fcn.00401a30
mov dword [ebp*4 + 0x451288], 3
mov dword [ebp*4 + 0x451268], 1
jmp 0x42afe5
cmp byte [ecx + 0xd2], 0
je 0x42afde
cmp dword [ebp*4 + 0x451268], eax
jne 0x42afd1
push 0
mov ecx, 0x455614
mov dword [ebp*4 + 0x451288], 1
call fcn.00401a30
mov dword [ebp*4 + 0x451268], 1
jmp 0x42afe5
mov dword [ebp*4 + 0x451268], eax
cmp dword [ebp*4 + 0x451288], 3
jne 0x42b277
cmp dword [ebp*4 + 0x451248], 0
mov eax, dword [esp + 0x24]
push eax
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esi + 0x5e]
lea edx, [edi + 0x93]
push ecx
push edx
jl 0x42b066
mov ebx, dword [esp + 0x2c]
mov eax, dword [ebx + ebp*4 + 0x194]
mov ecx, dword [eax + 0x368]
mov ecx, dword [ecx + 0x6fc]
call fcn.0043f100
lea edx, [esi + 0xf1]
push edx
mov edx, dword [0x455608]
lea eax, [edi + 0xb1]
push eax
mov eax, dword [ebx + ebp*4 + 0x194]
mov ecx, dword [eax + 0x368]
push 0xffffff
push 0
add ecx, 0x25324
push ecx
push edx
call fcn.00401290
jmp 0x42b09b
mov ecx, dword [0x44fd84]
call fcn.0043f100
mov ecx, dword [0x455608]
lea eax, [esi + 0xf1]
push eax
lea eax, [edi + 0xb1]
push eax
push 0xffffff
push 0
push str._Random
push ecx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
mov edx, dword [ebx + ebp*4 + 0x194]
add esp, 0x18
cmp dword [edx + 0x364], 0
jne 0x42b0d7
mov edx, dword [0x455608]
lea eax, [esi + 0x107]
push eax
lea ecx, [edi + 0xa7]
push ecx
push 0xffffff
push 0
push str.Independent
push edx
call fcn.00401290
add esp, 0x18
mov eax, dword [ebx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 1
jne 0x42b10f
mov eax, dword [0x455608]
lea ecx, [esi + 0x107]
push ecx
lea edx, [edi + 0xbb]
push edx
push 0xffffff
push 0
push str.Team_1
push eax
call fcn.00401290
add esp, 0x18
mov ecx, dword [ebx + ebp*4 + 0x194]
cmp dword [ecx + 0x364], 2
jne 0x42b148
mov ecx, dword [0x455608]
lea edx, [esi + 0x107]
push edx
lea eax, [edi + 0xbb]
push eax
push 0xffffff
push 0
push str.Team_2
push ecx
call fcn.00401290
add esp, 0x18
mov edx, dword [ebx + ebp*4 + 0x194]
cmp dword [edx + 0x364], 3
jne 0x42b181
mov edx, dword [0x455608]
lea eax, [esi + 0x107]
push eax
lea ecx, [edi + 0xbb]
push ecx
push 0xffffff
push 0
push str.Team_3
push edx
call fcn.00401290
add esp, 0x18
mov eax, dword [ebx + ebp*4 + 0x194]
cmp dword [eax + 0x364], 4
jne 0x42b1ba
mov ecx, dword [0x455608]
add esi, 0x107
push esi
add edi, 0xbb
push edi
push 0xffffff
push 0
push str.Team_4
push ecx
call fcn.00401290
add esp, 0x18
cmp dword [0x4512c8], 0
jne 0x42b257
mov edx, dword [ebx + ebp*4 + 0x194]
mov al, byte [edx + 0xd2]
test al, al
je 0x42b24c
cmp dword [0x44d078], 0x96
jne 0x42b21d
cmp dword [ebp*4 + 0x451268], 0
jne 0x42b210
mov ecx, dword [esp + 0x1c]
xor eax, eax
cmp dword [ecx], 1
push 0
setne al
mov ecx, 0x455614
add eax, 1
mov dword [ebp*4 + 0x451288], eax
call fcn.00401a30
mov dword [ebp*4 + 0x451268], 1
jmp 0x42b257
test al, al
je 0x42b24c
cmp dword [0x44d078], 0x96
jge 0x42b24c
cmp dword [ebp*4 + 0x451268], 0
jne 0x42b23f
mov dword [esp + 0x34], 1
mov dword [ebp*4 + 0x451268], 1
jmp 0x42b257
mov dword [ebp*4 + 0x451268], 0
cmp dword [ebp*4 + 0x451288], 3
jne 0x42b277
mov eax, dword [esp + 0x14]
add eax, 4
mov ecx, 1
add dword [esp + 0x38], ecx
mov byte [eax + ebp], 1
jmp 0x42b287
mov eax, dword [esp + 0x14]
add eax, 4
mov byte [eax + ebp], 0
mov ecx, 1
mov eax, dword [ebp*4 + 0x451288]
test eax, eax
je 0x42b297
cmp eax, 3
jne 0x42b29b
add dword [esp + 0x20], ecx
add ebp, ecx
cmp ebp, 8
jl 0x42a2bf
mov eax, dword [esp + 0x38]
test eax, eax
jle 0x42b2da
cmp dword [esp + 0x20], 8
jne 0x42b2da
sub dword [0x44d078], ecx
cmp dword [esp + 0x34], 0
je 0x42b2c9
sub dword [0x44d078], 0x1e
cmp eax, 8
jne 0x42b2e4
mov dword [0x44d078], 0
jmp 0x42b2e4
mov dword [0x44d078], 0x96
mov eax, dword [0x4512c8]
cmp eax, ecx
mov dword [0x44d074], eax
jne 0x42b99d
mov edx, dword [esp + 0x24]
mov ecx, dword [0x44fd88]
push edx
xor ebx, ebx
push ebx
push ebx
push 0xffffffffffffffff
push 0xd7
push 0xda
mov dword [0x451220], ebx
call fcn.0043f100
mov eax, dword [esp + 0x14]
xor ebp, ebp
lea edx, [eax + 5]
mov dword [esp + 0x814], ebx
mov dword [esp + 0x818], ebx
mov dword [esp + 0x81c], ebx
mov dword [esp + 0x820], ebx
mov dword [esp + 0x824], ebx
add eax, 0x198
mov esi, 2
cmp byte [edx - 1], 0
je 0x42b388
mov ecx, dword [eax - 4]
mov ecx, dword [ecx + 0x364]
cmp ecx, ebx
je 0x42b36e
cmp dword [esp + ecx*4 + 0x814], ebx
jne 0x42b38b
mov ecx, dword [eax - 4]
mov ecx, dword [ecx + 0x364]
add dword [esp + ecx*4 + 0x814], 1
lea ecx, [esp + ecx*4 + 0x814]
jmp 0x42b38b
add ebp, 1
cmp byte [edx], 0
je 0x42b3c6
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x364]
cmp ecx, ebx
je 0x42b3a5
cmp dword [esp + ecx*4 + 0x814], ebx
jne 0x42b3c9
mov ecx, dword [eax]
mov edi, dword [ecx + 0x364]
mov edi, dword [esp + edi*4 + 0x814]
mov ecx, dword [ecx + 0x364]
add edi, 1
mov dword [esp + ecx*4 + 0x814], edi
jmp 0x42b3c9
add ebp, 1
cmp byte [edx + 1], 0
je 0x42b407
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x364]
cmp ecx, ebx
je 0x42b3e5
cmp dword [esp + ecx*4 + 0x814], ebx
jne 0x42b40a
mov ecx, dword [eax + 4]
mov edi, dword [ecx + 0x364]
mov edi, dword [esp + edi*4 + 0x814]
mov ecx, dword [ecx + 0x364]
add edi, 1
mov dword [esp + ecx*4 + 0x814], edi
jmp 0x42b40a
add ebp, 1
cmp byte [edx + 2], 0
je 0x42b448
mov ecx, dword [eax + 8]
mov ecx, dword [ecx + 0x364]
cmp ecx, ebx
je 0x42b426
cmp dword [esp + ecx*4 + 0x814], ebx
jne 0x42b44b
mov ecx, dword [eax + 8]
mov edi, dword [ecx + 0x364]
mov edi, dword [esp + edi*4 + 0x814]
mov ecx, dword [ecx + 0x364]
add edi, 1
mov dword [esp + ecx*4 + 0x814], edi
jmp 0x42b44b
add ebp, 1
add eax, 0x10
add edx, 4
sub esi, 1
jne 0x42b352
cmp ebp, ebx
mov dword [esp + 0x18], ebp
jne 0x42b46c
mov dword [0x4512c8], 3
mov edx, dword [esp + 0x820]
mov eax, dword [esp + 0x824]
mov edi, dword [esp + 0x1c]
add eax, edx
add eax, dword [esp + 0x81c]
add eax, dword [esp + 0x818]
add eax, dword [esp + 0x814]
cmp eax, 2
jge 0x42b4a6
cmp dword [edi], 1
je 0x42b4a6
mov eax, 1
jmp 0x42b4a8
xor eax, eax
mov ecx, dword [0x44d070]
cmp ecx, 0xffffff9c
mov dword [esp + 0x30], eax
je 0x42b4bf
cmp ecx, eax
jl 0x42b4bf
cmp ecx, ebp
jle 0x42b4c7
mov ecx, eax
mov dword [0x44d070], ecx
mov ebp, dword [esp + 0x14]
xor esi, esi
add ebp, 0x194
mov edx, ebp
jmp 0x42b4e0
mov eax, dword [esp + 0x14]
cmp byte [eax + esi + 4], 0
je 0x42b595
mov eax, dword [edx]
cmp byte [eax + 0xd0], 0
je 0x42b51d
cmp dword [esi*4 + 0x451268], ebx
jne 0x42b58a
cmp dword [esp + 0x3c], 1
jne 0x42b58a
add ecx, 1
cmp ecx, dword [esp + 0x18]
jle 0x42b58a
mov ecx, dword [esp + 0x30]
jmp 0x42b58a
cmp byte [eax + 0xcf], 0
je 0x42b545
cmp dword [esi*4 + 0x451268], ebx
jne 0x42b58a
cmp dword [esp + 0x3c], 1
jne 0x42b58a
sub ecx, 1
cmp ecx, dword [esp + 0x30]
jge 0x42b58a
mov ecx, dword [esp + 0x18]
jmp 0x42b58a
cmp byte [eax + 0xd1], 0
jne 0x42b563
mov eax, dword [edi]
cmp eax, 2
je 0x42b56f
cmp eax, 3
je 0x42b563
mov dword [esi*4 + 0x451268], ebx
jmp 0x42b595
mov eax, dword [edi]
cmp eax, 2
je 0x42b56f
cmp eax, 3
jne 0x42b57a
mov ecx, dword [esp + 0x18]
mov dword [esi*4 + 0x451268], ebx
cmp dword [esi*4 + 0x451268], ebx
jne 0x42b58a
cmp dword [esp + 0x3c], 1
je 0x42b5af
mov dword [esi*4 + 0x451268], 1
add esi, 1
add edx, 4
cmp esi, 8
jl 0x42b4e0
mov dword [0x44d070], ecx
jmp 0x42b8c0
mov eax, dword [edi]
cmp eax, 2
mov dword [0x44d070], ecx
je 0x42b5d2
cmp eax, 3
je 0x42b5d2
push ebx
mov ecx, 0x455610
call fcn.00401a30
mov ecx, dword [0x44d070]
cmp ecx, ebx
mov eax, 2
mov dword [0x4512c8], eax
jne 0x42b792
xor ecx, ecx
cmp dword [0x451248], ecx
mov dword [0x44d06c], eax
setl cl
xor edx, edx
cmp dword [0x45124c], edx
mov ebx, ebp
setl dl
xor eax, eax
cmp dword [0x451250], eax
mov dword [0x451228], ecx
setl al
xor ecx, ecx
cmp dword [0x451254], ecx
mov dword [0x45122c], edx
setl cl
xor edx, edx
cmp dword [0x451258], edx
mov dword [0x451230], eax
setl dl
xor eax, eax
cmp dword [0x45125c], eax
mov dword [0x451234], ecx
setl al
xor ecx, ecx
cmp dword [0x451260], ecx
mov dword [0x451238], edx
setl cl
xor edx, edx
cmp dword [0x451264], edx
mov dword [0x4512c8], 3
setl dl
mov dword [0x45123c], eax
xor ebp, ebp
mov dword [0x451240], ecx
mov dword [0x451244], edx
cmp dword [ebp + 0x451228], 0
je 0x42b77c
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x7d4]
mov eax, 1
xor esi, esi
cmp dword [ecx + 0x4d82380], eax
jle 0x42b74f
mov edx, ecx
mov edx, dword [edx + 0x4d82380]
mov dword [esp + 0x20], edx
lea edi, [ecx + 4]
xor ecx, ecx
cmp dword [0x451248], eax
jne 0x42b6c5
mov ecx, 1
cmp dword [0x45124c], eax
jne 0x42b6d2
mov ecx, 1
cmp dword [0x451250], eax
jne 0x42b6df
mov ecx, 1
cmp dword [0x451254], eax
jne 0x42b6ec
mov ecx, 1
cmp dword [0x451258], eax
jne 0x42b6f9
mov ecx, 1
cmp dword [0x45125c], eax
jne 0x42b706
mov ecx, 1
cmp dword [0x451260], eax
jne 0x42b713
mov ecx, 1
cmp dword [0x451264], eax
jne 0x42b720
mov ecx, 1
mov edx, dword [edi]
cmp dword [edx + 0x6f8], 0
jne 0x42b73f
test ecx, ecx
jne 0x42b73f
cmp dword [edx + 0x6f4], 0x1e
jge 0x42b73f
mov dword [esp + esi*4 + 0x44], eax
add esi, 1
add eax, 1
add edi, 4
cmp eax, dword [esp + 0x20]
jl 0x42b6b6
push esi
push 0xd7
call fcn.00417190
mov eax, dword [esp + eax*4 + 0x4c]
mov ecx, dword [esp + 0x1c]
mov dword [ebp + 0x451248], eax
mov edx, dword [ecx + 0x7d4]
mov ecx, dword [ebx]
mov edx, dword [edx + eax*4]
add esp, 8
mov dword [ecx + 0x368], edx
add ebp, 4
add ebx, 4
cmp ebp, 0x20
jl 0x42b67d
xor ebx, ebx
jmp 0x42b8c0
mov edx, dword [esp + 0x14]
cmp byte [edx + 4], 0
mov eax, ecx
jne 0x42b7bd
cmp ecx, ebx
jle 0x42b7bd
lea eax, [ecx - 1]
mov edx, ecx
sub edx, eax
mov dword [edx*4 + 0x4511fc], ebx
mov edx, 0xb
mov dword [0x451288], edx
jmp 0x42b7c2
mov edx, 0xb
mov edi, dword [esp + 0x14]
cmp byte [edi + 5], 0
jne 0x42b7e8
cmp eax, ebx
jle 0x42b7e8
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 1
mov dword [0x45128c], edx
cmp byte [edi + 6], 0
jne 0x42b80a
cmp eax, ebx
jle 0x42b80a
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 2
mov dword [0x451290], edx
cmp byte [edi + 7], 0
jne 0x42b82c
cmp eax, ebx
jle 0x42b82c
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 3
mov dword [0x451294], edx
cmp byte [edi + 8], 0
jne 0x42b84e
cmp eax, ebx
jle 0x42b84e
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 4
mov dword [0x451298], edx
cmp byte [edi + 9], 0
jne 0x42b870
cmp eax, ebx
jle 0x42b870
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 5
mov dword [0x45129c], edx
cmp byte [edi + 0xa], 0
jne 0x42b892
cmp eax, ebx
jle 0x42b892
sub eax, 1
mov ebp, ecx
sub ebp, eax
mov dword [ebp*4 + 0x4511fc], 6
mov dword [0x4512a0], edx
cmp byte [edi + 0xb], 0
jne 0x42b8af
cmp eax, ebx
jle 0x42b8af
sub ecx, eax
mov dword [ecx*4 + 0x451200], 7
mov dword [0x4512a4], edx
mov dword [0x4511fc], ebx
mov dword [esi*4 + 0x451268], 1
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x18]
xor edi, edi
mov esi, 0x118
nop
push edi
lea eax, [esp + 0x818]
push 0x447b00
push eax
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
cmp edi, ebx
jl 0x42b8ff
cmp edi, ebp
jg 0x42b8ff
push 0x11e
lea ecx, [esi + 6]
push ecx
push 0xffffff
jmp 0x42b90d
push 0x11e
lea ecx, [esi + 6]
push ecx
push 0xc06850
mov eax, dword [0x455608]
push 0x9f472f
lea edx, [esp + 0x824]
push edx
push eax
call fcn.00401290
add esp, 0x18
cmp dword [0x44d070], edi
jne 0x42b986
push 0xffffff
push 1
push 0x15
push 0x11b
push esi
call fcn.00437040
push 0xffffff
push 0x15
push 1
push 0x11b
push esi
call fcn.00437040
push 0xffffff
push 1
push 0x15
push 0x12f
push esi
call fcn.00437040
push 0xffffff
push 0x15
push 1
lea ecx, [esi + 0x14]
push 0x11b
push ecx
call fcn.00437040
add esp, 0x50
add esi, 0x1e
add edi, 1
cmp esi, 0x1ea
jle 0x42b8d0
mov eax, dword [0x4512c8]
cmp eax, 2
mov edi, dword [esp + 0x3c]
je 0x42b9b4
cmp eax, 3
jne 0x42e118
mov eax, dword [0x4512c8]
xor ecx, ecx
cmp eax, 2
mov dword [esp + 0x34], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], ecx
jne 0x42bad2
mov ecx, dword [esp + 0x14]
lea eax, [ecx + 4]
mov esi, eax
mov eax, 0x451268
lea edx, [ecx + 0x194]
cmp byte [esi], 0
je 0x42babe
mov ecx, dword [edx]
cmp byte [ecx + 0xcd], 0
je 0x42ba18
cmp dword [eax], 0
jne 0x42ba0d
cmp edi, 2
jne 0x42ba0d
mov dword [esp + 0x34], 1
mov dword [eax], 1
jmp 0x42babe
cmp byte [ecx + 0xce], 0
je 0x42ba2c
mov dword [eax], 1
jmp 0x42babe
cmp byte [ecx + 0xd0], 0
je 0x42ba4f
cmp dword [eax], 0
jne 0x42ba47
cmp edi, 2
jne 0x42ba47
mov dword [esp + 0x38], 1
mov dword [eax], 1
jmp 0x42babe
cmp byte [ecx + 0xcf], 0
je 0x42ba72
cmp dword [eax], 0
jne 0x42ba6a
cmp edi, 2
jne 0x42ba6a
mov dword [esp + 0x28], 1
mov dword [eax], 1
jmp 0x42babe
cmp byte [ecx + 0xd1], 0
je 0x42ba95
cmp dword [eax], 0
jne 0x42ba8d
cmp edi, 2
jne 0x42ba8d
mov dword [esp + 0x2c], 1
mov dword [eax], 1
jmp 0x42babe
cmp byte [ecx + 0xd2], 0
je 0x42bab8
cmp dword [eax], 0
jne 0x42bab0
cmp edi, 2
jne 0x42bab0
mov dword [esp + 0x30], 1
mov dword [eax], 1
jmp 0x42babe
mov dword [eax], 0
add eax, 4
add esi, 1
add edx, 4
cmp eax, 0x451288
jl 0x42b9e7
xor ebx, ebx
cmp dword [0x44d070], ebx
jle 0x42bde0
mov edi, dword [esp + 0x14]
mov esi, dword [ebx*4 + 0x451200]
cmp dword [esi*4 + 0x451288], 0xb
jle 0x42bbf3
mov eax, esi
cdq
and edx, 3
add eax, edx
mov edi, eax
sar edi, 2
imul edi, edi, 0xd4
cmp dword [esi*4 + 0x451248], 0
mov ebp, esi
jl 0x42bb93
and ebp, reloc.WSOCK32.dll_closesocket
jns 0x42bb25
dec ebp
or ebp, 0xfffffffc
inc ebp
mov edx, dword [esp + 0x24]
imul ebp, ebp, 0x99
push edx
mov edx, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
lea eax, [edi + 0x5e]
push eax
mov eax, dword [edx + esi*4 + 0x194]
lea ecx, [ebp + 0x93]
push ecx
mov ecx, dword [eax + 0x368]
mov ecx, dword [ecx + 0x6fc]
call fcn.0043f100
mov edx, dword [esp + 0x14]
mov eax, dword [edx + esi*4 + 0x194]
mov ecx, dword [eax + 0x368]
mov edx, dword [0x455608]
add edi, 0xf1
push edi
add ebp, 0xb1
push ebp
push 0x9b9bff
push 0
add ecx, 0x25324
push ecx
push edx
jmp 0x42bbe7
and ebp, reloc.WSOCK32.dll_closesocket
jns 0x42bba0
dec ebp
or ebp, 0xfffffffc
inc ebp
mov eax, dword [esp + 0x24]
imul ebp, ebp, 0x99
push eax
push 0
push 0
push 0xffffffffffffffff
lea ecx, [edi + 0x5e]
push ecx
mov ecx, dword [0x44fd84]
lea edx, [ebp + 0x93]
push edx
call fcn.0043f100
mov eax, dword [0x455608]
add edi, 0xf1
push edi
add ebp, 0xb1
push ebp
push 0x9b9bff
push 0
push str._Random
push eax
call fcn.00401290
mov edi, dword [esp + 0x2c]
add esp, 0x18
cmp dword [esi*4 + 0x451288], 0xc
jle 0x42bdd1
mov ecx, dword [edi + esi*4 + 0x194]
cmp dword [ecx + 0x364], 0
jne 0x42bc5e
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
mov edx, esi
and edx, reloc.WSOCK32.dll_closesocket
push eax
jns 0x42bc37
dec edx
or edx, 0xfffffffc
inc edx
mov eax, dword [0x455608]
imul edx, edx, 0x99
add edx, 0xa7
push edx
push 0x9b9bff
push 0
push str.Independent
push eax
call fcn.00401290
add esp, 0x18
mov ecx, dword [edi + esi*4 + 0x194]
cmp dword [ecx + 0x364], 1
jne 0x42bcbb
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
mov edx, esi
and edx, reloc.WSOCK32.dll_closesocket
push eax
jns 0x42bc94
dec edx
or edx, 0xfffffffc
inc edx
mov eax, dword [0x455608]
imul edx, edx, 0x99
add edx, 0xbb
push edx
push 0x9b9bff
push 0
push str.Team_1
push eax
call fcn.00401290
add esp, 0x18
mov ecx, dword [edi + esi*4 + 0x194]
cmp dword [ecx + 0x364], 2
jne 0x42bd18
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
mov edx, esi
and edx, reloc.WSOCK32.dll_closesocket
push eax
jns 0x42bcf1
dec edx
or edx, 0xfffffffc
inc edx
mov eax, dword [0x455608]
imul edx, edx, 0x99
add edx, 0xbb
push edx
push 0x9b9bff
push 0
push str.Team_2
push eax
call fcn.00401290
add esp, 0x18
mov ecx, dword [edi + esi*4 + 0x194]
cmp dword [ecx + 0x364], 3
jne 0x42bd75
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
mov edx, esi
and edx, reloc.WSOCK32.dll_closesocket
push eax
jns 0x42bd4e
dec edx
or edx, 0xfffffffc
inc edx
mov eax, dword [0x455608]
imul edx, edx, 0x99
add edx, 0xbb
push edx
push 0x9b9bff
push 0
push str.Team_3
push eax
call fcn.00401290
add esp, 0x18
mov ecx, dword [edi + esi*4 + 0x194]
cmp dword [ecx + 0x364], 4
jne 0x42bdd1
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
and esi, reloc.WSOCK32.dll_closesocket
push eax
jns 0x42bda9
dec esi
or esi, 0xfffffffc
inc esi
mov edx, dword [0x455608]
imul esi, esi, 0x99
add esi, 0xbb
push esi
push 0x9b9bff
push 0
push str.Team_4
push edx
call fcn.00401290
add esp, 0x18
add ebx, 1
cmp ebx, dword [0x44d070]
jl 0x42bae4
mov eax, dword [0x4511fc]
mov ebp, dword [eax*4 + 0x451200]
cmp dword [ebp*4 + 0x451288], 0xb
jne 0x42c413
mov eax, ebp
cdq
and edx, 3
add eax, edx
mov esi, eax
sar esi, 2
imul esi, esi, 0xd4
cmp dword [ebp*4 + 0x451248], 0
mov edi, ebp
jl 0x42bec9
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42be2a
dec edi
or edi, 0xfffffffc
inc edi
mov eax, dword [esp + 0x24]
imul edi, edi, 0x99
push eax
mov eax, dword [esp + 0x18]
push 0
push 0
push 0xffffffffffffffff
lea ecx, [esi + 0x5e]
push ecx
mov ecx, dword [eax + ebp*4 + 0x194]
lea edx, [edi + 0x93]
push edx
mov edx, dword [ecx + 0x368]
mov ecx, dword [edx + 0x6fc]
call fcn.0043f100
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov al, cl
add al, 0x46
movzx edx, al
add cl, 0x19
or edx, 0xff00
movzx eax, cl
mov ecx, dword [esp + 0x14]
add esi, 0xf1
push esi
shl edx, 8
add edi, 0xb1
or edx, eax
push edi
push edx
mov edx, dword [ecx + ebp*4 + 0x194]
mov eax, dword [edx + 0x368]
push 0
add eax, 0x25324
push eax
jmp 0x42bf4d
and edi, reloc.WSOCK32.dll_closesocket
jns 0x42bed6
dec edi
or edi, 0xfffffffc
inc edi
mov edx, dword [esp + 0x24]
imul edi, edi, 0x99
push edx
push 0
push 0
push 0xffffffffffffffff
lea eax, [esi + 0x5e]
push eax
lea ecx, [edi + 0x93]
push ecx
mov ecx, dword [0x44fd84]
call fcn.0043f100
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dl, 0x4c
imul dl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov al, cl
add al, 0x46
movzx edx, al
add cl, 0x19
add esi, 0xf1
push esi
or edx, 0xff00
movzx eax, cl
add edi, 0xb1
push edi
shl edx, 8
or edx, eax
push edx
push 0
push str._Random
mov ecx, dword [0x455608]
push ecx
call fcn.00401290
mov edi, dword [0x458428]
mov ebx, dword [esp + 0x2c]
add esp, 0x18
or esi, 0xffffffff
cmp dword [esp + 0x38], 0
je 0x42bfe3
add dword [ebp*4 + 0x451248], 1
mov ecx, dword [ebp*4 + 0x451248]
mov eax, dword [ebx + 0x7d4]
cmp ecx, dword [eax + 0x4d82380]
jge 0x42c06b
cmp ecx, esi
je 0x42bfe3
mov eax, dword [eax + ecx*4]
cmp dword [eax + 0x6f8], 0
jne 0x42bf70
mov edx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x42bfc2
cmp eax, 3
jne 0x42bfc7
cmp edi, 1
jne 0x42bf70
mov edx, dword [ebx + 0x7d4]
mov eax, dword [ebx + ebp*4 + 0x194]
mov ecx, dword [edx + ecx*4]
mov dword [eax + 0x368], ecx
mov edi, dword [0x458428]
cmp dword [esp + 0x28], 0
je 0x42c094
add dword [ebp*4 + 0x451248], esi
cmp dword [ebp*4 + 0x451248], esi
je 0x42c094
jge 0x42c01a
mov edx, dword [ebx + 0x7d4]
mov eax, dword [edx + 0x4d82380]
sub eax, 1
mov dword [ebp*4 + 0x451248], eax
mov ecx, dword [ebp*4 + 0x451248]
mov edx, dword [ebx + 0x7d4]
mov eax, dword [edx + ecx*4]
cmp dword [eax + 0x6f8], 0
jne 0x42c059
mov ecx, dword [eax + 0x6f4]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
je 0x42c054
cmp eax, 3
jne 0x42c077
cmp edi, 1
je 0x42c077
add dword [ebp*4 + 0x451248], esi
cmp dword [ebp*4 + 0x451248], esi
jne 0x42c002
jmp 0x42c094
mov dword [ebp*4 + 0x451248], esi
jmp 0x42bfe3
mov eax, dword [ebp*4 + 0x451248]
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [ebx + ebp*4 + 0x194]
mov eax, dword [ecx + eax*4]
mov dword [edx + 0x368], eax
cmp dword [esp + 0x34], 0
je 0x42c0a2
mov dword [ebp*4 + 0x451248], esi
cmp dword [0x451220], 1
mov edi, dword [esp + 0x1c]
jne 0x42c0df
mov dword [ebp*4 + 0x451248], esi
cmp dword [edi], 2
mov esi, 0xb
je 0x42c0c7
mov dword [ebp*4 + 0x451288], esi
cmp dword [edi], 1
jne 0x42c0d3
mov dword [ebp*4 + 0x451288], esi
mov dword [0x451220], 0
jmp 0x42c0e4
mov esi, 0xb
cmp dword [esp + 0x2c], 0
je 0x42c337
push 0
mov ecx, 0x45560c
call fcn.00401a30
lea ebp, [ebp*4 + 0x451288]
mov dword [ebp], 0xc
cmp dword [edi], 1
mov dword [esp + 0x2c], 0
jne 0x42c337
mov eax, dword [0x4511fc]
mov ecx, dword [eax*4 + 0x451200]
mov dword [ebp], 0xd
xor ebp, ebp
cmp dword [ecx*4 + 0x451248], ebp
mov dword [0x451220], ebp
jge 0x42c148
mov dword [0x451220], 1
add eax, 1
cmp eax, dword [0x44d070]
mov dword [0x4511fc], eax
jl 0x42c327
xor edx, edx
cmp dword [0x451248], ebp
mov dword [esp + 0x30], ebp
setl dl
xor eax, eax
cmp dword [0x45124c], ebp
setl al
xor ecx, ecx
cmp dword [0x451250], ebp
mov dword [0x451228], edx
setl cl
xor edx, edx
cmp dword [0x451254], ebp
mov dword [0x45122c], eax
setl dl
xor eax, eax
cmp dword [0x451258], ebp
mov dword [0x451230], ecx
setl al
xor ecx, ecx
cmp dword [0x45125c], ebp
mov dword [0x451234], edx
setl cl
xor edx, edx
cmp dword [0x451260], ebp
mov dword [0x451238], eax
setl dl
xor eax, eax
cmp dword [0x451264], ebp
mov dword [0x45123c], ecx
setl al
lea ecx, [ebx + 0x194]
mov dword [esp + 0x20], ecx
mov dword [0x451240], edx
mov dword [0x451244], eax
cmp dword [ebp + 0x451228], 0
je 0x42c2f8
mov ecx, dword [ebx + 0x7d4]
mov eax, 1
xor esi, esi
cmp dword [ecx + 0x4d82380], eax
jle 0x42c2cb
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 0x7d4]
mov ebx, dword [edx + 0x4d82380]
lea edi, [ecx + 4]
jmp 0x42c230
xor ecx, ecx
cmp dword [0x451248], eax
jne 0x42c23f
mov ecx, 1
cmp dword [0x45124c], eax
jne 0x42c24c
mov ecx, 1
cmp dword [0x451250], eax
jne 0x42c259
mov ecx, 1
cmp dword [0x451254], eax
jne 0x42c266
mov ecx, 1
cmp dword [0x451258], eax
jne 0x42c273
mov ecx, 1
cmp dword [0x45125c], eax
jne 0x42c280
mov ecx, 1
cmp dword [0x451260], eax
jne 0x42c28d
mov ecx, 1
cmp dword [0x451264], eax
jne 0x42c29a
mov ecx, 1
mov edx, dword [edi]
cmp dword [edx + 0x6f8], 0
jne 0x42c2b9
test ecx, ecx
jne 0x42c2b9
cmp dword [edx + 0x6f4], 0x1e
jge 0x42c2b9
mov dword [esp + esi*4 + 0x44], eax
add esi, 1
add eax, 1
add edi, 4
cmp eax, ebx
jl 0x42c230
mov ebx, dword [esp + 0x14]
push esi
push 0xd8
call fcn.00417190
mov eax, dword [esp + eax*4 + 0x4c]
mov edx, dword [esp + 0x28]
mov dword [ebp + 0x451248], eax
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [edx]
mov eax, dword [ecx + eax*4]
add esp, 8
mov dword [edx + 0x368], eax
add dword [esp + 0x20], 4
add ebp, 4
cmp ebp, 0x20
jl 0x42c1ef
mov eax, dword [0x4511fc]
mov dword [0x44d06c], 2
mov dword [0x4512c8], 3
jmp 0x42c413
mov ecx, dword [eax*4 + 0x451200]
mov dword [ecx*4 + 0x451288], esi
jmp 0x42c33c
mov eax, dword [0x4511fc]
cmp dword [esp + 0x30], 0
je 0x42c413
xor ebx, ebx
push ebx
mov ecx, 0x455614
call fcn.00401a30
mov eax, dword [0x4511fc]
cmp eax, ebx
mov dword [esp + 0x30], ebx
jne 0x42c3e1
cmp dword [0x451288], esi
mov dword [0x4512c8], 1
jne 0x42c37d
mov dword [0x451288], ebx
cmp dword [0x45128c], esi
jne 0x42c38b
mov dword [0x45128c], ebx
cmp dword [0x451290], esi
jne 0x42c399
mov dword [0x451290], ebx
cmp dword [0x451294], esi
jne 0x42c3a7
mov dword [0x451294], ebx
cmp dword [0x451298], esi
jne 0x42c3b5
mov dword [0x451298], ebx
cmp dword [0x45129c], esi
jne 0x42c3c3
mov dword [0x45129c], ebx
cmp dword [0x4512a0], esi
jne 0x42c3d1
mov dword [0x4512a0], ebx
cmp dword [0x4512a4], esi
jne 0x42c413
mov dword [0x4512a4], ebx
jmp 0x42c413
mov ecx, dword [eax*4 + 0x4511fc]
sub eax, 1
mov dword [ecx*4 + 0x451288], 0xc
cmp dword [edi], 1
mov dword [0x4511fc], eax
jne 0x42c407
mov dword [ecx*4 + 0x451288], esi
cmp dword [edi], 2
jne 0x42c413
mov dword [ecx*4 + 0x451288], esi
mov esi, dword [eax*4 + 0x451200]
cmp dword [esi*4 + 0x451288], 0xc
jne 0x42cbd5
mov edx, dword [0x44d070]
add edx, 0xffffffff
or edi, 0xffffffff
cmp eax, edx
jne 0x42c562
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
test eax, eax
je 0x42c44f
cmp eax, 4
jne 0x42c562
mov eax, dword [esp + 0x14]
add eax, 0x198
mov ecx, 2
mov ebp, 0x45128c
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 4]
cdq
mov ebx, 0xa
idiv ebx
cmp edx, 3
jne 0x42c4a4
lea edx, [ecx - 2]
cmp edx, esi
je 0x42c4a4
mov eax, dword [esp + 0x18]
mov edx, dword [eax - 4]
mov eax, dword [edx + 0x364]
test eax, eax
je 0x42c49f
cmp edi, 0xffffffff
jne 0x42c497
mov edi, eax
jmp 0x42c4a4
test edi, edi
jl 0x42c4a4
cmp eax, edi
je 0x42c4a4
mov edi, 0xfffffffe
mov eax, dword [ebp]
cdq
idiv ebx
cmp edx, 3
jne 0x42c4dc
lea eax, [ecx - 1]
cmp eax, esi
je 0x42c4dc
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
mov eax, dword [eax + 0x364]
test eax, eax
je 0x42c4d7
cmp edi, 0xffffffff
jne 0x42c4cf
mov edi, eax
jmp 0x42c4dc
test edi, edi
jl 0x42c4dc
cmp eax, edi
je 0x42c4dc
mov edi, 0xfffffffe
mov eax, dword [ebp + 4]
cdq
idiv ebx
cmp edx, 3
jne 0x42c512
cmp ecx, esi
je 0x42c512
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
mov eax, dword [eax + 0x364]
test eax, eax
je 0x42c50d
cmp edi, 0xffffffff
jne 0x42c505
mov edi, eax
jmp 0x42c512
test edi, edi
jl 0x42c512
cmp eax, edi
je 0x42c512
mov edi, 0xfffffffe
mov eax, dword [ebp + 8]
cdq
idiv ebx
cmp edx, 3
jne 0x42c54b
lea edx, [ecx + 1]
cmp edx, esi
je 0x42c54b
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 8]
mov eax, dword [edx + 0x364]
test eax, eax
je 0x42c546
cmp edi, 0xffffffff
jne 0x42c53e
mov edi, eax
jmp 0x42c54b
test edi, edi
jl 0x42c54b
cmp eax, edi
je 0x42c54b
mov edi, 0xfffffffe
add dword [esp + 0x18], 0x10
add ecx, 4
lea eax, [ecx - 2]
add ebp, 0x10
cmp eax, 8
jl 0x42c466
mov ebx, dword [esp + 0x14]
jmp 0x42c570
mov ecx, dword [ebx + esi*4 + 0x194]
mov eax, dword [ecx + 0x364]
cmp eax, edi
je 0x42c593
mov edx, dword [esp + 0x1c]
cmp dword [edx], 4
jne 0x42c5ac
test eax, eax
je 0x42c593
cmp eax, 2
jle 0x42c5ac
mov eax, dword [ecx + 0x364]
add eax, 1
cdq
mov ebp, 5
idiv ebp
mov dword [ecx + 0x364], edx
jmp 0x42c570
mov eax, ecx
cmp dword [eax + 0x364], 0
jne 0x42c641
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
push eax
mov eax, esi
and eax, reloc.WSOCK32.dll_closesocket
jns 0x42c602
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x99
add eax, 0xa7
push eax
mov dl, cl
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
push 0
push str.Independent
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], 1
jne 0x42c6db
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
push eax
mov eax, esi
and eax, reloc.WSOCK32.dll_closesocket
jns 0x42c69c
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x99
add eax, 0xbb
push eax
mov dl, cl
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
push 0
push str.Team_1
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], 2
jne 0x42c775
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
push eax
mov eax, esi
and eax, reloc.WSOCK32.dll_closesocket
jns 0x42c736
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x99
add eax, 0xbb
push eax
mov dl, cl
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
push 0
push str.Team_2
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], 3
jne 0x42c80f
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
push eax
mov eax, esi
and eax, reloc.WSOCK32.dll_closesocket
jns 0x42c7d0
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x99
add eax, 0xbb
push eax
mov dl, cl
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
push 0
push str.Team_3
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
add esp, 0x18
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], 4
jne 0x42c8a9
mov ebx, dword [0x451224]
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, 0x4c
imul cl
mov cl, al
mov al, bl
mov dl, 0x1e
imul dl
add cl, al
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
imul eax, eax, 0xd4
add eax, 0x107
push eax
mov eax, esi
and eax, reloc.WSOCK32.dll_closesocket
jns 0x42c86a
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x99
add eax, 0xbb
push eax
mov dl, cl
add dl, 0x46
movzx eax, dl
mov edx, dword [0x455608]
add cl, 0x19
or eax, 0xff00
movzx ecx, cl
shl eax, 8
or eax, ecx
push eax
push 0
push str.Team_4
push edx
call fcn.00401290
mov ebx, dword [esp + 0x2c]
add esp, 0x18
cmp dword [esp + 0x38], 0
je 0x42c8f1
mov ecx, dword [ebx + esi*4 + 0x194]
mov eax, dword [ecx + 0x364]
add eax, 1
cdq
mov ebp, 5
idiv ebp
mov dword [ecx + 0x364], edx
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], edi
jne 0x42c8f1
mov ecx, eax
mov eax, dword [ecx + 0x364]
add eax, 1
cdq
idiv ebp
mov dword [ecx + 0x364], edx
xor ebp, ebp
cmp dword [esp + 0x28], ebp
je 0x42c973
mov eax, dword [ebx + esi*4 + 0x194]
or edx, 0xffffffff
add dword [eax + 0x364], edx
mov ecx, dword [ebx + esi*4 + 0x194]
cmp dword [ecx + 0x364], ebp
mov ebp, 4
jge 0x42c929
mov eax, ecx
mov dword [eax + 0x364], ebp
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx]
mov eax, dword [ebx + esi*4 + 0x194]
mov eax, dword [eax + 0x364]
cmp eax, edi
je 0x42c94e
cmp dword [ecx], ebp
jne 0x42c979
test eax, eax
je 0x42c94e
cmp eax, 2
jle 0x42c979
mov eax, dword [ebx + esi*4 + 0x194]
add dword [eax + 0x364], edx
mov eax, dword [ebx + esi*4 + 0x194]
cmp dword [eax + 0x364], 0
jge 0x42c930
mov dword [eax + 0x364], ebp
jmp 0x42c930
mov ecx, dword [esp + 0x1c]
jmp 0x42c97b
xor ebp, ebp
cmp dword [ecx], 2
jne 0x42c98f
mov ecx, dword [ebx + esi*4 + 0x194]
mov dword [ecx + 0x364], ebp
jmp 0x42c999
cmp dword [esp + 0x2c], ebp
je 0x42cbb3
push ebp
mov ecx, 0x45560c
call fcn.00401a30
mov eax, dword [0x4511fc]
mov edx, dword [eax*4 + 0x451200]
cmp dword [edx*4 + 0x451248], ebp
mov dword [esi*4 + 0x451288], 0xd
mov dword [0x451220], ebp
jge 0x42c9d4
mov dword [0x451220], 1
add eax, 1
cmp eax, dword [0x44d070]
mov dword [0x4511fc], eax
jl 0x42cba1
xor eax, eax
cmp dword [0x451248], eax
mov ebx, dword [esp + 0x14]
setl al
xor ecx, ecx
cmp dword [0x45124c], ecx
setl cl
xor edx, edx
cmp dword [0x451250], edx
mov dword [0x451228], eax
setl dl
xor eax, eax
cmp dword [0x451254], eax
mov dword [0x45122c], ecx
setl al
xor ecx, ecx
cmp dword [0x451258], ecx
mov dword [0x451230], edx
setl cl
xor edx, edx
cmp dword [0x45125c], edx
mov dword [0x451234], eax
setl dl
xor eax, eax
cmp dword [0x451260], eax
mov dword [0x451238], ecx
setl al
xor ecx, ecx
cmp dword [0x451264], ecx
mov dword [0x45123c], edx
setl cl
lea edx, [ebx + 0x194]
mov dword [esp + 0x38], edx
mov dword [0x451240], eax
xor ebp, ebp
mov dword [0x451244], ecx
cmp dword [ebp + 0x451228], 0
je 0x42cb78
mov ecx, dword [ebx + 0x7d4]
mov eax, 1
xor esi, esi
cmp dword [ecx + 0x4d82380], eax
jle 0x42cb4b
mov edx, ecx
mov edx, dword [edx + 0x4d82380]
mov dword [esp + 0x20], edx
lea edi, [ecx + 4]
xor ecx, ecx
cmp dword [0x451248], eax
jne 0x42cac1
mov ecx, 1
cmp dword [0x45124c], eax
jne 0x42cace
mov ecx, 1
cmp dword [0x451250], eax
jne 0x42cadb
mov ecx, 1
cmp dword [0x451254], eax
jne 0x42cae8
mov ecx, 1
cmp dword [0x451258], eax
jne 0x42caf5
mov ecx, 1
cmp dword [0x45125c], eax
jne 0x42cb02
mov ecx, 1
cmp dword [0x451260], eax
jne 0x42cb0f
mov ecx, 1
cmp dword [0x451264], eax
jne 0x42cb1c
mov ecx, 1
mov edx, dword [edi]
cmp dword [edx + 0x6f8], 0
jne 0x42cb3b
test ecx, ecx
jne 0x42cb3b
cmp dword [edx + 0x6f4], 0x1e
jge 0x42cb3b
mov dword [esp + esi*4 + 0x44], eax
add esi, 1
add eax, 1
add edi, 4
cmp eax, dword [esp + 0x20]
jl 0x42cab2
push esi
push 0xd9
call fcn.00417190
mov eax, dword [esp + eax*4 + 0x4c]
mov edx, dword [esp + 0x40]
mov dword [ebp + 0x451248], eax
mov ecx, dword [ebx + 0x7d4]
mov edx, dword [edx]
mov eax, dword [ecx + eax*4]
add esp, 8
mov dword [edx + 0x368], eax
add dword [esp + 0x38], 4
add ebp, 4
cmp ebp, 0x20
jl 0x42ca7d
mov dword [0x44d06c], 2
mov dword [0x4512c8], 3
mov ebp, ebx
jmp 0x42cbe6
mov ecx, dword [eax*4 + 0x451200]
mov dword [ecx*4 + 0x451288], 0xb
cmp dword [esp + 0x30], ebp
je 0x42cbd5
push ebp
mov ecx, 0x455614
call fcn.00401a30
mov dword [esi*4 + 0x451288], 0xb
mov dword [0x451220], ebp
cmp dword [0x4512c8], 3
jne 0x42e118
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
xor esi, esi
cmp dword [edi], 4
je 0x42e118
mov ebx, dword [esp + 0x24]
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 8
push 3
push 3
mov dword [esp + 0x4c], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x30], esi
call fcn.0043f100
mov ecx, dword [0x451178]
push ebx
push esi
push 1
push 0xf
push 0x9f
push 3
call fcn.0043f100
cmp dword [0x44d06c], esi
jne 0x42cc55
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 9
push 0x10
push 0x5c
call fcn.0043f100
cmp dword [0x44d06c], 1
jne 0x42cc72
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0xa
push 0x27
push 0x40
call fcn.0043f100
cmp dword [0x44d06c], 2
jne 0x42cc8f
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0xb
push 0x40
push 0x28
call fcn.0043f100
cmp dword [0x44d06c], 3
jne 0x42ccac
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0xc
push 0x57
push 0xf
call fcn.0043f100
cmp dword [0x44d06c], 4
jne 0x42ccc9
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0xd
push 0x6f
push 0x25
call fcn.0043f100
cmp dword [0x44d06c], 5
jne 0x42cce9
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0xe
push 0x89
push 0x65
call fcn.0043f100
cmp dword [0x44d028], 1
jne 0x42ccfe
mov eax, 0x64
mov dword [0x44d024], eax
jmp 0x42cd03
mov eax, dword [0x44d024]
cmp dword [edi], 1
je 0x42cd35
mov edx, dword [ebp + 0x7d4]
imul eax, eax, 0x990
mov ecx, dword [0x455608]
push 0x5b
push 0xae
push 0xff9b9b
push esi
lea eax, [edx + eax + 0x4d4617c]
push eax
push ecx
jmp 0x42ce15
mov ecx, dword [0x450b94]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [eax + eax*4]
add eax, eax
sub ecx, eax
je 0x42cd5a
mov dword [0x450b94], eax
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0x17
push 0x57
push 0xf
call fcn.0043f100
cmp dword [0x44d06c], 3
jne 0x42cd8b
mov ecx, dword [0x451178]
push ebx
push esi
push esi
push 0x16
push 0x57
push 0xf
call fcn.0043f100
mov ecx, dword [0x450b94]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
push 0x5b
jge 0x42cdd5
push 0xc2
push 0xff9b9b
add al, 0x31
push esi
lea edx, [esp + 0x84c]
mov byte [esp + 0x84c], al
mov eax, dword [0x455608]
push edx
mov byte [esp + 0x851], 0
push eax
jmp 0x42ce15
mov ecx, dword [str.Survival]
mov edx, dword [0x449a24]
mov al, byte [0x449a28]
push 0xae
push 0xff9b9b
mov dword [esp + 0x848], ecx
push esi
lea ecx, [esp + 0x84c]
mov dword [esp + 0x850], edx
mov edx, dword [0x455608]
push ecx
mov byte [esp + 0x858], al
push edx
call fcn.00401290
mov eax, dword [0x450c30]
add esp, 0x18
cmp eax, 2
jne 0x42ce3b
push 0x73
push 0xae
push 0xff9b9b
push esi
push str.Easy
jmp 0x42ce91
cmp eax, 1
jne 0x42ce5b
mov ecx, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push esi
push str.Normal
push ecx
jmp 0x42ce97
cmp eax, esi
jne 0x42ce7a
mov edx, dword [0x455608]
push 0x73
push 0xae
push 0xff9b9b
push esi
push str.Difficult
push edx
jmp 0x42ce97
cmp eax, 0xffffffff
jne 0x42ce9f
push 0x73
push 0xae
push 0xff9b9b
push esi
push str.CRAZY_
mov eax, dword [0x455608]
push eax
call fcn.00401290
add esp, 0x18
lea eax, [ebp + 4]
lea ecx, [ebp + 0x194]
mov ebp, dword [esp + 0x3c]
mov edi, eax
mov eax, 0x451268
mov esi, ecx
mov edx, 1
lea ebx, [ebx]
cmp byte [edi], 0
je 0x42cf67
mov ecx, dword [esi]
cmp byte [ecx + 0xcd], 0
je 0x42cee9
cmp dword [eax], 0
jne 0x42cee2
cmp ebp, 3
jne 0x42cee2
mov dword [esp + 0x34], edx
mov dword [eax], edx
jmp 0x42cf67
cmp byte [ecx + 0xce], 0
je 0x42cf04
cmp dword [eax], 0
jne 0x42cf00
cmp ebp, 3
jne 0x42cf00
mov dword [esp + 0x20], edx
mov dword [eax], edx
jmp 0x42cf67
cmp byte [ecx + 0xd0], 0
je 0x42cf1f
cmp dword [eax], 0
jne 0x42cf1b
cmp ebp, 3
jne 0x42cf1b
mov dword [esp + 0x38], edx
mov dword [eax], edx
jmp 0x42cf67
cmp byte [ecx + 0xcf], 0
je 0x42cf3a
cmp dword [eax], 0
jne 0x42cf36
cmp ebp, 3
jne 0x42cf36
mov dword [esp + 0x30], edx
mov dword [eax], edx
jmp 0x42cf67
cmp byte [ecx + 0xd1], 0
je 0x42cf55
cmp dword [eax], 0
jne 0x42cf51
cmp ebp, 3
jne 0x42cf51
mov dword [esp + 0x18], edx
mov dword [eax], edx
jmp 0x42cf67
xor edx, edx
cmp byte [ecx + 0xd2], dl
setne dl
mov dword [eax], edx
mov edx, 1
add eax, 4
add edi, edx
add esi, 4
cmp eax, 0x451288
jl 0x42cec0
cmp dword [esp + 0x34], 0
je 0x42cf93
sub dword [0x44d06c], edx
jns 0x42cf93
mov dword [0x44d06c], 5
cmp dword [esp + 0x20], 0
je 0x42cfb0
mov eax, dword [0x44d06c]
add eax, 1
cdq
mov ecx, 6
idiv ecx
mov dword [0x44d06c], edx
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi]
push ebx
push edx
push eax
push ecx
call fcn.00402130
xor edi, edi
add esp, 0x10
cmp dword [0x450b98], edi
jne 0x42cfea
cmp dword [esp + 0x18], edi
je 0x42d7e9
cmp dword [0x44d06c], edi
jne 0x42d766
mov dword [0x450bb0], edi
mov dword [0x450bb4], edi
cmp dword [esi], 1
jne 0x42d0a8
mov eax, dword [0x450b94]
cmp eax, edi
mov dword [0x450b9c], 0x46
mov dword [0x450ba8], edi
mov dword [0x450bac], edi
mov dword [0x450ba4], edi
mov dword [0x44d028], edi
jne 0x42d036
mov dword [0x44d024], 1
jmp 0x42d089
cmp eax, 0xa
jne 0x42d047
mov dword [0x44d024], 2
jmp 0x42d089
cmp eax, 0x14
jne 0x42d058
mov dword [0x44d024], 3
jmp 0x42d089
cmp eax, 0x1e
jne 0x42d069
mov dword [0x44d024], 4
jmp 0x42d089
cmp eax, 0x28
jne 0x42d07a
mov dword [0x44d024], 5
jmp 0x42d089
cmp eax, 0x32
jne 0x42d089
mov dword [0x44d024], 6
or eax, 0xffffffff
mov dword [0x44fb6c], eax
mov dword [0x450ba0], edi
mov dword [0x44f880], eax
mov dword [0x450bc8], edi
mov dword [0x450bc4], edi
mov edx, dword [esp + 0x40]
lea eax, [esp + 0x814]
push eax
mov dword [edx], edi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx ecx, word [esp + 0x820]
movzx edx, word [esp + 0x81e]
movzx eax, word [esp + 0x81c]
mov ebp, dword [sym.imp.MSVCR80.dll_sprintf]
push ecx
movzx ecx, word [esp + 0x81e]
push edx
movzx edx, word [esp + 0x81e]
push eax
movzx eax, word [esp + 0x820]
push ecx
push edx
push eax
lea ecx, [esp + 0x8b8]
push str._4d_02d_02d__02d_02d_02d
push ecx
call ebp
add esp, 0x20
cmp dword [esi], 1
jne 0x42d1dc
mov ecx, dword [0x450b94]
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jge 0x42d1ac
add eax, 1
push eax
lea edx, [esp + 0x82c]
push 0x447b00
push edx
call ebp
lea eax, [esp + 0x8ac]
add esp, 0xc
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x42d153
mov ecx, dword [str._Stage_]
mov edx, dword [0x4499dc]
mov dword [eax], ecx
mov dword [eax + 4], edx
lea eax, [esp + 0x828]
mov edx, eax
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x42d177
lea edi, [esp + 0x8a0]
sub eax, edx
add edi, 0xffffffff
lea esp, [esp]
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x42d190
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x42d1dc
lea eax, [esp + 0x8a0]
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x42d1b6
mov ecx, dword [str._Survival]
mov edx, dword [0x4499d0]
mov dword [eax], ecx
mov cx, word [0x4499d4]
mov dword [eax + 4], edx
mov word [eax + 8], cx
mov edx, dword [esp + 0x1c]
xor ebx, ebx
cmp dword [edx], ebx
jne 0x42d201
lea edi, [esp + 0x8a0]
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x42d1f0
mov eax, dword [0x4499c8]
mov dword [edi], eax
lea ecx, [esp + 0x8a0]
push ecx
push 0x4499c0
push 0x44fd98
call ebp
add esp, 0xc
cmp dword [0x450be4], ebx
mov dword [0x450b6c], ebx
je 0x42d230
mov dword [0x450b70], 1
cmp dword [0x450b98], ebx
push ebx
je 0x42d255
push 0x226
push 0x31a
push ebx
push ebx
call fcn.00437040
add esp, 0x14
mov dword [0x450b98], ebx
jmp 0x42d25f
mov ecx, 0x455610
call fcn.00401a30
mov esi, dword [esp + 0x14]
push 0x186
lea eax, [esi + 0xe]
push ebx
push eax
call sub.MSVCR80.dll_memset
add esp, 0xc
cmp dword [0x44d028], 1
jne 0x42d2bf
mov edx, dword [esi + 0x7d4]
mov eax, dword [edx + 0x4d82384]
sub eax, 2
push eax
push 0xda
call fcn.00417190
mov dword [0x44d024], eax
mov ecx, dword [esi + 0x7d4]
mov edx, dword [ecx + 0x4d82384]
sub edx, 3
add esp, 8
cmp eax, edx
jne 0x42d2c4
mov eax, 0x63
mov dword [0x44d024], eax
jmp 0x42d2c4
mov eax, dword [0x44d024]
mov edi, esi
xor ebp, ebp
mov dword [esp + 0x34], eax
xor ebx, ebx
lea esi, [edi + 0x194]
jmp 0x42d2e0
mov eax, dword [ebx*4 + 0x451288]
cmp eax, 0xa
jle 0x42d432
mov eax, dword [esi]
mov ecx, dword [eax + 0x364]
mov edi, dword [esi + 0x28]
mov ebp, dword [eax + 0x368]
mov dword [esp + 0x20], ecx
mov ecx, edi
call fcn.004061e0
fld qword [0x4499b8]
mov ecx, dword [esp + 0x20]
mov dword [edi + 0x368], ebp
mov edx, dword [ebp + 0x90]
fstp qword [edi + 0x58]
fldz
mov ebp, dword [esp + 0x14]
fstp qword [edi + 0x60]
mov dword [edi + 0x31c], edx
fld qword [0x447920]
fstp qword [edi + 0x68]
mov eax, dword [esi + 0x28]
mov edi, dword [esp + 0x34]
mov dword [eax + 0x364], ecx
imul edi, edi, 0x990
mov eax, dword [esp + 0x14]
add eax, 0xe
mov byte [eax + ebx], 1
mov edx, dword [esi + 0x28]
mov dword [edx + 8], 0x4b
mov eax, dword [ebp + 0x7d4]
mov eax, dword [eax + edi + 0x4d45db0]
cdq
sub eax, edx
sar eax, 1
push eax
push 0xdb
call fcn.00417190
mov edx, dword [ebp + 0x7d4]
mov ecx, eax
mov eax, dword [edx + edi + 0x4d45db0]
cdq
and edx, 3
add eax, edx
sar eax, 2
add ecx, eax
mov eax, dword [esi + 0x28]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp + 0x7d4]
mov edx, dword [ecx + edi + 0x4d45db8]
sub edx, dword [ecx + edi + 0x4d45db4]
lea eax, [ecx + edi]
push edx
push 0xdc
call fcn.00417190
mov ecx, dword [ebp + 0x7d4]
add eax, dword [ecx + edi + 0x4d45db4]
mov edx, dword [esi + 0x28]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x28]
mov dword [eax + 0x14], 0
mov eax, dword [esi + 0x28]
add esp, 0x10
fild dword [eax + 0x10]
fstp qword [eax + 0x58]
mov eax, dword [esi + 0x28]
fild dword [eax + 0x18]
fstp qword [eax + 0x68]
mov ecx, dword [esi + 0x28]
fldz
mov eax, dword [esp + 0x1c]
fstp qword [ecx + 0x60]
mov edx, dword [esi + 0x28]
mov dword [edx + 0x308], 0xc8
cmp dword [eax], 1
jne 0x42d421
mov ecx, dword [esi + 0x28]
mov dword [ecx + 0x308], 0x1f4
mov eax, dword [esi + 0x28]
lea edx, [ebx + 0xa]
mov dword [eax + 0x354], edx
jmp 0x42d56a
cmp eax, ebp
jle 0x42d56e
mov edi, dword [esi]
mov ecx, dword [edi + 0x364]
mov ebp, dword [edi + 0x368]
mov dword [esp + 0x20], ecx
mov ecx, edi
call fcn.004061e0
fld qword [0x4499b0]
mov ecx, dword [esp + 0x20]
mov dword [edi + 0x368], ebp
mov edx, dword [ebp + 0x90]
fstp qword [edi + 0x58]
fld qword [0x4499a8]
mov ebp, dword [esp + 0x14]
fstp qword [edi + 0x60]
mov dword [edi + 0x31c], edx
fld qword [0x447920]
fstp qword [edi + 0x68]
mov eax, dword [esi]
mov edi, dword [esp + 0x34]
mov dword [eax + 0x364], ecx
imul edi, edi, 0x990
mov eax, dword [esp + 0x14]
add eax, 4
mov byte [eax + ebx], 1
mov edx, dword [esi]
mov dword [edx + 8], 0x4b
mov eax, dword [ebp + 0x7d4]
mov eax, dword [eax + edi + 0x4d45db0]
cdq
sub eax, edx
sar eax, 1
push eax
push 0xdd
call fcn.00417190
mov edx, dword [ebp + 0x7d4]
mov ecx, eax
mov eax, dword [edx + edi + 0x4d45db0]
cdq
and edx, 3
add eax, edx
sar eax, 2
add ecx, eax
mov eax, dword [esi]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp + 0x7d4]
mov edx, dword [ecx + edi + 0x4d45db8]
sub edx, dword [ecx + edi + 0x4d45db4]
lea eax, [ecx + edi]
push edx
push 0xde
call fcn.00417190
mov ecx, dword [ebp + 0x7d4]
add eax, dword [ecx + edi + 0x4d45db4]
mov edx, dword [esi]
mov dword [edx + 0x18], eax
mov eax, dword [esi]
mov dword [eax + 0x14], 0
mov eax, dword [esi]
add esp, 0x10
fild dword [eax + 0x10]
fstp qword [eax + 0x58]
mov eax, dword [esi]
fild dword [eax + 0x18]
fstp qword [eax + 0x68]
mov ecx, dword [esi]
fldz
mov eax, dword [esp + 0x1c]
fstp qword [ecx + 0x60]
mov edx, dword [esi]
mov dword [edx + 0x308], 0xc8
cmp dword [eax], 1
jne 0x42d562
mov ecx, dword [esi]
mov dword [ecx + 0x308], 0x1f4
mov edx, dword [esi]
mov dword [edx + 0x354], ebx
mov edi, ebp
xor ebp, ebp
add ebx, 1
add esi, 4
cmp ebx, 8
jl 0x42d2e0
mov eax, 0xa
lea ecx, [edi + 0x198]
mov esi, 0x50
lea ecx, [ecx]
cmp byte [edi + eax - 6], 0
je 0x42d5a8
mov edx, dword [ecx - 4]
cmp dword [edx + 0x364], ebp
jne 0x42d5a8
mov dword [edx + 0x364], eax
cmp byte [edi + eax - 5], 0
je 0x42d5c2
mov edx, dword [ecx]
cmp dword [edx + 0x364], ebp
jne 0x42d5c2
lea ebx, [eax + 1]
mov dword [edx + 0x364], ebx
cmp byte [edi + eax - 4], 0
je 0x42d5dd
mov edx, dword [ecx + 4]
cmp dword [edx + 0x364], ebp
jne 0x42d5dd
lea ebx, [eax + 2]
mov dword [edx + 0x364], ebx
cmp byte [edi + eax - 3], 0
je 0x42d5f8
mov edx, dword [ecx + 8]
cmp dword [edx + 0x364], ebp
jne 0x42d5f8
lea ebx, [eax + 3]
mov dword [edx + 0x364], ebx
cmp byte [edi + eax - 2], 0
je 0x42d613
mov edx, dword [ecx + 0xc]
cmp dword [edx + 0x364], ebp
jne 0x42d613
lea ebx, [eax + 4]
mov dword [edx + 0x364], ebx
add ecx, 0x14
add eax, 5
sub esi, 1
jne 0x42d590
mov dword [0x450c24], ebp
mov dword [0x450c20], ebp
mov dword [0x450c1c], ebp
mov dword [0x450c18], ebp
mov dword [0x450c14], ebp
mov dword [0x450c10], ebp
mov dword [0x450c0c], ebp
mov dword [0x450c08], ebp
mov dword [0x450c04], ebp
mov dword [0x450c28], ebp
mov eax, dword [edi + 0x7d4]
xor esi, esi
cmp dword [eax + 0x4d82384], ebp
jle 0x42d68d
mov edi, edi
mov ecx, dword [edi + 0x7d4]
push esi
call fcn.0040c0f0
mov ecx, dword [edi + 0x7d4]
add esi, 1
cmp esi, dword [ecx + 0x4d82384]
jl 0x42d670
mov eax, dword [0x44d024]
cmp eax, 0x63
je 0x42d6a3
mov ecx, dword [edi + 0x7d4]
push eax
call fcn.0040c040
mov ebp, dword [esp + 0x1c]
xor ebx, ebx
mov dword [0x44d034], 1
mov dword [0x450bbc], ebx
mov dword [0x450bdc], ebx
cmp dword [ebp], 1
jne 0x42d710
lea esi, [edi + 0x194]
cmp byte [edi + ebx + 4], 0
je 0x42d702
mov edx, dword [esi]
mov eax, dword [edx + 0x368]
cmp dword [eax + 0x6f8], 0
jne 0x42d702
push 0x1e
push 0xdf
call fcn.00417190
mov ecx, dword [esi]
add esp, 8
add eax, 0x32
mov dword [ecx + 0x10], eax
mov eax, dword [esi]
fild dword [eax + 0x10]
fstp qword [eax + 0x58]
add ebx, 1
add esi, 4
cmp ebx, 0x190
jl 0x42d6cb
cmp dword [ebp], 0
jne 0x42d71b
call fcn.004025b0
mov ebx, 0x14
lea ebp, [edi + 0x1e4]
cmp byte [edi + ebx + 4], 0
lea esi, [edi + 4]
jne 0x42d738
mov ecx, dword [ebp]
call fcn.004061e0
add ebx, 1
add ebp, 4
cmp ebx, 0x190
jl 0x42d726
mov ecx, edi
call fcn.00431cd0
mov edx, dword [esp + 0x1c]
mov eax, dword [edx]
add edi, 0x194
push edi
push esi
push eax
call fcn.0043d3c0
add esp, 0xc
xor edi, edi
cmp dword [esp + 0x18], edi
mov ebx, 1
je 0x42d7ee
cmp dword [0x44d06c], 4
jne 0x42d7b5
sub dword [0x450c30], ebx
jns 0x42d78e
cmp dword [0x458428], edi
je 0x42d79b
or ebp, 0xffffffff
cmp dword [0x450c30], ebp
jge 0x42d7a8
jmp 0x42d79e
or ebp, 0xffffffff
mov dword [0x450c30], 2
push edi
mov ecx, 0x455610
call fcn.00401a30
jmp 0x42d7b8
or ebp, 0xffffffff
cmp dword [0x44d06c], 5
jne 0x42d7f1
push edi
mov ecx, 0x455610
call fcn.00401a30
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x14]
mov dword [ecx], 0xa
mov ecx, esi
mov dword [0x457580], edi
call fcn.00431cd0
jmp 0x42d7f5
mov ebx, 1
or ebp, 0xffffffff
mov esi, dword [esp + 0x14]
cmp dword [0x450c2c], ebx
jne 0x42de1c
call fcn.004025d0
mov edx, dword [esp + 0x40]
push 0x190
lea eax, [esi + 4]
push edi
push eax
mov dword [edx], edi
call sub.MSVCR80.dll_memset
mov dword [0x44d028], ebx
mov eax, dword [esi + 0x7d4]
mov ecx, dword [eax + 0x4d82384]
sub ecx, 2
push ecx
push 0xe0
call fcn.00417190
mov dword [0x44d024], eax
mov edx, dword [esi + 0x7d4]
mov ecx, dword [edx + 0x4d82384]
sub ecx, 3
add esp, 0x14
cmp eax, ecx
jne 0x42d860
mov dword [0x44d024], 0x63
lea eax, [esi + 0x194]
mov ebp, 0x451248
mov dword [esp + 0x34], eax
jmp 0x42d878
xor edi, edi
mov ebx, 1
mov ecx, dword [esi + 0x7d4]
cmp dword [ecx + 0x4d82380], ebx
mov eax, ebx
jle 0x42d937
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 0x7d4]
mov ebx, dword [edx + 0x4d82380]
lea esi, [ecx + 4]
nop
xor ecx, ecx
cmp dword [0x451248], eax
jne 0x42d8af
mov ecx, 1
cmp dword [0x45124c], eax
jne 0x42d8bc
mov ecx, 1
cmp dword [0x451250], eax
jne 0x42d8c9
mov ecx, 1
cmp dword [0x451254], eax
jne 0x42d8d6
mov ecx, 1
cmp dword [0x451258], eax
jne 0x42d8e3
mov ecx, 1
cmp dword [0x45125c], eax
jne 0x42d8f0
mov ecx, 1
cmp dword [0x451260], eax
jne 0x42d8fd
mov ecx, 1
cmp dword [0x451264], eax
jne 0x42d90a
mov ecx, 1
mov edx, dword [esi]
cmp dword [edx + 0x6f8], 0
jne 0x42d929
test ecx, ecx
jne 0x42d929
cmp dword [edx + 0x6f4], 0x1e
jge 0x42d929
mov dword [esp + edi*4 + 0x44], eax
add edi, 1
add eax, 1
add esi, 4
cmp eax, ebx
jl 0x42d8a0
push edi
push 0xe1
call fcn.00417190
mov eax, dword [esp + eax*4 + 0x4c]
mov ecx, dword [esp + 0x1c]
mov dword [ebp], eax
mov edx, dword [ecx + 0x7d4]
mov ecx, dword [esp + 0x3c]
mov esi, dword [ecx]
mov eax, dword [edx + eax*4]
add ebp, 4
add ecx, 4
add esp, 8
cmp ebp, 0x451268
mov dword [esi + 0x368], eax
mov esi, dword [esp + 0x14]
mov dword [esp + 0x34], ecx
jl 0x42d871
mov ebp, dword [0x44d024]
xor ebx, ebx
imul ebp, ebp, 0x990
mov dword [0x450c2c], 1
add esi, 0x1bc
lea ecx, [ecx]
mov ecx, dword [esi - 0x28]
mov edx, dword [ecx + 0x368]
mov edi, dword [esi]
mov ecx, edi
mov dword [esp + 0x34], edx
call fcn.004061e0
fld qword [0x4499b8]
mov eax, dword [esp + 0x34]
mov dword [edi + 0x368], eax
mov eax, dword [eax + 0x90]
fstp qword [edi + 0x58]
fldz
mov dword [edi + 0x31c], eax
fstp qword [edi + 0x60]
fld qword [0x447920]
fstp qword [edi + 0x68]
mov ecx, dword [esi]
mov edi, dword [esp + 0x14]
mov dword [ecx + 8], 0x4b
mov edx, dword [edi + 0x7d4]
mov eax, dword [edx + ebp + 0x4d45db0]
cdq
sub eax, edx
sar eax, 1
push eax
push 0xe2
call fcn.00417190
mov edx, dword [edi + 0x7d4]
mov ecx, eax
mov eax, dword [edx + ebp + 0x4d45db0]
cdq
and edx, 3
add eax, edx
sar eax, 2
add ecx, eax
mov eax, dword [esi]
mov dword [eax + 0x10], ecx
mov ecx, dword [edi + 0x7d4]
mov edx, dword [ecx + ebp + 0x4d45db8]
sub edx, dword [ecx + ebp + 0x4d45db4]
lea eax, [ecx + ebp]
push edx
push 0xe3
call fcn.00417190
mov ecx, dword [edi + 0x7d4]
add eax, dword [ecx + ebp + 0x4d45db4]
mov edx, dword [esi]
mov dword [edx + 0x18], eax
mov eax, dword [esi]
fild dword [eax + 0x10]
lea ecx, [ebx + 0xa]
add ebx, 1
add esp, 0x10
fstp qword [eax + 0x58]
mov eax, dword [esi]
fild dword [eax + 0x18]
add esi, 4
cmp ebx, 8
fstp qword [eax + 0x68]
mov eax, dword [esi - 4]
mov dword [eax + 0x308], 0xc8
mov edx, dword [esi - 4]
mov dword [edx + 0x354], ecx
jl 0x42d9a0
push 0x1e
push 0xe4
call fcn.00417190
add esp, 8
cmp eax, 7
mov esi, edi
jge 0x42dafc
mov eax, dword [esi + 0x1bc]
xor ebp, ebp
mov byte [esi + 0xe], 1
mov dword [eax + 0x364], ebp
mov edi, 1
lea ebx, [esi + 0x1c0]
mov edi, edi
push 5
push 0xe5
call fcn.00417190
mov ecx, dword [ebx]
mov dword [ecx + 0x364], eax
mov byte [esi + edi + 0xe], 1
add edi, 1
add esp, 8
add ebx, 4
cmp edi, 8
jl 0x42dad0
jmp 0x42dcbd
cmp eax, 0x12
jge 0x42dbcd
mov edx, dword [esi + 0x1bc]
mov eax, 1
mov dword [edx + 0x364], eax
mov ecx, dword [esi + 0x1c0]
mov dword [ecx + 0x364], eax
mov edx, dword [esi + 0x1c4]
mov dword [edx + 0x364], eax
mov ecx, dword [esi + 0x1c8]
mov dword [ecx + 0x364], eax
mov edx, dword [esi + 0x1cc]
mov eax, 2
mov dword [edx + 0x364], eax
mov ecx, dword [esi + 0x1d0]
mov dword [ecx + 0x364], eax
mov edx, dword [esi + 0x1d4]
mov dword [edx + 0x364], eax
mov ecx, dword [esi + 0x1d8]
mov dword [ecx + 0x364], eax
mov eax, 0x1010101
mov edi, 3
push edi
mov dword [esi + 0xe], eax
push 0xe6
mov dword [esi + 0x12], eax
call fcn.00417190
add esp, 8
test eax, eax
jne 0x42db97
mov byte [esi + 0x15], al
mov byte [esi + 0x11], al
push 6
push 0xe7
call fcn.00417190
add esp, 8
xor ebp, ebp
test eax, eax
jne 0x42dcbd
mov edx, dword [esi + 0x1d8]
mov dword [edx + 0x364], edi
mov eax, dword [esi + 0x1c8]
mov dword [eax + 0x364], edi
jmp 0x42dcbd
cmp eax, 0x19
jge 0x42dc66
mov ecx, dword [esi + 0x1bc]
mov edi, 1
mov dword [ecx + 0x364], edi
mov edx, dword [esi + 0x1c0]
mov dword [edx + 0x364], edi
mov ecx, dword [esi + 0x1c4]
mov eax, 2
mov dword [ecx + 0x364], eax
mov edx, dword [esi + 0x1c8]
mov dword [edx + 0x364], eax
mov ecx, dword [esi + 0x1cc]
mov eax, 3
mov dword [ecx + 0x364], eax
mov edx, dword [esi + 0x1d0]
mov dword [edx + 0x364], eax
mov edx, dword [esi + 0x1d4]
mov ecx, 4
mov dword [edx + 0x364], ecx
mov edx, dword [esi + 0x1d8]
push eax
push 0xe8
mov dword [edx + 0x364], ecx
call fcn.00417190
lea eax, [eax + eax + 4]
xor ebp, ebp
add esp, 8
cmp eax, ebp
jle 0x42dcbd
push eax
push edi
jmp 0x42dcb1
mov eax, dword [esi + 0x1bc]
xor ebp, ebp
mov dword [eax + 0x364], ebp
mov ecx, dword [esi + 0x1c0]
mov dword [ecx + 0x364], ebp
mov edx, dword [esi + 0x1c4]
mov dword [edx + 0x364], ebp
mov eax, dword [esi + 0x1c8]
push 3
push 0xe9
mov dword [eax + 0x364], ebp
call fcn.00417190
add eax, 2
add esp, 8
cmp eax, ebp
jle 0x42dcbd
push eax
push 1
lea ecx, [esi + 0xe]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov eax, 0xa
lea ecx, [esi + 0x198]
mov edi, 0x50
lea ecx, [ecx]
cmp byte [eax + esi - 6], 0
je 0x42dce8
mov edx, dword [ecx - 4]
cmp dword [edx + 0x364], ebp
jne 0x42dce8
mov dword [edx + 0x364], eax
cmp byte [eax + esi - 5], 0
je 0x42dd02
mov edx, dword [ecx]
cmp dword [edx + 0x364], ebp
jne 0x42dd02
lea ebx, [eax + 1]
mov dword [edx + 0x364], ebx
cmp byte [eax + esi - 4], 0
je 0x42dd1d
mov edx, dword [ecx + 4]
cmp dword [edx + 0x364], ebp
jne 0x42dd1d
lea ebx, [eax + 2]
mov dword [edx + 0x364], ebx
cmp byte [eax + esi - 3], 0
je 0x42dd38
mov edx, dword [ecx + 8]
cmp dword [edx + 0x364], ebp
jne 0x42dd38
lea ebx, [eax + 3]
mov dword [edx + 0x364], ebx
cmp byte [eax + esi - 2], 0
je 0x42dd53
mov edx, dword [ecx + 0xc]
cmp dword [edx + 0x364], ebp
jne 0x42dd53
lea ebx, [eax + 4]
mov dword [edx + 0x364], ebx
add ecx, 0x14
add eax, 5
sub edi, 1
jne 0x42dcd0
mov dword [0x450c24], ebp
mov dword [0x450c20], ebp
mov dword [0x450c1c], ebp
mov dword [0x450c18], ebp
mov dword [0x450c14], ebp
mov dword [0x450c10], ebp
mov dword [0x450c0c], ebp
mov dword [0x450c08], ebp
mov dword [0x450c04], ebp
mov dword [0x450c28], ebp
mov ecx, dword [esi + 0x7d4]
xor edi, edi
cmp dword [ecx + 0x4d82384], ebp
jle 0x42ddcd
mov edi, edi
mov ecx, dword [esi + 0x7d4]
push edi
call fcn.0040c0f0
mov edx, dword [esi + 0x7d4]
add edi, 1
cmp edi, dword [edx + 0x4d82384]
jl 0x42ddb0
mov eax, dword [0x44d024]
cmp eax, 0x63
je 0x42dde3
mov ecx, dword [esi + 0x7d4]
push eax
call fcn.0040c040
push ebp
push 0x226
push 0x31a
push ebp
push ebp
mov dword [0x44d034], 1
mov dword [0x450bbc], ebp
call fcn.00437040
mov esi, dword [esp + 0x28]
add esp, 0x14
mov dword [0x450bdc], ebp
xor edi, edi
mov ebx, 1
or ebp, 0xffffffff
cmp dword [esp + 0x18], edi
je 0x42e118
cmp dword [0x44d06c], ebx
jne 0x42df1d
push edi
mov ecx, 0x455610
call fcn.00401a30
cmp dword [0x451228], ebx
mov dword [0x451288], edi
mov dword [0x451268], ebx
jne 0x42de57
mov dword [0x451248], ebp
cmp dword [0x45122c], ebx
mov dword [0x45128c], edi
mov dword [0x45126c], ebx
jne 0x42de71
mov dword [0x45124c], ebp
cmp dword [0x451230], ebx
mov dword [0x451290], edi
mov dword [0x451270], ebx
jne 0x42de8b
mov dword [0x451250], ebp
cmp dword [0x451234], ebx
mov dword [0x451294], edi
mov dword [0x451274], ebx
jne 0x42dea5
mov dword [0x451254], ebp
cmp dword [0x451238], ebx
mov dword [0x451298], edi
mov dword [0x451278], ebx
jne 0x42debf
mov dword [0x451258], ebp
cmp dword [0x45123c], ebx
mov dword [0x45129c], edi
mov dword [0x45127c], ebx
jne 0x42ded9
mov dword [0x45125c], ebp
cmp dword [0x451240], ebx
mov dword [0x4512a0], edi
mov dword [0x451280], ebx
jne 0x42def3
mov dword [0x451260], ebp
cmp dword [0x451244], ebx
mov dword [0x4512a4], edi
mov dword [0x451284], ebx
jne 0x42df0d
mov dword [0x451264], ebp
mov dword [0x44d078], 0x96
mov dword [0x4512c8], edi
mov ebp, 3
cmp dword [0x44d06c], ebp
jne 0x42dfc6
mov eax, dword [esp + 0x1c]
cmp dword [eax], ebx
jne 0x42df61
push edi
mov ecx, 0x455610
call fcn.00401a30
mov eax, dword [0x450b94]
add eax, 0xa
cmp eax, 0x3c
mov dword [0x450b94], eax
jne 0x42df59
mov dword [0x450b94], edi
cmp dword [0x44d06c], ebp
jne 0x42dfc6
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], ebx
je 0x42e118
push edi
mov ecx, 0x455610
call fcn.00401a30
mov eax, dword [0x44d024]
cmp eax, 0x64
mov dword [0x44d028], edi
jne 0x42df94
mov dword [0x44d024], 0x63
jmp 0x42dfc6
cmp eax, 0x63
jne 0x42dfa1
mov dword [0x44d024], edi
jmp 0x42dfc6
add eax, ebx
mov dword [0x44d024], eax
mov edx, dword [esi + 0x7d4]
cmp eax, dword [edx + 0x4d82384]
jne 0x42dfc6
mov dword [0x44d024], 0x64
mov dword [0x44d028], ebx
cmp dword [0x44d06c], 2
jne 0x42e118
push edi
mov ecx, 0x455610
call fcn.00401a30
lea eax, [esi + 0x194]
xor ebp, ebp
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], ebp
mov edi, edi
cmp dword [ebp + 0x451228], edi
je 0x42e103
mov ecx, dword [esi + 0x7d4]
cmp dword [ecx + 0x4d82380], ebx
mov eax, ebx
jle 0x42e0c7
mov edx, dword [esp + 0x14]
mov edx, dword [edx + 0x7d4]
mov ebx, dword [edx + 0x4d82380]
mov ebp, dword [0x451248]
lea esi, [ecx + 4]
lea esp, [esp]
xor ecx, ecx
cmp ebp, eax
jne 0x42e03b
mov ecx, 1
cmp dword [0x45124c], eax
jne 0x42e048
mov ecx, 1
cmp dword [0x451250], eax
jne 0x42e055
mov ecx, 1
cmp dword [0x451254], eax
jne 0x42e062
mov ecx, 1
cmp dword [0x451258], eax
jne 0x42e06f
mov ecx, 1
cmp dword [0x45125c], eax
jne 0x42e07c
mov ecx, 1
cmp dword [0x451260], eax
jne 0x42e089
mov ecx, 1
cmp dword [0x451264], eax
jne 0x42e096
mov ecx, 1
mov edx, dword [esi]
cmp dword [edx + 0x6f8], 0
jne 0x42e0b5
test ecx, ecx
jne 0x42e0b5
cmp dword [edx + 0x6f4], 0x1e
jge 0x42e0b5
mov dword [esp + edi*4 + 0x44], eax
add edi, 1
add eax, 1
add esi, 4
cmp eax, ebx
jl 0x42e030
mov ebp, dword [esp + 0x34]
push edi
push 0xea
call fcn.00417190
mov eax, dword [esp + eax*4 + 0x4c]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x1c]
mov dword [ebp + 0x451248], eax
mov edx, dword [ecx + 0x7d4]
mov ecx, dword [esp + 0x28]
mov ecx, dword [ecx]
mov edx, dword [edx + eax*4]
add esp, 8
mov dword [ecx + 0x368], edx
xor edi, edi
mov ebx, 1
add dword [esp + 0x20], 4
add ebp, 4
cmp ebp, 0x20
mov dword [esp + 0x34], ebp
jl 0x42dff0
cmp dword [0x44d078], 0
jg 0x42e134
cmp dword [0x4512c8], 0
jne 0x42e134
mov dword [0x4512c8], 1
mov ecx, dword [esp + 0xa98]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xa80]
xor ecx, esp
call fcn.004451a2
add esp, 0xa90
ret 0xc