Function at 0x4063fc
Capabilities:
Check http status code
Encrypt data using speck
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd4
push ebx
push esi
push edi
mov ebx, 0x5fbb04
mov esi, 0x60d444
mov edi, 0x5ff1cc
push 0
call fcn.005924f4
pop ecx
mov dword [0x60d7f8], eax
cmp dword [0x593354], 1
jne 0x406434
mov dword [0x593330], 2
push 0x1001
call fcn.0059256c
pop ecx
mov dword [0x5fbb24], eax
cmp dword [0x593330], 1
jne 0x40d16c
cmp dword [0x600fdc], 0
jne 0x40d16c
cmp dword [0x5fbb1c], 0
jne 0x4066d1
mov dword [0x5fbb1c], 1
xor eax, eax
mov dword [0x5fbf14], eax
mov dword [0x593338], 1
mov dword [0x5fbf18], 0x15e0
mov dword [0x5fbf1c], 0x7d00
mov dword [0x5fbf6c], 1
mov dword [0x5fbf28], 1
xor edx, edx
mov dword [0x5fbf2c], edx
xor ecx, ecx
mov dword [0x5fbf30], ecx
mov dword [0x5fbf20], 0xbb8
mov dword [0x5fbf24], 0xe10
xor eax, eax
mov dword [0x5fbf50], eax
xor edx, edx
mov dword [0x593370], edx
xor ecx, ecx
mov dword [0x593374], ecx
xor eax, eax
mov dword [0x604f50], eax
xor edx, edx
mov dword [0x59335c], edx
mov ecx, dword [0x5fba38]
push ecx
call fcn.00413894
pop ecx
call fcn.0040e40c
call fcn.0040e760
cmp dword [0x593358], 1
jne 0x4066b2
xor eax, eax
mov dword [ebx], eax
jmp 0x4065ac
push 3
call fcn.00401dd0
pop ecx
dec eax
jg 0x4065aa
push 0x1f4
call fcn.00401dd0
pop ecx
imul edx, eax, 0xb54
add edx, 0xfffff4ac
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbfb8], edx
push 0xe
call fcn.00401dd0
imul eax, eax, 0xb54
mov edx, dword [ebx]
pop ecx
add eax, 0xfffffb50
mov dword [edx*4 + 0x5fc9bc], eax
push 0x8e
call fcn.00401dd0
pop ecx
mov ecx, dword [ebx]
mov dword [edi + ecx*4], eax
mov eax, dword [ebx]
cmp dword [edi + eax*4], 9
jl 0x406599
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x63
jg 0x406599
push 8
call fcn.00401dd0
pop ecx
mov ecx, dword [ebx]
mov dword [edi + ecx*4], eax
push 4
call fcn.00401dd0
pop ecx
mov edx, dword [ebx]
mov dword [edx*4 + 0x6005d4], eax
inc dword [ebx]
cmp dword [ebx], 0x281
jl 0x406525
xor eax, eax
mov dword [ebx], eax
jmp 0x406625
push 2
call fcn.00401dd0
pop ecx
dec eax
jg 0x406623
push 0x1f4
call fcn.00401dd0
pop ecx
imul ecx, eax, 0xb54
add ecx, 0xfffff4ac
mov eax, dword [ebx]
mov dword [eax*4 + 0x603ca8], ecx
push 0xf
call fcn.00401dd0
pop ecx
imul edx, eax, 0xb54
add edx, 0xffffef98
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603dec], edx
push 6
call fcn.00401dd0
pop ecx
test eax, eax
jne 0x406623
push 9
call fcn.00401dd0
pop ecx
mov edx, dword [ebx]
mov dword [edx*4 + 0x604074], eax
inc dword [ebx]
cmp dword [ebx], 0x51
jl 0x4065be
xor eax, eax
mov dword [0x604a0c], eax
mov ecx, dword [0x604a0c]
mov dword [ebx], ecx
mov edx, dword [ebx]
mov eax, dword [0x5fbf18]
add eax, dword [0x593370]
mov dword [edx*4 + 0x604a10], eax
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x604a64], 0x8e94
xor ecx, ecx
mov eax, dword [ebx]
mov dword [eax*4 + 0x604ab8], 0xbb8
mov edx, dword [ebx]
mov dword [edx*4 + 0x604c08], ecx
xor edx, edx
mov eax, dword [ebx]
mov dword [eax*4 + 0x604cb0], edx
xor eax, eax
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x604b60], eax
xor ecx, ecx
mov edx, dword [ebx]
mov dword [edx*4 + 0x604d04], ecx
push 4
inc dword [0x604a0c]
call fcn.00401dd0
pop ecx
test eax, eax
jne 0x4066b2
push 4
call fcn.00401dd0
pop ecx
mov dword [0x593338], eax
mov eax, dword [0x5fb8a8]
push eax
call fcn.005929f4
pop ecx
push 1
push 3
mov edx, dword [0x5fb8a8]
push edx
call fcn.005929c8
add esp, 0xc
xor ecx, ecx
xor eax, eax
mov dword [esi], ecx
xor edx, edx
mov dword [0x5fbf98], eax
mov dword [0x5fbf9c], edx
cmp dword [0x5fbf78], 0
jg 0x40675e
test byte [0x5fbb24], 2
je 0x40671b
cmp dword [0x5fbb28], 0
jg 0x40671b
mov dword [0x5fbf90], 0xffffffff
xor ecx, ecx
mov dword [0x5fbf6c], ecx
mov dword [0x5fbfa0], 0xffffffff
test byte [0x5fbb24], 4
je 0x40674b
cmp dword [0x5fbb28], 0
jg 0x40674b
mov dword [0x5fbf90], 1
mov dword [0x5fbf6c], 1
mov dword [0x5fbfa0], 1
test byte [0x5fbb24], 1
je 0x40675e
mov dword [0x5fbf9c], 1
push 0x3b
call fcn.00592534
pop ecx
dec eax
jne 0x406773
mov dword [0x593330], 0x64
push 0x18
call fcn.00592534
pop ecx
dec eax
jne 0x4067a7
cmp dword [0x5fbf28], 1
jl 0x40678e
xor eax, eax
mov dword [0x5fbf28], eax
cmp dword [0x593344], 5
jl 0x4067a7
xor edx, edx
xor ecx, ecx
mov dword [0x593344], edx
mov dword [0x5fa3ac], ecx
cmp dword [0x5fbf78], 0
jg 0x4067e7
test byte [0x5fbb24], 8
jne 0x4067c4
push 0x2c
call fcn.00592534
pop ecx
dec eax
jne 0x4067e7
cmp dword [0x5fbf94], 0xa
jne 0x4067dd
mov dword [0x5fbf94], 1
mov dword [esi], 1
mov dword [0x5fbf98], 1
test byte [0x5fbb24], 8
jne 0x4067ff
push 0x2c
call fcn.00592534
pop ecx
dec eax
jne 0x40687f
cmp dword [0x5fbf74], 8
jne 0x406870
cmp dword [0x5fbf30], 0xfffffc7c
jl 0x406870
mov dword [0x5fbf30], 0xfffffaec
mov dword [esi + 0x58], 0xc8
mov eax, dword [esi + 0x58]
cmp eax, dword [0x5fbf2c]
jle 0x40683d
mov edx, dword [esi + 0x58]
neg edx
cmp edx, dword [0x5fbf2c]
jl 0x406847
mov dword [0x5fbf30], 0xfffffa88
mov dword [esi + 0x58], 0x258
mov ecx, dword [esi + 0x58]
cmp ecx, dword [0x5fbf2c]
jle 0x406866
mov eax, dword [esi + 0x58]
neg eax
cmp eax, dword [0x5fbf2c]
jl 0x406870
mov dword [0x5fbf30], 0xfffffa24
cmp dword [esi], 0
jne 0x40687f
mov dword [0x5fbf94], 0xa
mov dword [esi], 0x28
mov dword [esi + 4], 0x2bc
mov dword [esi + 0x20], 0x1f4
mov dword [esi + 0x24], 0x2bc
mov dword [esi + 0x30], 1
mov dword [esi + 0x34], 2
cmp dword [0x5fbf64], 1
jne 0x4068c5
mov dword [esi], 0x14
mov dword [esi + 0x30], 9
mov dword [esi + 0x34], 0xa
cmp dword [0x5fbf90], 0xffffffff
jne 0x4069ab
cmp dword [0x5fbf60], 0
jne 0x4068e8
mov edx, dword [esi + 0x20]
neg edx
cmp edx, dword [0x5fbf2c]
jg 0x40693c
mov ecx, dword [esi + 0x24]
neg ecx
cmp ecx, dword [0x5fbf2c]
jg 0x406916
mov eax, dword [esi]
sub dword [0x5fbf2c], eax
mov edx, dword [esi + 0x24]
neg edx
cmp edx, dword [0x5fbf2c]
jle 0x406916
mov ecx, dword [esi + 0x24]
neg ecx
dec ecx
mov dword [0x5fbf2c], ecx
mov eax, dword [esi + 0x24]
neg eax
cmp eax, dword [0x5fbf2c]
jle 0x40693c
cmp dword [0x5fbf3c], 0
jg 0x40693c
mov eax, dword [esi]
mov ecx, 0xa
cdq
idiv ecx
sub dword [0x5fbf2c], eax
cmp dword [0x5fbf64], 1
je 0x4069ab
cmp dword [0x5fbf2c], 0x64
jle 0x406969
cmp dword [0x5fbf60], 0
jne 0x406969
mov eax, dword [esi]
add eax, eax
mov ecx, 3
cdq
idiv ecx
sub dword [0x5fbf2c], eax
cmp dword [0x5fbf2c], 0x64
jle 0x40699b
cmp dword [0x5fbf60], 1
jne 0x40699b
mov eax, dword [esi]
sub dword [0x5fbf2c], eax
cmp dword [0x5fbf60], 1
jne 0x40699b
mov edx, dword [esi]
sar edx, 1
jns 0x406995
adc edx, 0
sub dword [0x5fbf2c], edx
mov dword [0x5fbf90], 3
inc dword [0x5fbf68]
cmp dword [0x5fbf90], 1
jne 0x406a86
cmp dword [0x5fbf60], 0
jne 0x4069cc
mov ecx, dword [0x5fbf2c]
cmp ecx, dword [esi + 0x20]
jg 0x406a17
mov eax, dword [esi + 0x24]
cmp eax, dword [0x5fbf2c]
jl 0x4069f3
mov edx, dword [esi]
add dword [0x5fbf2c], edx
mov ecx, dword [esi + 0x24]
cmp ecx, dword [0x5fbf2c]
jge 0x4069f3
mov eax, dword [esi + 0x24]
inc eax
mov dword [0x5fbf2c], eax
mov edx, dword [0x5fbf2c]
cmp edx, dword [esi + 0x24]
jle 0x406a17
cmp dword [0x5fbf3c], 0
jg 0x406a17
mov eax, dword [esi]
mov ecx, 0xa
cdq
idiv ecx
add dword [0x5fbf2c], eax
cmp dword [0x5fbf64], 1
je 0x406a86
cmp dword [0x5fbf2c], 0xffffff9c
jge 0x406a44
cmp dword [0x5fbf60], 0
jne 0x406a44
mov eax, dword [esi]
add eax, eax
mov ecx, 3
cdq
idiv ecx
add dword [0x5fbf2c], eax
cmp dword [0x5fbf2c], 0xffffff9c
jge 0x406a76
cmp dword [0x5fbf60], 1
jne 0x406a76
mov eax, dword [esi]
add dword [0x5fbf2c], eax
cmp dword [0x5fbf60], 1
jne 0x406a76
mov edx, dword [esi]
sar edx, 1
jns 0x406a70
adc edx, 0
add dword [0x5fbf2c], edx
mov dword [0x5fbf90], 3
inc dword [0x5fbf68]
cmp dword [0x5fbf90], 0
jne 0x406a9f
cmp dword [0x5fbf68], 0
jle 0x406a9f
sub dword [0x5fbf68], 2
cmp dword [0x5fbf68], 8
jle 0x406ab2
mov dword [0x5fbf68], 8
cmp dword [0x5fbf60], 1
je 0x406ac3
xor ecx, ecx
mov dword [0x5fbf64], ecx
cmp dword [0x5fbf74], 0
jl 0x406ad2
dec dword [0x5fbf74]
cmp dword [0x5fbf94], 1
jne 0x406b16
cmp dword [0x5fbf60], 1
jne 0x406b16
sub dword [0x5fbf1c], 0x190
mov dword [0x5fbf30], 0xfffffb50
mov dword [0x5fbf74], 0xa
mov eax, dword [0x5fb8ac]
push eax
call fcn.0040e3f4
pop ecx
xor edx, edx
mov dword [0x5fbf60], edx
cmp dword [0x5fbf94], 9
jg 0x406b27
xor ecx, ecx
mov dword [0x5fbf94], ecx
cmp dword [0x5fbf80], 0xffffffff
jl 0x406b36
dec dword [0x5fbf80]
cmp dword [0x5fbf28], 0
jg 0x406ba0
cmp dword [0x5fbf28], 0xfffffff7
jl 0x406ba0
mov dword [0x5fbf78], 0xc
mov dword [0x5fbf28], 0xffffffec
mov dword [0x5fbf50], 0xc8
xor eax, eax
mov dword [0x5fbf58], eax
mov edx, dword [0x5fb8d8]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [0x5fb8a8]
push ecx
call fcn.005929f4
pop ecx
mov eax, dword [0x5fb8d4]
push eax
call fcn.005929f4
pop ecx
mov edx, dword [0x5fb8e8]
push edx
call fcn.005929f4
pop ecx
cmp dword [0x5fbf50], 0xc8
jne 0x406c36
cmp dword [0x5fbf58], 0xb
jg 0x406bc8
xor ecx, ecx
xor eax, eax
mov dword [0x5fbf2c], ecx
mov dword [0x5fbf30], eax
cmp dword [0x5fbf58], 0xc
jne 0x406bdb
mov dword [0x5fbf30], 0xfffffb50
cmp dword [0x5fbf58], 0xc
jl 0x406bec
xor edx, edx
mov dword [0x5fbf2c], edx
cmp dword [0x5fbf58], 0x64
jge 0x406bfe
cmp dword [0x593348], 1
jne 0x406c36
xor ecx, ecx
xor eax, eax
mov dword [0x5fbb1c], ecx
mov dword [0x593330], 0xa
xor edx, edx
mov dword [0x5fbf58], eax
mov dword [0x5fbf78], edx
dec dword [0x593368]
cmp dword [0x593348], 1
jne 0x406c36
xor ecx, ecx
mov dword [0x5fbf50], ecx
cmp dword [0x5fbf50], 2
jne 0x406cad
inc dword [0x5fbf58]
mov dword [0x5fbf78], 2
mov dword [0x5fbf30], 0xfffffa24
cmp dword [0x5fbf1c], 0xffffe890
jg 0x406cad
mov dword [0x593390], 1
mov dword [0x59338c], 0x14
add dword [0x593344], 5
xor eax, eax
mov dword [0x5fa3a8], eax
mov edx, dword [0x5fb8a8]
push edx
call fcn.005929f4
pop ecx
xor ecx, ecx
xor eax, eax
mov dword [0x5fbf58], ecx
mov dword [0x5fbf50], eax
mov dword [0x5fbf78], 0xffffffff
cmp dword [0x5fbf50], 3
jne 0x406cde
mov dword [0x5fbf30], 0xfffff6a0
cmp dword [0x5fbf1c], 0xffffe890
jg 0x406cde
mov dword [0x5fbf1c], 0xfb3b4c00
xor edx, edx
mov dword [0x5fbf28], edx
cmp dword [0x5fbf50], 0x64
jl 0x4073a2
inc dword [0x5fbf58]
cmp dword [0x5fbf50], 0x64
jne 0x407074
cmp dword [0x5fbf54], 0
jne 0x406ec1
xor ecx, ecx
mov dword [0x5fbf2c], ecx
xor eax, eax
mov dword [0x5fbf30], eax
mov dword [ebx], 0x1c
cmp dword [0x5fbf58], 0x10
jg 0x406d3d
add dword [0x5fbf1c], 0xf0
mov dword [0x5fbf5c], 0x64
cmp dword [0x5fbf58], 0x11
jne 0x406d50
mov dword [0x5fbf1c], 0xfb3b4c00
cmp dword [0x5fbf58], 0x17
jne 0x406d63
mov edx, dword [ebx]
sub dword [edx*4 + 0x5fbb34], 0x64
cmp dword [0x5fbf58], 0x2c
jl 0x406dbc
cmp dword [0x5fbf58], 0x3c
jg 0x406dbc
mov ecx, dword [0x5fbf58]
and ecx, reloc.WSOCK32.DLL_accept
jns 0x406d88
dec ecx
or ecx, 0xfffffffe
inc ecx
test ecx, ecx
jne 0x406d99
mov eax, dword [ebx]
add dword [eax*4 + 0x5fbb34], 0xc8
mov edx, dword [0x5fbf58]
and edx, reloc.WSOCK32.DLL_accept
jns 0x406dac
dec edx
or edx, 0xfffffffe
inc edx
dec edx
jne 0x406dbc
mov ecx, dword [ebx]
sub dword [ecx*4 + 0x5fbb34], 0xc8
cmp dword [0x5fbf58], 0x3d
jl 0x406e13
cmp dword [0x5fbf58], 0x4d
jg 0x406e13
mov eax, dword [0x5fbf58]
and eax, reloc.WSOCK32.DLL_accept
jns 0x406ddf
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
jne 0x406df0
mov edx, dword [ebx]
add dword [edx*4 + 0x5fbb34], 0x190
mov ecx, dword [0x5fbf58]
and ecx, reloc.WSOCK32.DLL_accept
jns 0x406e03
dec ecx
or ecx, 0xfffffffe
inc ecx
dec ecx
jne 0x406e13
mov eax, dword [ebx]
sub dword [eax*4 + 0x5fbb34], 0x190
cmp dword [0x5fbf58], 0x4e
jl 0x406e6a
cmp dword [0x5fbf58], 0x5e
jg 0x406e6a
mov edx, dword [0x5fbf58]
and edx, reloc.WSOCK32.DLL_accept
jns 0x406e38
dec edx
or edx, 0xfffffffe
inc edx
test edx, edx
jne 0x406e49
mov ecx, dword [ebx]
add dword [ecx*4 + 0x5fbb34], 0x258
mov eax, dword [0x5fbf58]
and eax, reloc.WSOCK32.DLL_accept
jns 0x406e5a
dec eax
or eax, 0xfffffffe
inc eax
dec eax
jne 0x406e6a
mov edx, dword [ebx]
sub dword [edx*4 + 0x5fbb34], 0x258
cmp dword [0x5fbf58], 0x6e
jl 0x406e9e
mov ecx, dword [ebx]
mov eax, dword [0x5fbf5c]
sub dword [ecx*4 + 0x5fbbb0], eax
add dword [0x5fbf5c], 0x50
cmp dword [0x5fbf5c], 0x640
jle 0x406e9e
mov dword [0x5fbf5c], 0x640
cmp dword [0x5fbf58], 0xa0
jne 0x407074
xor edx, edx
mov dword [0x5fbf50], edx
dec dword [0x5fbf28]
jmp 0x407074
cmp dword [0x5fbf54], 0xa
jne 0x406f53
xor ecx, ecx
xor eax, eax
mov dword [0x5fbf2c], ecx
mov dword [0x5fbf30], eax
cmp dword [0x5fbf58], 0x10
jg 0x406ef0
add dword [0x5fbf18], 0xf0
cmp dword [0x5fbf58], 0x10
jne 0x406f03
sub dword [0x5fbf1c], 0x44c
cmp dword [0x5fbf58], 0x14
jne 0x406f19
mov edx, dword [0x5fb8d0]
push edx
call fcn.0040e3f4
pop ecx
cmp dword [0x5fbf58], 0x18
jl 0x406f34
sub dword [0x5fbf18], 0x7d0
xor ecx, ecx
mov dword [0x5fbf6c], ecx
cmp dword [0x5fbf58], 0x30
jl 0x407074
xor eax, eax
mov dword [0x5fbf50], eax
dec dword [0x5fbf28]
jmp 0x407074
xor edx, edx
xor ecx, ecx
mov dword [0x5fbf2c], edx
mov dword [0x5fbf30], ecx
cmp dword [0x5fbf58], 0x10
jg 0x406f7f
cmp dword [0x5fbf54], 3
je 0x406f7f
add dword [0x5fbf1c], 0xf0
cmp dword [0x5fbf58], 0x10
jg 0x406f9b
cmp dword [0x5fbf54], 3
jne 0x406f9b
add dword [0x5fbf18], 0xf0
cmp dword [0x5fbf58], 0x13
jne 0x406fda
cmp dword [0x5fbf54], 2
jne 0x406fda
xor eax, eax
xor edx, edx
mov dword [0x5fbf28], eax
mov dword [0x5fbf50], 0x7d0
mov dword [0x5fbf58], edx
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0x33
cmp dword [0x5fbf58], 0x13
jne 0x407019
cmp dword [0x5fbf54], 5
jne 0x407019
xor ecx, ecx
xor eax, eax
mov dword [0x5fbf28], ecx
mov dword [0x5fbf50], 0x7d0
mov dword [0x5fbf58], eax
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0x34
cmp dword [0x5fbf58], 0x14
jne 0x407074
cmp dword [0x5fbf54], 6
jne 0x407034
add dword [0x593344], 0xa
jmp 0x40703a
inc dword [0x593344]
mov dword [0x5fbf1c], 0xfb3b4c00
xor edx, edx
mov dword [0x5fbf54], edx
mov dword [0x593390], 1
mov dword [0x59338c], 0x14
xor ecx, ecx
mov dword [0x5fa3a8], ecx
mov eax, dword [0x5fb8a8]
push eax
call fcn.005929f4
pop ecx
cmp dword [0x5fbf50], 0x12c
jne 0x40713e
mov dword [0x5fbf78], 3
cmp dword [0x5fbf58], 1
jg 0x4070a7
xor edx, edx
xor ecx, ecx
mov dword [0x5fbf2c], edx
mov dword [0x5fbf30], ecx
cmp dword [0x5fbf58], 2
jl 0x4070cd
cmp dword [0x5fbf58], 0x2a
jg 0x4070cd
mov dword [0x5fbf30], 0x258
mov dword [0x5fbf6c], 1
cmp dword [0x5fbf58], 0x2b
jle 0x4070e9
cmp dword [0x5fbf58], 0x6c
jg 0x4070e9
mov dword [0x5fbf2c], 0x12c
cmp dword [0x5fbf58], 0x6e
jne 0x407103
mov dword [0x5fbf1c], 0xfb3b4c00
xor eax, eax
mov dword [0x5fbf2c], eax
cmp dword [0x5fbf58], 0xfa
jne 0x40713e
inc dword [0x593340]
xor edx, edx
xor ecx, ecx
mov dword [0x593344], edx
xor eax, eax
mov dword [0x5fbb1c], ecx
mov dword [0x593350], eax
xor edx, edx
mov dword [0x593330], 0xa
mov dword [0x593334], edx
cmp dword [0x5fbf50], 0x12d
je 0x40715a
cmp dword [0x5fbf50], 0x12e
jne 0x4073a2
mov dword [0x5fbf78], 3
cmp dword [0x5fbf58], 1
jg 0x40717c
xor ecx, ecx
xor eax, eax
mov dword [0x5fbf2c], ecx
mov dword [0x5fbf30], eax
cmp dword [0x5fbf58], 2
jl 0x4071d2
cmp dword [0x5fbf50], 0x12d
jne 0x40719a
cmp dword [0x5fbf58], 0x66
jle 0x4071af
cmp dword [0x5fbf50], 0x12e
jne 0x4071d2
cmp dword [0x5fbf58], 0x3c
jg 0x4071d2
mov edx, 0x1f4
mov dword [esi + 0x14], edx
mov ecx, dword [esi + 0x14]
sub dword [0x5fbf18], ecx
mov eax, dword [esi + 0x14]
add dword [0x593370], eax
mov edx, dword [esi + 0x14]
add dword [0x604f50], edx
cmp dword [0x5fbf50], 0x12d
je 0x4071ea
cmp dword [0x5fbf50], 0x12e
jne 0x407210
cmp dword [0x5fbf58], 2
jl 0x407210
cmp dword [0x5fbf58], 0x64
jg 0x407210
mov dword [0x5fbf2c], 0xfa
mov dword [0x5fbf6c], 1
cmp dword [0x5fbf58], 0xc8
jne 0x407368
mov ecx, dword [0x5fb8ec]
push ecx
call fcn.0040e3f4
pop ecx
cmp dword [0x5fbf50], 0x12d
jne 0x4072d7
mov eax, dword [0x604444]
mov dword [eax*4 + 0x604448], 0x52918
mov edx, dword [0x604444]
mov dword [edx*4 + 0x6044ec], 0x2d50
mov ecx, dword [0x604444]
mov dword [ecx*4 + 0x6046d8], 0x65
inc dword [0x604444]
cmp dword [0x604444], 0x29
jl 0x407285
xor eax, eax
mov dword [0x604444], eax
mov edx, dword [0x604444]
mov dword [edx*4 + 0x604448], 0x51270
mov ecx, dword [0x604444]
mov dword [ecx*4 + 0x6044ec], 0x43f8
mov eax, dword [0x604444]
mov dword [eax*4 + 0x6046d8], 0x66
inc dword [0x604444]
cmp dword [0x604444], 0x29
jl 0x407368
xor edx, edx
mov dword [0x604444], edx
jmp 0x407368
mov ecx, dword [0x604444]
mov dword [ecx*4 + 0x604448], 0x6ee38
mov eax, dword [0x604444]
mov dword [eax*4 + 0x6044ec], 0x2d50
mov edx, dword [0x604444]
mov dword [edx*4 + 0x6046d8], 0x65
inc dword [0x604444]
cmp dword [0x604444], 0x29
jl 0x407320
xor ecx, ecx
mov dword [0x604444], ecx
mov eax, dword [0x604444]
mov dword [eax*4 + 0x604448], 0x6d790
mov edx, dword [0x604444]
mov dword [edx*4 + 0x6044ec], 0x43f8
mov ecx, dword [0x604444]
mov dword [ecx*4 + 0x6046d8], 0x66
inc dword [0x604444]
cmp dword [0x604444], 0x29
jl 0x407368
xor eax, eax
mov dword [0x604444], eax
cmp dword [0x5fbf58], 0x1b8
jne 0x4073a2
cmp dword [0x5fbf50], 0x12d
jne 0x40738c
mov dword [0x593354], 1
jmp 0x4073a2
inc dword [0x59333c]
xor edx, edx
mov dword [0x593340], edx
xor ecx, ecx
mov dword [0x593344], ecx
cmp dword [0x5fbf78], 1
jl 0x4073b1
dec dword [0x5fbf78]
mov eax, dword [0x5fbf2c]
add dword [0x5fbf18], eax
mov edx, dword [0x5fbf30]
add dword [0x5fbf1c], edx
cmp dword [0x5fbf2c], 0
jge 0x4073df
mov ecx, dword [0x5fbf2c]
neg ecx
add dword [0x5fbf48], ecx
cmp dword [0x5fbf2c], 0
jl 0x4073f3
mov eax, dword [0x5fbf2c]
add dword [0x5fbf48], eax
cmp dword [0x5fbf50], 9
jle 0x40742c
cmp dword [0x5fbf50], 0xc8
je 0x40742c
cmp dword [0x5fbf50], 0x12c
je 0x40742c
cmp dword [0x5fbf50], 0x12d
je 0x40742c
cmp dword [0x5fbf50], 0x12e
jne 0x407433
add dword [0x5fbf30], 0x64
cmp dword [0x5fbf50], 0
jne 0x4074df
mov dword [esi], 0x320
mov dword [esi + 4], 0x640
mov edx, dword [esi]
cmp edx, dword [0x5fbf2c]
jge 0x40746e
mov ecx, dword [esi]
add ecx, 0xc8
cmp ecx, dword [0x5fbf2c]
jle 0x40746e
mov eax, dword [esi]
mov dword [0x5fbf2c], eax
mov edx, dword [esi]
add edx, 0xc8
cmp edx, dword [0x5fbf2c]
jge 0x407488
sub dword [0x5fbf2c], 0xc8
mov ecx, dword [esi]
neg ecx
cmp ecx, dword [0x5fbf2c]
jle 0x4074af
mov eax, dword [esi]
neg eax
add eax, 0xffffff38
cmp eax, dword [0x5fbf2c]
jge 0x4074af
mov edx, dword [esi]
neg edx
mov dword [0x5fbf2c], edx
mov ecx, dword [esi]
neg ecx
add ecx, 0xffffff38
cmp ecx, dword [0x5fbf2c]
jle 0x4074cb
add dword [0x5fbf2c], 0xc8
mov eax, dword [esi + 4]
cmp eax, dword [0x5fbf30]
jge 0x4074df
mov edx, dword [esi + 4]
mov dword [0x5fbf30], edx
cmp dword [0x5fbf60], 1
jne 0x4075fa
cmp dword [0x5fbf90], 3
je 0x4075fa
cmp dword [0x5fbf50], 9
jle 0x40752a
cmp dword [0x5fbf50], 0x12c
je 0x40752a
cmp dword [0x5fbf50], 0x12d
je 0x40752a
cmp dword [0x5fbf50], 0x12e
jne 0x4075fa
cmp dword [0x5fbf64], 0
jne 0x407592
mov dword [esi + 8], 0x1e
mov dword [esi + 4], 0x3c
mov dword [esi + 0xc], 0x1e
mov ecx, dword [esi + 0xc]
neg ecx
cmp ecx, dword [0x5fbf2c]
jg 0x407568
mov eax, dword [esi + 0xc]
cmp eax, dword [0x5fbf2c]
jl 0x407568
xor edx, edx
mov dword [0x5fbf2c], edx
mov ecx, dword [esi + 8]
cmp ecx, dword [0x5fbf2c]
jg 0x40757c
mov eax, dword [esi + 4]
sub dword [0x5fbf2c], eax
mov edx, dword [esi + 8]
neg edx
cmp edx, dword [0x5fbf2c]
jl 0x407592
mov ecx, dword [esi + 4]
add dword [0x5fbf2c], ecx
cmp dword [0x5fbf64], 1
jne 0x4075fa
mov dword [esi + 8], 5
mov dword [esi + 4], 0xa
mov dword [esi + 0xc], 5
mov eax, dword [esi + 0xc]
neg eax
cmp eax, dword [0x5fbf2c]
jg 0x4075d0
mov edx, dword [esi + 0xc]
cmp edx, dword [0x5fbf2c]
jl 0x4075d0
xor ecx, ecx
mov dword [0x5fbf2c], ecx
mov eax, dword [esi + 8]
cmp eax, dword [0x5fbf2c]
jg 0x4075e4
mov edx, dword [esi + 4]
sub dword [0x5fbf2c], edx
mov ecx, dword [esi + 8]
neg ecx
cmp ecx, dword [0x5fbf2c]
jl 0x4075fa
mov eax, dword [esi + 4]
add dword [0x5fbf2c], eax
xor edx, edx
mov dword [0x5fbf60], edx
cmp dword [0x5fbf50], 9
jg 0x40765c
cmp dword [0x5fbf28], 1
jl 0x40765c
cmp dword [0x5fbf18], 0x64
jge 0x40762f
mov dword [0x5fbf18], 0x64
xor ecx, ecx
mov dword [0x5fbf2c], ecx
mov eax, dword [0x5fbf18]
add eax, dword [0x5fbf20]
cmp eax, dword [0x593384]
jle 0x40765c
mov edx, dword [0x593384]
sub edx, dword [0x5fbf20]
xor ecx, ecx
mov dword [0x5fbf18], edx
mov dword [0x5fbf2c], ecx
cmp dword [0x5fbf1c], 0x9470
jl 0x407698
cmp dword [0x5fbf28], 0
jl 0x407698
cmp dword [0x593338], 4
jne 0x407698
mov dword [0x5fbf28], 0xfffffffe
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0x37
cmp dword [0x5fbf1c], 0xcb20
jl 0x4076b7
cmp dword [0x5fbf28], 0
jl 0x4076b7
mov dword [0x5fbf28], 0xfffffffe
xor eax, eax
mov dword [esi + 0x3c], eax
xor edx, edx
mov dword [ebx], edx
jmp 0x408e18
mov dword [esi], 0xc8
mov dword [esi + 4], 0xbb8
mov dword [esi + 8], 0x3e8
mov dword [esi + 0xc], 0xbb8
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
sub eax, dword [0x593370]
mov dword [esi + 0x20], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
sub ecx, dword [0x593374]
mov dword [esi + 0x24], ecx
mov ecx, 0xfffffff6
mov eax, dword [ebx]
sub ecx, dword [esi + 0xc]
mov edx, dword [eax*4 + 0x5fbfb8]
sub edx, dword [0x593370]
add edx, dword [esi + 4]
cmp edx, ecx
jl 0x408e16
mov eax, dword [ebx]
mov ecx, dword [0x593384]
add ecx, dword [esi + 0xc]
add ecx, 0x2ee0
mov edx, dword [eax*4 + 0x5fbfb8]
sub edx, dword [0x593370]
cmp edx, ecx
jg 0x408e16
cmp dword [0x5fbf50], 0xc8
je 0x408bf6
cmp dword [0x5fbf50], 1
je 0x408bf6
cmp dword [0x5fbf50], 2
je 0x408bf6
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x3e8
jge 0x407fd5
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x320
je 0x407fd5
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x8c
je 0x407fd5
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x8d
je 0x407fd5
cmp dword [0x5fbf8c], 1
je 0x407b0f
xor edx, edx
xor ecx, ecx
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov eax, dword [ebx]
cmp dword [edi + eax*4], 7
je 0x407b0f
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x6e
je 0x407b0f
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x72
je 0x407b0f
mov edx, dword [esi]
mov eax, dword [0x5fbf18]
add edx, edx
add edx, dword [esi + 0x20]
add eax, dword [0x5fbf20]
add edx, 0x64
cmp eax, edx
jle 0x407b0f
mov ecx, dword [esi + 0x20]
mov eax, dword [esi]
add ecx, dword [esi + 4]
add eax, eax
sub ecx, eax
add ecx, 0xffffff9c
cmp ecx, dword [0x5fbf18]
jle 0x407b0f
mov edx, dword [0x5fbf1c]
add edx, dword [0x5fbf24]
cmp edx, dword [esi + 0x24]
jle 0x407b0f
mov ecx, dword [0x5fbf1c]
mov eax, dword [esi + 0x24]
add eax, dword [esi + 4]
add ecx, dword [0x5fbf24]
cmp ecx, eax
jge 0x407b0f
cmp dword [0x5fbf30], 0xffffff9c
jl 0x407b0f
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x73
je 0x4078bb
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x190
je 0x4078bb
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x75
je 0x4078bb
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x76
je 0x4078bb
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x78
je 0x4078bb
mov eax, dword [esi + 0x24]
sub eax, dword [0x5fbf24]
add eax, 0x64
mov dword [0x5fbf1c], eax
xor edx, edx
mov dword [0x5fbf30], edx
mov dword [0x5fbf60], 1
mov dword [esi + 0x40], 1
jmp 0x407b0f
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x73
jne 0x4079fb
mov eax, dword [0x5fb8b4]
push eax
call fcn.0040e3f4
pop ecx
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0x12c
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
add ecx, 0x4b0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0x4b0
push edx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0xfffffed4
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xf0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
add edx, 0x4b0
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0x4b0
push eax
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xffffff10
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
add ecx, 0x4b0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0x4b0
push edx
call fcn.004144d4
add esp, 0x28
mov ecx, dword [ebx]
push ecx
call fcn.00413918
pop ecx
jmp 0x407b0f
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x190
jne 0x407a6d
xor edx, edx
mov dword [0x5fbf30], edx
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbfb8], 0xff85ee00
mov eax, dword [0x5fb8dc]
push eax
call fcn.0040e3f4
pop ecx
xor edx, edx
mov dword [0x5fbb08], edx
jmp 0x407a4f
mov ecx, dword [0x5fbb08]
cmp dword [edi + ecx*4], 7
je 0x407a49
mov eax, dword [0x5fbb08]
mov dword [edi + eax*4], 0x320
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x281
jl 0x407a31
mov edx, dword [0x5fb8a8]
push edx
call fcn.005929f4
pop ecx
jmp 0x407b0f
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x75
jne 0x407aeb
mov eax, dword [0x5fb8e0]
push eax
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf30], 0xfffffa24
mov dword [0x5fbf50], 2
xor edx, edx
mov dword [0x5fbf58], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 2
jl 0x407ad0
cmp dword [0x5fbf50], 2
jne 0x407ad0
xor eax, eax
mov dword [0x5fbf50], eax
mov dword [0x5fbf30], 0xfffff9c0
mov edx, dword [ebx]
mov dword [edx*4 + 0x6005d4], 3
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 0
jne 0x407b0f
mov eax, dword [ebx]
mov dword [eax*4 + 0x6005d4], 1
jmp 0x407b0f
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x78
jne 0x407b0f
mov dword [0x5fbf30], 0xfffff6a0
xor ecx, ecx
mov dword [0x5fbf50], 3
mov dword [0x5fbf58], ecx
cmp dword [0x5fbf88], 1
jl 0x407b25
cmp dword [0x5fbf8c], 1
je 0x407fd5
xor eax, eax
mov dword [esi + 0x54], eax
mov dword [esi + 0x58], 1
cmp dword [0x5fbf60], 1
je 0x407b43
cmp dword [0x5fbf74], 0xa
jl 0x407b4f
mov dword [esi + 0x54], 3
xor edx, edx
mov dword [esi + 0x58], edx
xor ecx, ecx
mov dword [0x5fbb14], ecx
jmp 0x407fc8
mov eax, dword [0x5fbb14]
cmp eax, dword [esi + 0x54]
jne 0x407e81
cmp dword [0x5fbf50], 0x64
je 0x407e81
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x75
je 0x407e81
mov eax, dword [esi]
mov ecx, dword [0x5fbf18]
add eax, eax
add eax, dword [esi + 0x20]
add ecx, dword [0x5fbf20]
add eax, 0x320
cmp ecx, eax
jle 0x407e81
mov edx, dword [esi + 0x20]
mov ecx, dword [esi]
add edx, dword [esi + 4]
add ecx, ecx
sub edx, ecx
add edx, 0xfffffce0
cmp edx, dword [0x5fbf18]
jle 0x407e81
mov eax, dword [esi]
add eax, eax
mov edx, dword [esi + 0x24]
sub edx, eax
cmp edx, dword [0x5fbf1c]
jge 0x407e81
mov ecx, dword [esi + 0x24]
mov eax, dword [esi]
add ecx, dword [esi + 4]
add eax, eax
sub ecx, eax
cmp ecx, dword [0x5fbf1c]
jle 0x407e81
cmp dword [0x5fbf30], 0
jg 0x407e81
mov dword [esi + 0x40], 1
mov dword [esi + 0x44], 1
mov edx, dword [esi + 0x24]
add edx, dword [esi + 4]
add edx, dword [esi]
mov dword [0x5fbf1c], edx
cmp dword [0x5fbf30], 0
jge 0x407c36
mov eax, dword [0x5fbf30]
neg eax
add eax, eax
mov ecx, 3
cdq
idiv ecx
mov dword [0x5fbf30], eax
mov eax, dword [ebx]
cmp dword [edi + eax*4], 1
jne 0x407d7e
cmp dword [0x5fbf60], 0
jne 0x407d7e
mov edx, dword [0x5fb8b4]
push edx
call fcn.0040e3f4
pop ecx
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0x12c
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0xfffffed4
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
add edx, 0x4b0
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0x4b0
push eax
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xf0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
add ecx, 0x4b0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0x4b0
push edx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xffffff10
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
push eax
call fcn.00413918
pop ecx
mov edx, dword [ebx]
cmp dword [edi + edx*4], 2
jne 0x407ddd
cmp dword [0x5fbf60], 0
jne 0x407ddd
mov ecx, dword [0x5fb8b8]
push ecx
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0xa
push eax
call fcn.004144d4
add esp, 0x28
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 7
jne 0x407e5f
mov eax, dword [0x5fb8b8]
push eax
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0xa
push edx
call fcn.004144d4
add esp, 0x28
mov ecx, dword [esi + 0x24]
add ecx, dword [esi + 4]
add ecx, dword [esi]
mov dword [0x5fbf1c], ecx
mov eax, dword [ebx]
mov dword [edi + eax*4], 3
cmp dword [0x5fbf30], 0
jge 0x407e5f
mov eax, dword [0x5fbf30]
neg eax
add eax, eax
mov ecx, 3
cdq
idiv ecx
mov dword [0x5fbf30], eax
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0xa
jne 0x407e81
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 3
dec dword [0x5fbf28]
mov edx, dword [0x5fbb14]
cmp edx, dword [esi + 0x58]
jne 0x407fc2
cmp dword [esi + 0x3c], 0
jne 0x407fc2
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 7
je 0x407fc2
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x6e
je 0x407fc2
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x75
je 0x407fc2
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x72
je 0x407fc2
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbfb8], 0xffffb1e0
jl 0x407fc2
mov edx, dword [0x5fbf18]
add edx, dword [0x5fbf20]
cmp edx, dword [esi + 0x20]
jle 0x407f4e
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 8]
cmp ecx, dword [0x5fbf18]
jle 0x407f4e
mov eax, dword [0x5fbf1c]
add eax, dword [0x5fbf24]
mov edx, dword [esi + 4]
sar edx, 1
jns 0x407f11
adc edx, 0
add edx, dword [esi + 0x24]
sub edx, dword [esi]
cmp eax, edx
jle 0x407f4e
mov ecx, dword [esi + 0x24]
add ecx, dword [esi + 8]
cmp ecx, dword [0x5fbf1c]
jle 0x407f4e
cmp dword [0x5fbf2c], 0
jl 0x407f4e
mov eax, dword [esi + 0x20]
sub eax, dword [0x5fbf20]
xor edx, edx
mov dword [0x5fbf18], eax
mov dword [0x5fbf2c], edx
mov dword [esi + 0x40], 1
mov ecx, dword [0x5fbf18]
mov eax, dword [esi + 0x20]
add eax, dword [esi + 8]
add ecx, dword [0x5fbf20]
cmp ecx, eax
jle 0x407fc2
mov edx, dword [esi + 0x20]
add edx, dword [esi + 4]
cmp edx, dword [0x5fbf18]
jle 0x407fc2
mov ecx, dword [0x5fbf1c]
add ecx, dword [0x5fbf24]
mov eax, dword [esi + 4]
sar eax, 1
jns 0x407f88
adc eax, 0
add eax, dword [esi + 0x24]
sub eax, dword [esi]
cmp ecx, eax
jle 0x407fc2
mov edx, dword [esi + 0x24]
add edx, dword [esi + 8]
cmp edx, dword [0x5fbf1c]
jle 0x407fc2
cmp dword [0x5fbf2c], 0
jg 0x407fc2
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 4]
xor eax, eax
mov dword [0x5fbf18], ecx
mov dword [0x5fbf2c], eax
mov dword [esi + 0x40], 1
inc dword [0x5fbb14]
cmp dword [0x5fbb14], 1
jle 0x407b5c
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x320
jne 0x408050
mov ecx, dword [esi]
add ecx, ecx
mov eax, dword [esi + 0x24]
sub eax, ecx
add eax, 0xfffff830
cmp eax, dword [0x5fbf1c]
jge 0x408050
mov edx, dword [esi + 0x24]
mov ecx, dword [esi]
add edx, dword [esi + 4]
add ecx, ecx
sub edx, ecx
add edx, 0x7d0
cmp edx, dword [0x5fbf1c]
jle 0x408050
mov eax, dword [0x5fbf18]
mov edx, dword [esi + 0x20]
add eax, dword [0x5fbf20]
add edx, 0xfffffe70
cmp eax, edx
jle 0x408050
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 4]
cmp ecx, dword [0x5fbf18]
jle 0x408050
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbfb8], 0xfff3cb00
mov edx, dword [0x5fb8b8]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x8c
jne 0x408107
mov eax, dword [esi]
add eax, eax
mov edx, dword [esi + 0x24]
sub edx, eax
add edx, 0xfffff830
cmp edx, dword [0x5fbf1c]
jge 0x408107
mov ecx, dword [esi + 0x24]
mov eax, dword [esi]
add ecx, dword [esi + 4]
add eax, eax
sub ecx, eax
add ecx, 0x7d0
cmp ecx, dword [0x5fbf1c]
jle 0x408107
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add edx, dword [0x5fbf20]
add ecx, 0xfffffe70
cmp edx, ecx
jle 0x408107
mov eax, dword [esi + 0x20]
add eax, dword [esi + 4]
cmp eax, dword [0x5fbf18]
jle 0x408107
mov edx, dword [ebx]
mov dword [edx*4 + 0x5fbfb8], 0xfff3cb00
mov dword [0x604d00], 1
mov dword [0x604dfc], 1
mov ecx, dword [0x5fb8a8]
push ecx
call fcn.005929f4
xor eax, eax
mov dword [0x5fbf50], 0x12d
mov dword [0x5fbf58], eax
pop ecx
mov edx, dword [0x5fb8e8]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x64
jne 0x408293
mov eax, dword [esi]
add eax, eax
mov edx, dword [esi + 0x24]
sub edx, eax
add edx, 0xfffff830
cmp edx, dword [0x5fbf1c]
jge 0x40819e
mov ecx, dword [esi + 0x24]
mov eax, dword [esi]
add ecx, dword [esi + 4]
add eax, eax
sub ecx, eax
add ecx, 0x7d0
cmp ecx, dword [0x5fbf1c]
jle 0x40819e
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add edx, dword [0x5fbf20]
add ecx, 0xfffffe70
cmp edx, ecx
jle 0x40819e
mov eax, dword [esi + 0x20]
add eax, dword [esi + 4]
cmp eax, dword [0x5fbf18]
jle 0x40819e
cmp dword [0x5fbf30], 0
jg 0x40819e
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 0
jne 0x40819e
mov ecx, dword [0x5fbf1c]
mov eax, dword [ebx]
add ecx, dword [0x593374]
add ecx, 0xfffffb50
sub ecx, dword [esi + 4]
mov dword [eax*4 + 0x5fc9bc], ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 1
jne 0x408233
cmp dword [esi + 0x44], 1
jne 0x408233
mov ecx, dword [0x5fbf18]
mov eax, dword [esi + 0x20]
add ecx, dword [0x5fbf20]
add eax, 0xfffffe70
cmp ecx, eax
jle 0x4081f6
mov edx, dword [esi + 4]
sar edx, 1
jns 0x4081d6
adc edx, 0
add edx, dword [esi + 0x20]
add edx, 0xfffffa24
cmp edx, dword [0x5fbf18]
jle 0x4081f6
mov ecx, dword [ebx]
add dword [ecx*4 + 0x5fbfb8], 0xbb8
jmp 0x408233
mov eax, dword [0x5fbf18]
add eax, dword [0x5fbf20]
mov edx, dword [esi + 4]
sar edx, 1
jns 0x40820b
adc edx, 0
add edx, dword [esi + 0x20]
add edx, 0xfffffa24
cmp eax, edx
jl 0x408233
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 4]
cmp ecx, dword [0x5fbf18]
jle 0x408233
mov eax, dword [ebx]
sub dword [eax*4 + 0x5fbfb8], 0xbb8
cmp dword [esi + 0x44], 1
jne 0x408293
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 0
jne 0x408293
mov ecx, dword [0x5fb8b8]
push ecx
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0xa
push eax
call fcn.004144d4
add esp, 0x28
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x65
jne 0x4083e5
cmp dword [esi + 0x44], 1
jne 0x4083e5
mov eax, dword [0x5fb8c8]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [0x602f60]
mov dword [ecx*4 + 0x603264], 0x10
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 0
jne 0x408301
push 0
push 0
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 1
jne 0x408333
push 0
push 4
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 3
jne 0x408365
push 0
push 0x65
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 4
jne 0x4083b3
mov edx, dword [0x602f60]
mov dword [edx*4 + 0x603264], 0x14
push 0
push 6
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0xfffff9c0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0xfffffe70
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 0xa
jne 0x4083e5
push 0
push 0x65
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x66
jne 0x4084b7
cmp dword [esi + 0x44], 1
jne 0x4084b7
mov eax, dword [0x5fb8c8]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [0x602f60]
mov dword [ecx*4 + 0x603264], 0x10
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 0
jne 0x408453
push 0
push 0x64
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 2
jne 0x408485
push 2
push 0x64
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 3
jne 0x4084b7
push 1
push 0x66
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x67
jne 0x408511
cmp dword [esi + 0x44], 1
jne 0x408511
mov edx, dword [0x5fb8c8]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
mov dword [edi + ecx*4], 3
mov eax, dword [0x602f60]
mov dword [eax*4 + 0x603264], 0x10
push 1
push 0x64
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x68
jne 0x40856b
cmp dword [esi + 0x44], 1
jne 0x40856b
mov eax, dword [0x5fb8c8]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [0x602f60]
mov dword [ecx*4 + 0x603264], 0x10
push 0
push 0x6e
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x6e
jne 0x40858f
cmp dword [esi + 0x44], 1
jne 0x40858f
mov ecx, dword [ebx]
mov dword [edi + ecx*4], 0x6f
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fe7c8], 0x3e7
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x6f
jne 0x40860b
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
sub eax, dword [0x593370]
js 0x40860b
mov edx, dword [ebx]
inc dword [edx*4 + 0x5fe7c8]
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fe7c8], 0x10
jl 0x40860b
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fe7c8], edx
mov ecx, dword [0x5fb8c8]
push ecx
call fcn.0040e3f4
pop ecx
mov eax, dword [0x602f60]
mov dword [eax*4 + 0x603264], 0x10
push 1
push 0x66
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x70
jne 0x40863a
cmp dword [esi + 0x44], 1
jne 0x40863a
mov eax, dword [ebx]
mov dword [edi + eax*4], 0x71
mov edx, dword [ebx]
mov dword [edx*4 + 0x5fe7c8], 0x3e7
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x5ffbd0], eax
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x71
jne 0x4086d1
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
sub eax, dword [0x593370]
js 0x4086d1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5ffbd0], 0x13
jg 0x40866c
mov ecx, dword [ebx]
inc dword [ecx*4 + 0x5fe7c8]
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fe7c8], 3
jl 0x4086d1
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x5fe7c8], ecx
mov eax, dword [ebx]
inc dword [eax*4 + 0x5ffbd0]
mov edx, dword [0x5fb8b8]
push edx
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0xa
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x72
jne 0x408876
cmp dword [esi + 0x44], 1
jne 0x408876
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 0
jne 0x408740
mov ecx, dword [0x5fb8c8]
push ecx
call fcn.0040e3f4
pop ecx
mov eax, dword [ebx]
mov dword [edi + eax*4], 3
mov edx, dword [0x602f60]
mov dword [edx*4 + 0x603264], 0x10
push 1
push 0x66
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 2
jne 0x4087a5
mov edx, dword [0x5fb8b8]
push edx
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0xa
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
mov dword [edi + eax*4], 0x73
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x6005d4], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 0xa
jne 0x408876
cmp dword [0x59335c], 1
jne 0x408828
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edi + edx*4], 0x82
mov dword [0x59335c], ecx
mov eax, dword [0x5fb8dc]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edx*4 + 0x6005d4], 2
xor ecx, ecx
mov dword [ebx], ecx
jmp 0x408821
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x57
je 0x408806
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x58
jne 0x40881f
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0x69
jne 0x40881f
mov eax, dword [ebx]
mov dword [eax*4 + 0x6034a4], 0x6e
inc dword [ebx]
cmp dword [ebx], 0x18
jl 0x4087ee
jmp 0x408876
mov edx, dword [0x5fb8b8]
push edx
call fcn.0040e3f4
pop ecx
push 0x10
push 0
push 0xbb8
push 0xbb8
push 0x28
push 0
push 0xfffffce0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0xa
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
mov dword [edi + eax*4], 3
mov edx, dword [ebx]
mov ecx, dword [ebx]
cmp dword [edi + edx*4], 0x73
cmp dword [edi + ecx*4], 0x74
jne 0x4088d3
cmp dword [esi + 0x44], 1
jne 0x4088d3
mov eax, dword [0x5fb8c8]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
push 0x190
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
mov ecx, 0x64
cdq
idiv ecx
add eax, 0xffffffe3
push eax
mov eax, dword [ebx]
mov eax, dword [eax*4 + 0x5fbfb8]
mov ecx, 0x64
cdq
idiv ecx
push eax
call fcn.004138b8
add esp, 0xc
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x7c
jne 0x408935
cmp dword [esi + 0x44], 1
jne 0x408935
mov edx, dword [0x5fb8dc]
push edx
call fcn.0040e3f4
pop ecx
xor ecx, ecx
mov dword [ebx], ecx
jmp 0x408927
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x57
je 0x40890c
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x58
jne 0x408925
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0x65
jne 0x408925
mov eax, dword [ebx]
mov dword [eax*4 + 0x6034a4], 0x78
inc dword [ebx]
cmp dword [ebx], 0x18
jl 0x4088f4
mov edx, dword [ebx]
mov dword [edi + edx*4], 3
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x82
jne 0x408974
cmp dword [esi + 0x44], 1
jne 0x4089fc
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 1
je 0x4089fc
xor edx, edx
mov dword [0x59335c], edx
mov ecx, dword [0x5fb8dc]
push ecx
call fcn.0040e3f4
pop ecx
jmp 0x4089fc
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x83
jne 0x4089fc
cmp dword [esi + 0x44], 1
jne 0x4089fc
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 2
je 0x4089fc
mov dword [0x59335c], 1
mov ecx, dword [0x5fb8dc]
push ecx
call fcn.0040e3f4
pop ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 1
jne 0x4089fc
xor edx, edx
mov dword [ebx], edx
jmp 0x4089ed
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x57
je 0x4089d2
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x58
jne 0x4089eb
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0x69
jne 0x4089eb
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x6034a4], 0x6e
inc dword [ebx]
cmp dword [ebx], 0x18
jl 0x4089ba
mov dword [0x6041c4], 0x69
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x12c
jne 0x408aa9
cmp dword [esi + 0x44], 1
jne 0x408aa9
mov edx, dword [0x5fb8e4]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 0x64
jg 0x408a65
mov dword [0x600fdc], 1
mov dword [0x600fd8], 0xf
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x6005d4]
add edx, 0x12b
mov dword [0x600fe4], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x6005d4]
mov dword [0x600ff0], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 0x21c
jne 0x408aa9
mov dword [0x600fdc], 1
mov dword [0x600fd8], 0xf
mov dword [0x600fe4], 0x190
mov dword [0x600ff0], 0x64
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x6005d4], 0x21d
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x12d
jne 0x408d7f
cmp dword [esi + 0x44], 1
jne 0x408d7f
mov edx, dword [0x5fb8b4]
push edx
call fcn.0040e3f4
pop ecx
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0x12c
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0xfffffed4
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
add edx, 0x4b0
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0x4b0
push eax
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xf0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
add ecx, 0x4b0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0x4b0
push edx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xffffff10
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
push eax
call fcn.00413918
pop ecx
jmp 0x408d7f
cmp dword [0x5fbf50], 1
jne 0x408d7f
mov edx, dword [0x5fbf18]
add edx, dword [0x5fbf20]
cmp edx, dword [esi + 0x20]
jle 0x408d7f
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 4]
cmp ecx, dword [0x5fbf18]
jle 0x408d7f
mov eax, dword [0x5fbf1c]
add eax, dword [0x5fbf24]
cmp eax, dword [esi + 0x24]
jle 0x408d7f
mov edx, dword [esi + 0x24]
add edx, dword [esi + 4]
cmp edx, dword [0x5fbf1c]
jle 0x408d7f
mov ecx, dword [0x5fb8b4]
push ecx
call fcn.0040e3f4
pop ecx
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0x12c
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
add edx, 0x4b0
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0x4b0
push eax
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffc18
push 0xfffffed4
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fc9bc]
add ecx, 0x4b0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbfb8]
add edx, 0x4b0
push edx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xf0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fc9bc]
add eax, 0x4b0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbfb8]
add ecx, 0x4b0
push ecx
call fcn.004144d4
add esp, 0x28
push 0x78
push 1
push 0x3e8
push 0x3e8
push 0xa0
push 0
push 0xfffffa88
push 0xffffff10
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fc9bc]
add edx, 0x4b0
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbfb8]
add eax, 0x4b0
push eax
call fcn.004144d4
add esp, 0x28
mov edx, dword [ebx]
push edx
call fcn.00413918
pop ecx
mov ecx, dword [ebx]
cmp dword [edi + ecx*4], 0x82
jne 0x408d9c
cmp dword [0x59335c], 0
jne 0x408d9c
mov eax, dword [ebx]
mov dword [edi + eax*4], 0x83
mov edx, dword [ebx]
cmp dword [edi + edx*4], 0x83
jne 0x408db9
cmp dword [0x59335c], 1
jne 0x408db9
mov ecx, dword [ebx]
mov dword [edi + ecx*4], 0x82
mov eax, dword [ebx]
cmp dword [edi + eax*4], 0x12c
jne 0x408e16
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6005d4], 0x1f4
jl 0x408e16
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbfb8], 0xffffe890
jl 0x408e16
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6005d4], 0x21b
jg 0x408dfa
mov edx, dword [ebx]
inc dword [edx*4 + 0x6005d4]
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6005d4], 0x21c
jl 0x408e16
mov eax, dword [ebx]
sub dword [eax*4 + 0x5fbfb8], 0x1f4
inc dword [ebx]
cmp dword [ebx], 0x281
jl 0x4076c5
xor edx, edx
mov dword [ebx], edx
jmp 0x40a00f
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
sub eax, dword [0x593370]
add eax, dword [edx*4 + 0x5fbc2c]
cmp eax, 0xffffd120
jl 0x40a00d
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
sub eax, dword [0x593370]
cmp eax, dword [0x593384]
jg 0x40a00d
mov dword [esi], 0xc8
xor edx, edx
mov dword [esi + 4], 0x960
mov dword [esi + 8], 0x3e8
mov dword [esi + 0x1c], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
sub eax, dword [0x593370]
mov dword [esi + 0x20], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbbb0]
sub ecx, dword [0x593374]
mov dword [esi + 0x24], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbd24], 0x63
jle 0x408ec7
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0xc8
jne 0x4097db
cmp dword [0x5fbf50], 0xa
jge 0x4097db
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbd24], 0x33
jne 0x4091ed
mov edx, dword [esi + 0x20]
mov eax, dword [0x5fbf18]
add edx, dword [esi]
add eax, dword [0x5fbf20]
add edx, 0xbb8
cmp eax, edx
jle 0x408f5d
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbc2c]
add eax, dword [esi + 0x20]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x408f5d
mov edx, dword [0x5fbf1c]
mov ecx, dword [esi + 0x24]
add edx, dword [0x5fbf24]
add ecx, 0xbb8
cmp edx, ecx
jle 0x408f5d
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbe98], 0
jne 0x408f5d
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 0
jne 0x408f5d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe98], 1
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
mov eax, dword [esi + 0x20]
mov ecx, dword [0x5fbf18]
add eax, dword [esi]
add ecx, dword [0x5fbf20]
add eax, 0x3e8
cmp ecx, eax
jle 0x408fe1
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
sub ecx, dword [esi]
cmp ecx, dword [0x5fbf18]
jle 0x408fe1
mov eax, dword [0x5fbf1c]
mov edx, dword [esi + 0x24]
add eax, dword [0x5fbf24]
add edx, 0xbb8
cmp eax, edx
jle 0x408fe1
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbe98], 0
jne 0x408fe1
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0xa
jne 0x408fe1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbe98], 0
jne 0x408fe1
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe98], 1
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 1
jne 0x409035
cmp dword [0x5fbc1c], 0x61a8
jl 0x409035
mov eax, dword [0x5fbf18]
add eax, dword [0x5fbf20]
cmp eax, dword [0x5fbba0]
jge 0x409035
cmp dword [ebx], 0x1b
je 0x409035
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbe98], 0
jne 0x409035
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe98], 1
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 2
jne 0x40907f
cmp dword [0x5fbc20], 0xbb80
jl 0x40907f
cmp dword [ebx], 0x1c
je 0x40907f
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbe98], 0
jne 0x40907f
cmp dword [0x5fbf28], 1
jl 0x40907f
mov edx, dword [ebx]
mov dword [edx*4 + 0x5fbe98], 1
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x5fbe1c], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 3
jne 0x409097
cmp dword [0x5fbf1c], 0x7530
jge 0x4090b3
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 4
jne 0x40912a
cmp dword [0x5fbf1c], 0x61a8
jl 0x40912a
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbe98], 0
jne 0x40912a
cmp dword [0x5fbf28], 1
jl 0x40912a
mov ecx, dword [esi + 0x20]
mov edx, dword [0x5fbf18]
add ecx, dword [esi]
add edx, dword [0x5fbf20]
add ecx, 0xa8c
cmp edx, ecx
jle 0x40912a
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbc2c]
add edx, dword [esi + 0x20]
sub edx, dword [esi]
cmp edx, dword [0x5fbf18]
jle 0x40912a
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe98], 1
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 4
jne 0x40912a
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbe1c], 0x64
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbe98], 1
jne 0x4091ed
mov ecx, dword [ebx]
mov edx, dword [0x593388]
add edx, 0x4650
mov eax, dword [ecx*4 + 0x5fbbb0]
cmp eax, edx
jg 0x4091ed
mov ecx, dword [ebx]
add dword [ecx*4 + 0x5fbe1c], 0x78
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbe1c], 0x640
jl 0x40917d
mov edx, dword [ebx]
mov dword [edx*4 + 0x5fbe1c], 0x640
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbe1c]
add dword [edx*4 + 0x5fbbb0], eax
mov eax, dword [esi + 0x20]
mov ecx, dword [0x5fbf18]
add ecx, dword [0x5fbf20]
add eax, dword [esi]
cmp ecx, eax
jle 0x4091ed
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
sub ecx, dword [esi]
cmp ecx, dword [0x5fbf18]
jle 0x4091ed
mov eax, dword [0x5fbf1c]
add eax, dword [0x5fbf24]
cmp eax, dword [esi + 0x24]
jle 0x4091ed
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbca8]
add ecx, dword [esi + 0x24]
add ecx, dword [esi]
cmp ecx, dword [0x5fbf1c]
jle 0x4091ed
dec dword [0x5fbf28]
mov dword [esi + 0x1c], 1
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbd24], 0x34
jne 0x4092b3
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbe98], 0
jne 0x40926f
mov eax, dword [esi + 0x20]
mov ecx, dword [0x5fbf18]
add eax, dword [esi]
add ecx, dword [0x5fbf20]
add eax, 0x7d0
cmp ecx, eax
jle 0x40926f
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
sub ecx, dword [esi]
add ecx, 0xfffff63c
cmp ecx, dword [0x5fbf18]
jle 0x40926f
mov eax, dword [0x5fbf1c]
mov edx, dword [esi + 0x24]
add eax, dword [0x5fbf24]
add edx, 0xfffff448
cmp eax, edx
jle 0x40926f
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe98], 1
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbe98], 1
jne 0x4092b3
mov eax, dword [ebx]
add dword [eax*4 + 0x5fbe1c], 0x78
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbe1c], 0x640
jl 0x4092a1
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbe1c], 0x640
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x5fbe1c]
add dword [ecx*4 + 0x5fbbb0], edx
cmp dword [esi + 0x1c], 0
jne 0x4094d4
mov eax, dword [0x5fbf18]
mov edx, dword [esi + 0x20]
add edx, dword [esi]
add eax, dword [0x5fbf20]
cmp eax, edx
jle 0x409346
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbc2c]
add eax, dword [esi + 0x20]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x409346
mov edx, dword [0x5fbf1c]
add edx, dword [0x5fbf24]
cmp edx, dword [esi + 0x24]
jle 0x409346
mov ecx, dword [0x5fbf1c]
mov eax, dword [esi + 0x24]
add eax, dword [esi + 4]
add ecx, dword [0x5fbf24]
cmp ecx, eax
jge 0x409346
cmp dword [0x5fbf30], 0xffffff9c
jl 0x409346
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbbb0]
sub ecx, dword [0x593374]
sub ecx, dword [0x5fbf24]
add ecx, 0x64
xor eax, eax
mov dword [0x5fbf1c], ecx
mov dword [0x5fbf30], eax
mov dword [0x5fbf60], 1
mov edx, dword [esi + 0x20]
mov ecx, dword [0x5fbf18]
add ecx, dword [0x5fbf20]
sub edx, dword [esi]
cmp edx, ecx
jge 0x4093bb
mov eax, dword [esi + 0x20]
add eax, dword [esi + 8]
cmp eax, dword [0x5fbf18]
jle 0x4093bb
mov ecx, dword [esi + 4]
mov edx, dword [0x5fbf1c]
add edx, dword [0x5fbf24]
lea ecx, [ecx + ecx*2]
test ecx, ecx
jns 0x409382
add ecx, 3
sar ecx, 2
add ecx, dword [esi + 0x24]
cmp edx, ecx
jle 0x4093bb
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbca8]
add edx, dword [esi + 0x24]
sub edx, dword [esi + 8]
cmp edx, dword [0x5fbf1c]
jle 0x4093bb
mov ecx, dword [esi + 0x20]
sub ecx, dword [esi]
sub ecx, dword [0x5fbf20]
xor eax, eax
mov dword [0x5fbf18], ecx
mov dword [0x5fbf2c], eax
mov ecx, dword [ebx]
mov edx, dword [0x5fbf18]
add edx, dword [0x5fbf20]
mov eax, dword [ecx*4 + 0x5fbc2c]
add eax, dword [esi + 0x20]
sub eax, dword [esi]
cmp edx, eax
jle 0x409443
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
add ecx, dword [esi]
cmp ecx, dword [0x5fbf18]
jle 0x409443
mov edx, dword [esi + 4]
mov eax, dword [0x5fbf1c]
add eax, dword [0x5fbf24]
lea edx, [edx + edx*2]
test edx, edx
jns 0x409407
add edx, 3
sar edx, 2
add edx, dword [esi + 0x24]
cmp eax, edx
jle 0x409443
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbca8]
add eax, dword [esi + 0x24]
sub eax, dword [esi + 8]
cmp eax, dword [0x5fbf1c]
jle 0x409443
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
add ecx, dword [esi]
xor eax, eax
mov dword [0x5fbf18], ecx
mov dword [0x5fbf2c], eax
mov ecx, dword [esi]
mov edx, dword [0x5fbf18]
add ecx, ecx
add ecx, dword [esi + 0x20]
add edx, dword [0x5fbf20]
cmp edx, ecx
jle 0x4094d4
mov eax, dword [ebx]
mov ecx, dword [esi]
add ecx, ecx
mov edx, dword [eax*4 + 0x5fbc2c]
add edx, dword [esi + 0x20]
sub edx, ecx
cmp edx, dword [0x5fbf18]
jle 0x4094d4
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbca8]
add edx, dword [esi + 0x24]
sub edx, dword [esi + 4]
cmp edx, dword [0x5fbf1c]
jge 0x4094d4
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbca8]
add eax, dword [esi + 0x24]
add eax, dword [esi]
cmp eax, dword [0x5fbf1c]
jle 0x4094d4
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbca8]
add ecx, dword [esi + 0x24]
add ecx, dword [esi]
mov dword [0x5fbf1c], ecx
cmp dword [0x5fbf30], 0
jge 0x4094d4
mov eax, dword [0x5fbf30]
neg eax
add eax, eax
mov ecx, 3
cdq
idiv ecx
mov dword [0x5fbf30], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbd24], 0x32
jne 0x409684
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add edx, dword [0x5fbf20]
add ecx, 0xaf0
cmp edx, ecx
jle 0x409684
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbc2c]
add edx, dword [esi + 0x20]
add edx, 0xfffff448
cmp edx, dword [0x5fbf18]
jle 0x409684
mov ecx, dword [0x5fbf1c]
mov eax, dword [esi + 0x24]
add ecx, dword [0x5fbf24]
add eax, 0xfffffc18
cmp ecx, eax
jle 0x409684
mov ecx, dword [esi + 0x24]
mov edx, dword [0x5fbf1c]
add ecx, dword [esi + 4]
add edx, dword [0x5fbf24]
add ecx, 0xbb8
cmp edx, ecx
jge 0x409684
cmp dword [0x5fbf60], 1
jne 0x409684
cmp dword [0x5fbf9c], 1
jne 0x409684
cmp dword [0x5fbf50], 0
jne 0x409684
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0
jne 0x4095b4
mov dword [0x5fbf50], 0x64
xor edx, edx
mov dword [0x5fbf58], edx
mov ecx, dword [0x5fb8c4]
push ecx
call fcn.0040e3f4
pop ecx
xor eax, eax
mov dword [0x5fbf54], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 1
jne 0x4095e8
mov dword [0x5fbf50], 0x64
xor ecx, ecx
mov dword [0x5fbf58], ecx
mov eax, dword [0x5fb8c4]
push eax
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf54], 1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 2
jne 0x40961c
mov dword [0x5fbf50], 0x64
xor ecx, ecx
mov dword [0x5fbf58], ecx
mov eax, dword [0x5fb8c4]
push eax
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf54], 2
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 5
jne 0x409650
mov dword [0x5fbf50], 0x64
xor ecx, ecx
mov dword [0x5fbf58], ecx
mov eax, dword [0x5fb8c4]
push eax
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf54], 5
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 6
jne 0x409684
mov dword [0x5fbf50], 0x64
xor ecx, ecx
mov dword [0x5fbf58], ecx
mov eax, dword [0x5fb8c4]
push eax
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf54], 6
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0x28
jne 0x40a00d
mov ecx, dword [0x5fbf18]
mov eax, dword [esi + 0x20]
add ecx, dword [0x5fbf20]
add eax, 0xfffffed4
cmp ecx, eax
jle 0x40a00d
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbc2c]
add ecx, dword [esi + 0x20]
add ecx, 0xfffffc18
cmp ecx, dword [0x5fbf18]
jle 0x40a00d
mov eax, dword [esi + 0x24]
add eax, 0x3e8
cmp eax, dword [0x5fbf1c]
jge 0x40a00d
mov ecx, dword [esi + 0x24]
mov edx, dword [0x5fbf1c]
add ecx, dword [esi + 4]
add edx, dword [0x5fbf24]
add ecx, 0xfa0
cmp edx, ecx
jge 0x40a00d
cmp dword [0x5fbf60], 1
jne 0x40a00d
cmp dword [0x5fbfa0], 1
jne 0x40a00d
cmp dword [0x5fbf50], 0
jne 0x40a00d
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0
jne 0x409768
mov dword [0x5fbf50], 0x1f4
xor edx, edx
mov dword [0x5fbf58], edx
mov ecx, dword [0x5fb8c4]
push ecx
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf50], 0x64
mov dword [0x5fbf54], 0xa
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 2
jne 0x40979d
mov dword [0x5fbf54], 3
xor edx, edx
mov dword [0x5fbf58], edx
mov ecx, dword [0x5fb8c4]
push ecx
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf50], 0x64
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 6
jne 0x40a00d
mov dword [0x5fbf50], 3
xor edx, edx
mov dword [0x5fbf58], edx
mov ecx, dword [0x5fb8c4]
push ecx
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf54], 6
jmp 0x40a00d
mov eax, dword [0x5fbf18]
mov edx, dword [esi + 0x20]
add edx, dword [esi]
add eax, dword [0x5fbf20]
cmp eax, edx
jle 0x409f95
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbc2c]
add eax, dword [esi + 0x20]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x409f95
mov edx, dword [0x5fbf1c]
add edx, dword [0x5fbf24]
cmp edx, dword [esi + 0x24]
jle 0x409f95
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbca8]
add eax, dword [esi + 0x24]
add eax, dword [esi]
cmp eax, dword [0x5fbf1c]
jle 0x409f95
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0x64
jne 0x4098a7
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 0
je 0x409866
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 1
jne 0x4098a7
cmp dword [edi + 4], 3
je 0x4098a7
push 0
push 3
push 0
push 0
push 0
push 0x7d00
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0x3e8
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbb34], 0xd050f800
mov edx, dword [0x5fb8d0]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbd24], 0x65
jne 0x4098f3
push 1
push 3
push 0
push 0
push 0
push 0xfffff060
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbb34]
add edx, 0x1770
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbb34], 0xd050f800
mov eax, dword [0x5fb8d0]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0x66
jne 0x409c72
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 0
jne 0x40995e
xor eax, eax
mov dword [0x5fbb14], eax
jmp 0x409955
mov eax, dword [0x5fbb14]
push 0
shl eax, 3
push 0
push 0
push 0
lea eax, [eax + eax*2]
push 0
push 0xfffff448
mov edx, dword [ebx]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
mov ecx, dword [edx*4 + 0x5fbb34]
lea eax, [eax + eax*4]
add ecx, eax
push ecx
call fcn.00414564
add esp, 0x1c
inc dword [0x5fbb14]
cmp dword [0x5fbb14], 3
jle 0x409918
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 1
jne 0x4099a4
cmp dword [0x5fbf1c], 0x3e80
jl 0x4099a4
push 0
push 4
push 0
push 0xfffff830
push 0
push 0xabe0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
add eax, 0x5dc
push eax
call fcn.00414564
add esp, 0x1c
jmp 0x409b54
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 2
jne 0x409a05
push 0
push 5
push 0
push 0xfffff9c0
push 0
push 0x7530
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
add eax, 0x1194
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [0x5fb8d0]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbda0], 3
mov eax, dword [ebx]
sub dword [eax*4 + 0x5fbb34], 0x2ee0
jmp 0x409b54
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 3
jne 0x409a30
mov ecx, dword [ebx]
add dword [ecx*4 + 0x5fbb34], 0x2ee0
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbda0], 4
jmp 0x409b54
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 4
jne 0x409a8f
push 0
push 5
push 0
push 0xfffff9c0
push 0
push 0x7530
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
add eax, 0x1194
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [0x5fb8d0]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbda0], 5
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbda0], edx
jmp 0x409b54
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 7
jne 0x409aaa
mov dword [0x5fbf14], 1
jmp 0x409b54
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 8
jne 0x409aee
push 0
push 5
push 0
push 0xfffff9c0
push 0
push 0x6590
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0xffffe0c0
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [0x5fb8d0]
push eax
call fcn.0040e3f4
pop ecx
jmp 0x409b54
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 9
jne 0x409b54
xor ecx, ecx
mov dword [0x5fbb14], ecx
jmp 0x409b4b
mov ecx, dword [0x5fbb14]
push 0
shl ecx, 3
push 3
push 0
push 0xffffe890
lea ecx, [ecx + ecx*2]
push 0
push 0xbb80
mov eax, dword [ebx]
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*4]
mov edx, dword [eax*4 + 0x5fbb34]
lea ecx, [ecx + ecx*4]
add edx, ecx
add edx, 0xbb8
push edx
call fcn.00414564
add esp, 0x1c
inc dword [0x5fbb14]
cmp dword [0x5fbb14], 2
jle 0x409b04
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0xa
jne 0x409b7a
mov edx, dword [ebx]
sub dword [edx*4 + 0x5fbb34], 0x3a98
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbd24], 0x65
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0xc
jne 0x409be1
mov dword [0x5fbb14], 1
jmp 0x409bd8
mov eax, dword [0x5fbb14]
push 0
shl eax, 3
push 9
push 0
push 0xfffff5d8
lea eax, [eax + eax*2]
push 0
push 0x9c40
mov edx, dword [ebx]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
mov ecx, dword [edx*4 + 0x5fbb34]
lea eax, [eax + eax*4]
add ecx, eax
add ecx, 0xfffffc18
push ecx
call fcn.00414564
add esp, 0x1c
inc dword [0x5fbb14]
cmp dword [0x5fbb14], 3
jle 0x409b92
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 0x14
jne 0x409bf5
xor ecx, ecx
mov dword [0x604f58], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 0x1e
jne 0x409c41
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x5fbb34], 0xfb3b4c00
mov dword [0x5fbf30], ecx
mov eax, dword [0x5fb8a8]
push eax
call fcn.005929f4
xor edx, edx
mov dword [0x5fbf50], 0x12e
mov dword [0x5fbf58], edx
pop ecx
mov ecx, dword [0x5fb8e8]
push ecx
call fcn.0040e3f4
pop ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbda0], 3
je 0x409c72
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 4
je 0x409c72
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 0xa
je 0x409c72
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbb34], 0xd050f800
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0x67
jne 0x409d69
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbda0], 0
jne 0x409ced
mov eax, dword [0x602f60]
mov dword [eax*4 + 0x603be4], 0xa
mov edx, dword [0x602f60]
mov dword [edx*4 + 0x603c44], 0x32
push 0
push 0x4f
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbbb0]
add eax, 0x7d0
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0x2328
push ecx
call fcn.00414564
add esp, 0x1c
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbb34], 0xd050f800
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 1
jne 0x409d69
cmp dword [edi + 0x18], 6
jg 0x409d69
mov ecx, dword [0x602f60]
mov dword [ecx*4 + 0x603be4], 0xa
mov eax, dword [0x602f60]
mov dword [eax*4 + 0x603c44], 0x32
push 0
push 0x4f
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbbb0]
add ecx, 0x7d0
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbb34]
add edx, 0xffffd120
push edx
call fcn.00414564
add esp, 0x1c
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbb34], 0xd050f800
mov dword [0x6005f8], 0x1f4
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbd24], 0x68
jne 0x409e8c
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 0
jne 0x409e8c
push 0
push 0x4f
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbbb0]
add eax, 0x1388
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0x2ee0
push ecx
call fcn.00414564
add esp, 0x1c
push 1
push 0x4f
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbbb0]
add edx, 0x1388
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
add eax, 0x2ee0
push eax
call fcn.00414564
add esp, 0x1c
push 2
push 0x4f
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbbb0]
add ecx, 0x1388
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbb34]
add edx, 0x2ee0
push edx
call fcn.00414564
add esp, 0x1c
push 3
push 0x4f
push 0
push 0
push 0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbbb0]
add eax, 0x1388
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0x2ee0
push ecx
call fcn.00414564
add esp, 0x1c
push 4
push 0x4f
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbbb0]
add edx, 0x1388
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
add eax, 0x2ee0
push eax
call fcn.00414564
add esp, 0x1c
mov edx, dword [ebx]
mov dword [edx*4 + 0x5fbb34], 0xd050f800
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbd24], 0x69
jne 0x409ee0
cmp dword [0x5fbf60], 0
jne 0x409ee0
cmp dword [0x5fbf30], 0
jl 0x409ee0
sub dword [0x5fbfbc], 0x3e8
add dword [0x5fbfc0], 0x3e8
mov eax, dword [ebx]
inc dword [eax*4 + 0x5fbda0]
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbda0], 3
jl 0x409ee0
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x5fbb34], 0xff85ee00
mov eax, dword [ebx]
cmp dword [eax*4 + 0x5fbd24], 0x12c
jne 0x409f61
cmp dword [0x5fbf50], 0
jne 0x409f61
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x5fbca8]
add ecx, dword [esi + 0x24]
add ecx, dword [esi]
add ecx, 0xfffff448
cmp ecx, dword [0x5fbf1c]
jle 0x409f61
cmp dword [0x5fbf28], 1
jl 0x409f61
mov eax, dword [0x5fb8a8]
push eax
call fcn.005929f4
xor edx, edx
mov dword [0x5fbf50], 0x12c
mov dword [0x5fbf58], edx
pop ecx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x5fbb34]
sub eax, dword [0x593370]
add eax, 0xfffff830
mov dword [0x5fbf18], eax
mov edx, dword [0x5fb8d4]
push edx
call fcn.0040e3f4
pop ecx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x5fbd24], 0x1f4
jne 0x409f95
cmp dword [0x5fbf50], 0
jne 0x409f95
cmp dword [0x5fbf28], 1
jl 0x409f95
inc dword [0x593350]
mov eax, dword [ebx]
mov dword [eax*4 + 0x5fbb34], 0xfb3b4c00
mov edx, dword [ebx]
cmp dword [edx*4 + 0x5fbd24], 0xb4
jne 0x40a00d
mov ecx, dword [ebx]
inc dword [ecx*4 + 0x5fbe1c]
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x5fbe1c]
cmp edx, dword [ecx*4 + 0x5fbe98]
jl 0x40a00d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x5fbe1c], edx
push 0
push 0x54
push 0
push 0x384
call fcn.00401dd0
pop ecx
mov ecx, 0xfffff9c0
sub ecx, eax
push ecx
push 0x258
call fcn.00401dd0
pop ecx
add eax, 0xfffffed4
push eax
push 0x7530
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x5fbb34]
push edx
call fcn.00414564
add esp, 0x1c
inc dword [ebx]
cmp dword [ebx], 0x1f
jl 0x408e2d
xor ecx, ecx
mov dword [0x5fbf90], ecx
xor eax, eax
mov dword [0x5fbfa0], eax
xor edx, edx
mov dword [ebx], edx
jmp 0x40a804
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x604a10]
mov dword [esi + 0x28], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x604a64]
mov dword [esi + 0x2c], ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x604ab8]
mov dword [esi + 0x30], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x604b0c]
mov dword [esi + 0x34], eax
mov edx, dword [esi + 0x28]
sub edx, dword [0x593370]
mov dword [esi + 0x20], edx
mov ecx, dword [esi + 0x2c]
sub ecx, dword [0x593374]
mov dword [esi + 0x24], ecx
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x30]
cmp eax, 0xffffd116
jl 0x40a802
mov edx, dword [0x593384]
add edx, 0x2f44
cmp edx, dword [esi + 0x20]
jl 0x40a802
mov dword [esi], 0x1f4
mov dword [esi + 4], 0x4b0
mov dword [esi + 8], 0x3e8
mov dword [esi + 0x1c], 0x7d0
cmp dword [0x5fbf30], 0x64
jl 0x40a0d1
mov ecx, dword [0x5fbf30]
add ecx, 0x384
mov dword [esi + 4], ecx
mov eax, dword [0x5fbf30]
cmp eax, dword [esi + 4]
jle 0x40a0e7
mov edx, dword [0x5fbf30]
add edx, 0x64
mov dword [esi + 4], edx
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x604b60]
add dword [edx*4 + 0x604a64], eax
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x604bb4]
add dword [edx*4 + 0x604b60], eax
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x604cb0]
cmp eax, 7
ja case.0x40a11d.0
jmp dword [eax*4 + 0x40a124]
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604dac], 1
jne case.0x40a11d.0
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x604bb4], 0x3c
jmp case.0x40a11d.0
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604efc], 0
jne 0x40a17f
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x604d58], ecx
jmp 0x40a18c
mov eax, dword [ebx]
mov dword [eax*4 + 0x604d58], 1
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x604a64]
sub ecx, dword [0x593374]
cmp ecx, 0xfffff7cc
jge 0x40a1c2
mov eax, dword [0x593388]
mov edx, dword [ebx]
add eax, dword [0x593374]
add eax, dword [0x604f5c]
add eax, 0x7d0
mov dword [edx*4 + 0x604a64], eax
mov ecx, dword [ebx]
mov edx, dword [0x593388]
add edx, dword [0x604f5c]
add edx, 0x7d0
mov eax, dword [ecx*4 + 0x604a64]
sub eax, dword [0x593374]
cmp eax, edx
jle case.0x40a11d.0
mov eax, dword [ebx]
mov ecx, dword [0x593374]
add ecx, 0xfffff7cc
mov dword [eax*4 + 0x604a64], ecx
jmp case.0x40a11d.0
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604dac], 1
jne case.0x40a11d.0
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x604bb4], 0x28
cmp dword [0x5fbf88], 1
jl 0x40a236
cmp dword [0x5fbf8c], 1
jne 0x40a236
cmp dword [0x5fbf9c], 1
je 0x40a63d
cmp dword [0x5fbf28], 1
jl 0x40a63d
mov eax, dword [0x5fbf18]
mov edx, dword [esi + 0x20]
add edx, dword [esi]
add eax, dword [0x5fbf20]
cmp eax, edx
jle 0x40a4c2
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 0x30]
sub ecx, dword [esi]
cmp ecx, dword [0x5fbf18]
jle 0x40a4c2
mov eax, dword [0x5fbf1c]
add eax, dword [0x5fbf24]
cmp eax, dword [esi + 0x24]
jle 0x40a4c2
mov edx, dword [0x5fbf1c]
mov ecx, dword [esi + 0x24]
add ecx, dword [esi + 4]
add edx, dword [0x5fbf24]
cmp edx, ecx
jge 0x40a4c2
cmp dword [0x5fbf30], 0xffffff9c
jl 0x40a4c2
mov eax, dword [esi + 0x24]
sub eax, dword [0x5fbf24]
add eax, 0x64
mov dword [0x5fbf1c], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604c08], 1
jne 0x40a2db
mov dword [0x604b88], 0x384
mov dword [0x604b8c], 0x384
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604d04], 0xc
je 0x40a2fa
mov dword [0x5fbf60], 1
xor eax, eax
mov dword [0x5fbf30], eax
jmp 0x40a304
mov dword [0x5fbf30], 0xfffffce0
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604cb0], 1
jne 0x40a329
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604dac], 0
jne 0x40a329
mov eax, dword [ebx]
mov dword [eax*4 + 0x604dac], 1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604cb0], 1
jne 0x40a341
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604dac], 1
je 0x40a359
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604cb0], 3
je 0x40a359
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604cb0], 5
jne 0x40a368
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x604b60]
add dword [0x5fbf1c], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604cb0], 7
jne 0x40a3b8
cmp dword [0x5fbf98], 1
je 0x40a391
mov dword [0x5fbf30], 0xfffffda8
sub dword [0x5fbf1c], 0x32a
cmp dword [0x5fbf98], 1
jne 0x40a3b8
sub dword [0x5fbf1c], 0x190
mov dword [0x5fbf30], 0xfffffa88
mov dword [0x5fbf74], 0xa
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604d04], 1
jne 0x40a46e
mov eax, dword [0x5fb8b4]
push eax
call fcn.0040e3f4
pop ecx
push 0x78
push 2
push 0x1194
push 0x1194
push 0xa0
push 0
push 0xfffffa88
push 0xffffff10
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x604a64]
add ecx, 0xfffffc18
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x604a10]
add edx, 0xc8
push edx
call fcn.004144d4
add esp, 0x28
push 0x78
push 3
push 0x1194
push 0x1194
push 0xa0
push 0
push 0xfffffa88
push 0xf0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x604a64]
add eax, 0xfffffc18
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x604a10]
add ecx, 0x10cc
push ecx
call fcn.004144d4
add esp, 0x28
mov eax, dword [ebx]
mov dword [eax*4 + 0x604a10], 0xfbd3e280
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604d04], 2
jne 0x40a4c2
mov dword [0x5fbf2c], 0xfffff6a0
mov ecx, dword [ebx]
inc dword [ecx*4 + 0x604efc]
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604efc], 0x64
jl 0x40a4c2
xor edx, edx
mov dword [0x5fbf28], edx
mov dword [0x5fbfb0], 0x35
mov dword [0x5fbfac], 0x1e
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x604efc], 0xffffec78
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604d04], 2
jne 0x40a4ef
cmp dword [0x5fbf2c], 0xfffff6a0
je 0x40a4ef
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604efc], 0
jle 0x40a4ef
mov ecx, dword [ebx]
dec dword [ecx*4 + 0x604efc]
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604d04], 0xb
jne 0x40a55e
mov ecx, dword [esi + 0x20]
mov edx, dword [0x5fbf18]
add ecx, dword [esi]
add edx, dword [0x5fbf20]
add ecx, 0xfffff830
cmp edx, ecx
jle 0x40a533
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x30]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x40a533
mov edx, dword [ebx]
mov dword [edx*4 + 0x604dac], 1
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604dac], 1
jne 0x40a55e
mov eax, dword [ebx]
mov dword [eax*4 + 0x604bb4], 0x3c
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x604b60]
add dword [eax*4 + 0x604a64], ecx
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add ecx, dword [esi]
add edx, dword [0x5fbf20]
cmp edx, ecx
jle 0x40a5ff
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x30]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x40a5ff
mov edx, dword [esi + 4]
sar edx, 1
jns 0x40a591
adc edx, 0
mov ecx, dword [esi + 0x24]
sub ecx, edx
cmp ecx, dword [0x5fbf1c]
jge 0x40a5ff
mov eax, dword [esi + 4]
sar eax, 1
jns 0x40a5a8
adc eax, 0
add eax, dword [esi + 0x24]
cmp eax, dword [0x5fbf1c]
jle 0x40a5ff
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604c08], 2
jne 0x40a5ff
cmp dword [0x5fbf30], 0
jge 0x40a5d6
mov ecx, dword [0x5fbf30]
neg ecx
mov dword [0x5fbf30], ecx
add dword [0x5fbf1c], 0x6e
cmp dword [0x5fbf80], 0
jg 0x40a5ec
dec dword [0x5fbf28]
cmp dword [0x5fbf84], 1
je 0x40a5ff
mov dword [0x5fbf80], 0x28
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604cb0], 6
jne 0x40a63d
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add ecx, dword [esi]
add edx, dword [0x5fbf20]
cmp edx, ecx
jle 0x40a63d
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x30]
sub eax, dword [esi]
cmp eax, dword [0x5fbf18]
jle 0x40a63d
mov edx, dword [ebx]
mov dword [edx*4 + 0x604dac], 1
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604cb0], 2
je 0x40a655
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604cb0], 4
jne 0x40a691
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604d58], 0
jne 0x40a673
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x604e54]
sub dword [edx*4 + 0x604a10], eax
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604d58], 1
jne 0x40a691
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x604e54]
add dword [ecx*4 + 0x604a10], edx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604cb0], 3
je 0x40a6a9
mov edx, dword [ebx]
cmp dword [edx*4 + 0x604cb0], 5
jne 0x40a6e5
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x604d58], 0
jne 0x40a6c7
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x604e54]
sub dword [ecx*4 + 0x604a64], edx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604d58], 1
jne 0x40a6e5
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x604e54]
add dword [eax*4 + 0x604a64], ecx
xor edx, edx
mov dword [0x5fbb08], edx
jmp 0x40a7f5
mov ecx, dword [0x5fbb08]
cmp dword [ecx*4 + 0x603384], 1
jne 0x40a7ef
mov eax, dword [0x5fbb08]
mov ecx, dword [0x5fbb08]
mov edx, dword [eax*4 + 0x602f64]
mov eax, dword [esi + 0x20]
add edx, dword [ecx*4 + 0x603024]
add eax, dword [esi]
sub edx, dword [0x593370]
cmp edx, eax
jle 0x40a7ef
mov edx, dword [0x5fbb08]
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x30]
sub eax, dword [esi]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
cmp ecx, eax
jge 0x40a7ef
mov edx, dword [0x5fbb08]
mov eax, dword [0x5fbb08]
mov ecx, dword [edx*4 + 0x602fc4]
mov edx, dword [esi + 0x2c]
add ecx, dword [eax*4 + 0x603084]
add edx, 0xffffff9c
cmp ecx, edx
jle 0x40a7ef
mov ecx, dword [0x5fbb08]
mov edx, dword [0x5fbb08]
mov eax, dword [ecx*4 + 0x602fc4]
mov ecx, dword [esi + 0x2c]
add ecx, dword [esi + 4]
add eax, dword [edx*4 + 0x603084]
add ecx, 0x1f4
cmp eax, ecx
jge 0x40a7ef
mov eax, dword [0x5fbb08]
cmp dword [eax*4 + 0x603144], 0xffffff9c
jl 0x40a7ef
mov edx, dword [0x5fbb08]
mov ecx, dword [esi + 0x24]
mov eax, dword [0x5fbb08]
sub ecx, dword [edx*4 + 0x603084]
add ecx, 0x64
mov dword [eax*4 + 0x602fc4], ecx
xor ecx, ecx
mov edx, dword [0x5fbb08]
mov dword [edx*4 + 0x603144], ecx
mov eax, dword [0x5fbb08]
mov dword [eax*4 + 0x6033e4], 1
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x18
jl 0x40a6f2
inc dword [ebx]
cmp dword [ebx], 0x15
jl 0x40a030
xor edx, edx
mov dword [ebx], edx
jmp 0x40a91f
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x600ff8]
sub eax, dword [0x593370]
mov dword [esi], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x60131c]
sub ecx, dword [0x593374]
mov dword [esi + 4], ecx
mov eax, dword [ebx]
mov eax, dword [eax*4 + 0x601640]
mov ecx, 0x64
cdq
idiv ecx
mov dword [esi + 8], eax
mov eax, dword [ebx]
mov eax, dword [eax*4 + 0x601964]
mov ecx, 0x64
cdq
idiv ecx
mov dword [esi + 0xc], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x602918], 0
jl 0x40a876
mov edx, dword [ebx]
dec dword [edx*4 + 0x602918]
mov ecx, dword [esi + 8]
shl ecx, 2
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*4]
add ecx, dword [esi]
cmp ecx, 0xfffffff6
jl 0x40a910
mov eax, dword [esi + 4]
cmp eax, dword [0x593384]
jg 0x40a910
mov edx, dword [esi + 0xc]
shl edx, 2
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, dword [esi + 4]
cmp edx, 0xffffe0b6
jl 0x40a910
mov ecx, dword [esi + 0xc]
cmp ecx, dword [0x593388]
jg 0x40a910
mov eax, dword [ebx]
cmp dword [eax*4 + 0x602918], 0
jl 0x40a910
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x601c88]
add dword [eax*4 + 0x600ff8], ecx
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x601fac]
add dword [eax*4 + 0x60131c], ecx
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x6022d0]
add dword [eax*4 + 0x601c88], ecx
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x6025f4]
add dword [eax*4 + 0x601fac], ecx
jmp 0x40a91d
mov edx, dword [ebx]
mov dword [edx*4 + 0x600ff8], 0xff76abc0
inc dword [ebx]
cmp dword [ebx], 0xc9
jl 0x40a816
xor ecx, ecx
mov dword [ebx], ecx
jmp 0x40aba2
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603ca8], 0xfffec780
jl 0x40aba0
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603f30], 0
jl 0x40a95c
mov ecx, dword [ebx]
dec dword [ecx*4 + 0x603f30]
xor eax, eax
mov dword [0x5fbb08], eax
jmp 0x40ab93
xor edx, edx
xor ecx, ecx
mov dword [esi], edx
mov dword [esi + 4], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6042fc], 0
jne 0x40a9eb
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603f30], 0
jge 0x40a9eb
mov ecx, dword [ebx]
mov edx, dword [0x593384]
add edx, 0x7d0
mov eax, dword [ecx*4 + 0x603ca8]
sub eax, dword [0x593370]
cmp eax, edx
jl 0x40a9eb
mov ecx, dword [ebx]
mov edx, dword [0x593384]
add edx, dword [0x5fbf2c]
add edx, 0x7d0
mov eax, dword [ecx*4 + 0x603ca8]
sub eax, dword [0x593370]
cmp eax, edx
jge 0x40a9eb
cmp dword [0x5fbb08], 0
jne 0x40a9eb
mov dword [esi], 1
mov ecx, dword [0x602f60]
xor eax, eax
mov dword [ecx*4 + 0x603504], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6042fc], 0
jne 0x40aa84
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603f30], 0
jge 0x40aa84
mov eax, dword [ebx]
mov ecx, 0xfffffe70
mov edx, dword [eax*4 + 0x604074]
mov eax, dword [ebx]
sub ecx, dword [edx*4 + 0x603624]
mov edx, dword [eax*4 + 0x603ca8]
sub edx, dword [0x593370]
add ecx, dword [0x5fbf2c]
cmp ecx, edx
jg 0x40aa84
mov ecx, dword [ebx]
mov edx, 0xfffffe70
mov eax, dword [ecx*4 + 0x604074]
mov ecx, dword [ebx]
sub edx, dword [eax*4 + 0x603624]
mov eax, dword [ecx*4 + 0x603ca8]
sub eax, dword [0x593370]
cmp edx, eax
jle 0x40aa84
cmp dword [0x5fbb08], 1
jne 0x40aa84
mov dword [esi], 1
mov dword [esi + 4], 1
mov edx, dword [0x602f60]
mov dword [edx*4 + 0x603504], 1
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6042fc], 1
jne 0x40ab28
mov eax, dword [ebx]
xor ecx, ecx
mov edx, dword [eax*4 + 0x604074]
mov eax, dword [ebx]
sub ecx, dword [edx*4 + 0x603624]
mov edx, dword [eax*4 + 0x603ca8]
sub edx, dword [0x593370]
cmp ecx, edx
jg 0x40ab28
mov ecx, dword [ebx]
mov edx, dword [0x593384]
add edx, 0xfa0
mov eax, dword [ecx*4 + 0x603ca8]
sub eax, dword [0x593370]
cmp eax, edx
jg 0x40ab28
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603dec]
sub eax, dword [0x593374]
cmp eax, 0xffffdcd8
jl 0x40ab28
mov edx, dword [ebx]
mov eax, dword [0x593388]
add eax, 0xfa0
mov ecx, dword [edx*4 + 0x603dec]
sub ecx, dword [0x593374]
cmp ecx, eax
jg 0x40ab28
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603f30], 0
jge 0x40ab28
mov dword [esi], 1
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x6042fc], eax
cmp dword [esi], 1
jne 0x40ab8d
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603f30], 0x191
mov dword [esi], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x604074], 0xa
jl 0x40ab57
mov edx, dword [ebx]
mov dword [edx*4 + 0x603f30], 0x98967f
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x6041b8]
push eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x604074]
push ecx
push 0
push 0
push 0
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x603dec]
push edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603ca8]
push eax
call fcn.00414564
add esp, 0x1c
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 1
jle 0x40a968
inc dword [ebx]
cmp dword [ebx], 0x51
jl 0x40a934
xor edx, edx
mov dword [ebx], edx
jmp 0x40d0ee
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
sub eax, dword [0x593370]
mov dword [esi], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
sub ecx, dword [0x593374]
mov dword [esi + 4], ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x603024]
mov dword [esi + 8], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603084]
mov dword [esi + 0xc], eax
mov dword [esi + 0x38], 0x2ee0
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6035c4], 0
jl 0x40ac0b
mov ecx, dword [ebx]
dec dword [ecx*4 + 0x6035c4]
mov eax, dword [esi]
add eax, dword [esi + 8]
mov edx, dword [esi + 0x38]
neg edx
cmp eax, edx
jl 0x40d0df
mov ecx, dword [0x593384]
add ecx, dword [esi + 0x38]
cmp ecx, dword [esi]
jl 0x40d0df
mov eax, dword [esi + 4]
add eax, dword [esi + 0xc]
cmp eax, 0xffffdcce
jl 0x40d0df
mov edx, dword [0x593388]
add edx, 0x4e20
cmp edx, dword [esi + 4]
jl 0x40d0df
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x6032c4], eax
xor ecx, ecx
mov edx, dword [ebx]
xor eax, eax
mov dword [edx*4 + 0x603324], ecx
mov dword [esi + 0x28], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x603444]
cmp ecx, 0x51
jg 0x40acf6
je 0x40ba78
cmp ecx, 7
jg 0x40acba
je 0x40b565
cmp ecx, 6
ja case.default.0x40ad0d
jmp dword [ecx*4 + 0x40ac9e]
cmp ecx, 0x1e
jg 0x40ace1
je 0x40b79c
sub ecx, 8
je 0x40b5dc
dec ecx
je 0x40b6cb
dec ecx
je 0x40b755
jmp case.default.0x40ad0d
sub ecx, 0x4f
je 0x40b9cd
dec ecx
je 0x40ba68
jmp case.default.0x40ad0d
cmp ecx, 0x58
jg 0x40ad2c
je 0x40be7f
add ecx, 0xffffffae
cmp ecx, 5
ja case.default.0x40ad0d
jmp dword [ecx*4 + 0x40ad14]
cmp ecx, 0x6e
jg 0x40ad57
je 0x40c2bc
sub ecx, 0x5a
je 0x40c0ae
sub ecx, 0xa
je 0x40c0ba
sub ecx, 2
je 0x40c293
jmp case.default.0x40ad0d
sub ecx, 0x97
je 0x40b6b9
sub ecx, 0x31
je 0x40c2f8
jmp case.default.0x40ad0d
mov dword [esi + 0x28], 0x64
jmp case.default.0x40ad0d
mov dword [esi + 0x28], 0x64
jmp case.default.0x40ad0d
xor eax, eax
mov edx, 0x320
mov dword [esi + 0x28], eax
mov dword [esi + 0x44], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jl 0x40ada8
mov eax, dword [esi + 0x44]
mov dword [esi + 0x28], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 1
jl case.default.0x40ad0d
xor ecx, ecx
mov dword [0x5fbb08], ecx
jmp 0x40aeda
mov dword [esi], 0xfa
xor eax, eax
mov dword [esi + 0x14], 0xfffffce0
mov dword [esi + 0x30], eax
mov dword [esi + 4], 0x640
mov edx, dword [0x5fbb08]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
mov dword [esi + 0x20], ecx
mov eax, dword [0x5fbb08]
mov edx, dword [eax*4 + 0x602fc4]
sub edx, dword [0x593374]
mov dword [esi + 0x24], edx
mov ecx, dword [0x5fbb08]
cmp ecx, dword [ebx]
je 0x40aed4
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
mov eax, dword [esi]
add edx, dword [ecx*4 + 0x603024]
add eax, eax
add eax, dword [esi + 0x20]
sub edx, dword [0x593370]
cmp edx, eax
jle 0x40aed4
mov edx, dword [0x5fbb08]
mov eax, dword [esi]
add eax, eax
mov ecx, dword [edx*4 + 0x603024]
add ecx, dword [esi + 0x20]
mov edx, dword [ebx]
sub ecx, eax
mov eax, dword [edx*4 + 0x602f64]
sub eax, dword [0x593370]
cmp ecx, eax
jle 0x40aed4
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
mov edx, dword [esi + 0x24]
add ecx, dword [eax*4 + 0x603084]
add edx, dword [esi + 0x14]
sub ecx, dword [0x593374]
cmp ecx, edx
jle 0x40aed4
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x602fc4]
mov ecx, dword [esi + 4]
add eax, dword [edx*4 + 0x603084]
sub eax, dword [0x593374]
lea ecx, [ecx + ecx*2]
add ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x30]
add ecx, 0x5dc
cmp eax, ecx
jge 0x40aed4
mov eax, dword [0x5fbb08]
mov dword [eax*4 + 0x602f64], 0xfff3cb00
mov edx, dword [0x5fb8c0]
push edx
call fcn.0040e3f4
pop ecx
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x18
jl 0x40adc5
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603384], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0
jne 0x40af10
mov ecx, dword [ebx]
sub dword [ecx*4 + 0x602fc4], 0x320
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 1
jne case.default.0x40ad0d
mov edx, dword [ebx]
add dword [edx*4 + 0x602fc4], 0x4b0
jmp case.default.0x40ad0d
mov dword [esi + 0x28], 0x78
mov dword [esi], 0xfa
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
sub eax, dword [0x593370]
mov dword [esi + 0x20], eax
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
sub ecx, dword [0x593374]
mov dword [esi + 0x24], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0
jl 0x40af78
mov edx, dword [ebx]
dec dword [edx*4 + 0x603b24]
mov ecx, dword [0x5fbf18]
mov eax, dword [esi]
add ecx, dword [0x5fbf20]
add eax, eax
sub ecx, dword [esi + 0x20]
sub ecx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 4]
cdq
xor eax, edx
sub eax, edx
cmp eax, 0x2328
jge case.default.0x40ad0d
mov ecx, dword [ebx]
mov eax, dword [esi + 0x20]
mov edx, dword [esi]
add edx, edx
sub eax, dword [ecx*4 + 0x603024]
add eax, edx
cmp eax, dword [0x5fbf18]
setg cl
and ecx, 1
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
cdq
xor eax, edx
sub eax, edx
cmp eax, 0xbb8
jge case.default.0x40ad0d
cmp dword [0x5fbf30], 0xfffffda8
jg case.default.0x40ad0d
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603b24], 0
jg case.default.0x40ad0d
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 1
jne case.default.0x40ad0d
cmp dword [0x5fbf60], 0
jne case.default.0x40ad0d
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6033e4], 1
jne case.default.0x40ad0d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603144], 0xfffff9c0
mov eax, dword [ebx]
mov dword [eax*4 + 0x603b24], 0x28
mov edx, dword [ebx]
sub dword [edx*4 + 0x602fc4], 0x3e8
jmp case.default.0x40ad0d
mov dword [esi + 0x28], 0xa0
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603384], 0x1e
jne 0x40b088
mov eax, dword [ebx]
mov edx, 0xfffff9c0
mov dword [eax*4 + 0x603144], edx
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x603144]
add dword [edx*4 + 0x602fc4], eax
mov dword [esi + 0x28], 0x78
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603b24], 0xa
jl 0x40b16c
mov eax, dword [ebx]
inc dword [eax*4 + 0x603b24]
cmp dword [0x5fbf28], 1
jl 0x40b16c
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603b24], 0x13
jg 0x40b0de
mov ecx, dword [esi]
mov dword [0x5fbf18], ecx
mov eax, dword [esi + 4]
add eax, 0xfffff448
xor edx, edx
mov dword [0x5fbf1c], eax
mov dword [0x5fbf50], edx
xor ecx, ecx
mov dword [esi + 0x28], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x14
jne 0x40b14a
mov dword [0x5fbf2c], 0x2bc
mov dword [0x5fbf78], 0x18
mov dword [0x5fbf30], 0xfffffb50
mov edx, dword [esi + 4]
add edx, 0xfffff060
mov dword [0x5fbf1c], edx
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603504], 1
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 1
jne 0x40b14a
mov dword [0x5fbf2c], 0x348
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x6034a4], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x28
jne 0x40b16c
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603504], ecx
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603b24], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne 0x40b380
xor eax, eax
mov dword [0x5fbb08], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x603b24]
mov dword [ebp - 0x14], ecx
mov eax, dword [ebx]
lea edx, [eax*4 + 0x6033e4]
mov dword [ebp - 0x10], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x602f64]
mov dword [ebp - 0xc], eax
jmp 0x40b230
mov edx, dword [0x5fbb08]
cmp dword [edx*4 + 0x5fbd24], 0x12c
jne 0x40b22a
mov ecx, dword [ebp - 0xc]
mov eax, dword [ecx]
sub eax, dword [0x593370]
cmp eax, 0xffffe0c0
jl 0x40b22a
mov edx, dword [ebp - 0xc]
mov eax, dword [0x5fbb08]
mov ecx, dword [edx]
mov edx, dword [eax*4 + 0x5fbb34]
add edx, 0x7d0
cmp ecx, edx
jl 0x40b22a
mov ecx, dword [ebp - 0xc]
mov edx, dword [0x5fbb08]
mov eax, dword [ecx]
mov ecx, dword [edx*4 + 0x5fbb34]
add ecx, 0xe10
cmp eax, ecx
jg 0x40b22a
mov eax, dword [ebp - 0x10]
cmp dword [eax], 1
jne 0x40b22a
mov edx, dword [0x5fbb08]
mov dword [edx*4 + 0x5fbb34], 0xfff3cb00
mov ecx, dword [ebp - 0x14]
mov dword [ecx], 0x64
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x1f
jl 0x40b1ac
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x64
jne 0x40b2fe
push 0x14
push 4
push 0x7080
push 0x3e8
push 0
push 0
push 0
push 0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
add ecx, 0xffff90ac
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
push edx
call fcn.004144d4
add esp, 0x28
cmp dword [0x5fbf50], 0x12c
jne 0x40b2c5
xor ecx, ecx
mov dword [0x5fbf50], ecx
mov eax, dword [0x5fb8d4]
push eax
call fcn.005929f4
pop ecx
mov edx, dword [0x5fba38]
push edx
call fcn.00413894
pop ecx
push 1
push 3
mov ecx, dword [0x5fb8a8]
push ecx
call fcn.005929c8
add esp, 0xc
xor eax, eax
mov dword [0x5fbb0c], eax
jmp 0x40b2f5
mov edx, dword [0x5fbb0c]
cmp dword [edx*4 + 0x5fbd24], 0x68
jne 0x40b2ef
mov ecx, dword [0x5fbb0c]
mov dword [ecx*4 + 0x5fbb34], 0xfb3b4c00
inc dword [0x5fbb0c]
cmp dword [0x5fbb0c], 0x1f
jl 0x40b2ce
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x78
jne 0x40b35b
push 0xf0
push 4
push 0x7080
push 0x3e8
push 0xa0
push 0
push 0xfffffb50
push 0x258
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
add ecx, 0xffff90ac
push ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
push edx
call fcn.004144d4
add esp, 0x28
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603504], 1
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x8c
jne 0x40b380
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603504], ecx
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603b24], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603b24], 0xdc
jl 0x40b3a5
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603b24], edx
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603504], eax
xor edx, edx
mov dword [0x5fbb08], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x603504]
mov dword [ebp - 0x20], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x603b24]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebx]
lea edx, [eax*4 + 0x603084]
mov dword [ebp - 0x18], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x602fc4]
mov dword [ebp - 0xc], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x603024]
mov dword [ebp - 0x10], ecx
mov eax, dword [ebx]
lea edx, [eax*4 + 0x602f64]
mov dword [ebp - 0x14], edx
jmp 0x40b553
mov dword [esi], 0xfa
xor ecx, ecx
mov dword [esi + 0x14], 0xfffffce0
mov dword [esi + 0x30], ecx
mov dword [esi + 4], 0x640
mov eax, dword [0x5fbb08]
mov edx, dword [eax*4 + 0x602f64]
sub edx, dword [0x593370]
mov dword [esi + 0x20], edx
mov ecx, dword [0x5fbb08]
mov eax, dword [ecx*4 + 0x602fc4]
sub eax, dword [0x593374]
mov dword [esi + 0x24], eax
mov edx, dword [ebx]
cmp edx, dword [0x5fbb08]
je 0x40b54d
mov ecx, dword [0x5fbb08]
cmp dword [ecx*4 + 0x603444], 0x64
jl 0x40b54d
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov edx, dword [eax]
mov eax, dword [esi]
add edx, dword [ecx]
add eax, eax
add eax, dword [esi + 0x20]
sub edx, dword [0x593370]
cmp edx, eax
jle 0x40b54d
mov edx, dword [0x5fbb08]
mov eax, dword [esi]
add eax, eax
mov ecx, dword [edx*4 + 0x603024]
add ecx, dword [esi + 0x20]
mov edx, dword [ebp - 0x14]
sub ecx, eax
mov eax, dword [edx]
sub eax, dword [0x593370]
cmp ecx, eax
jle 0x40b54d
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
mov ecx, dword [edx]
mov edx, dword [esi + 0x24]
add ecx, dword [eax]
add edx, dword [esi + 0x14]
sub ecx, dword [0x593374]
cmp ecx, edx
jle 0x40b54d
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x18]
mov eax, dword [ecx]
mov ecx, dword [esi + 4]
add eax, dword [edx]
sub eax, dword [0x593374]
lea ecx, [ecx + ecx*2]
add ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x30]
add ecx, 0x5dc
cmp eax, ecx
jge 0x40b54d
mov eax, dword [0x5fbb08]
mov dword [eax*4 + 0x603504], 1
mov edx, dword [ebp - 0x14]
mov eax, dword [0x5fbb08]
mov ecx, dword [edx]
add ecx, 0x12c
mov dword [eax*4 + 0x602f64], ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [0x5fbb08]
mov ecx, dword [edx]
add ecx, 0xfffff448
mov dword [eax*4 + 0x602fc4], ecx
mov edx, dword [0x5fbb08]
mov dword [edx*4 + 0x603264], 0x78
mov ecx, dword [ebp - 0x1c]
mov dword [ecx], 0xc8
mov eax, dword [ebp - 0x20]
mov dword [eax], 1
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x18
jl 0x40b3fa
jmp case.default.0x40ad0d
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603384], ecx
xor eax, eax
mov dword [esi + 0x28], eax
mov edx, 0x190
mov dword [esi + 0x2c], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0
jne 0x40b58f
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x28], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 1
jne 0x40b5a3
mov ecx, dword [esi + 0x2c]
neg ecx
mov dword [esi + 0x28], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 2
jne 0x40b5bb
mov edx, dword [ebx]
mov ecx, dword [esi + 0x2c]
sub dword [edx*4 + 0x602fc4], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 3
jne case.default.0x40ad0d
mov edx, dword [ebx]
mov ecx, dword [esi + 0x2c]
add dword [edx*4 + 0x602fc4], ecx
jmp case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
mov ecx, 0x14
mov dword [esi + 0x58], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0
jne 0x40b613
mov edx, dword [ebx]
mov ecx, dword [esi + 0x58]
add dword [edx*4 + 0x603204], ecx
mov eax, dword [ebx]
mov edx, dword [esi + 0x58]
add dword [eax*4 + 0x603144], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603b24], 1
jne 0x40b637
mov eax, dword [ebx]
mov edx, dword [esi + 0x58]
sub dword [eax*4 + 0x603204], edx
mov ecx, dword [ebx]
mov eax, dword [esi + 0x58]
sub dword [ecx*4 + 0x603144], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603144], 0x12c
jle 0x40b653
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603144], 0x12c
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603144], 0xfffffed4
jge 0x40b66f
mov edx, dword [ebx]
mov dword [edx*4 + 0x603144], 0xfffffed4
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603204], 0x4b0
jl 0x40b68b
mov eax, dword [ebx]
mov dword [eax*4 + 0x603b24], 1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603204], 0
jge 0x40b6a2
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603b24], eax
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x603144]
add dword [eax*4 + 0x602fc4], ecx
jmp case.default.0x40ad0d
mov edx, dword [ebx]
mov dword [edx*4 + 0x603384], 2
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603384], 5
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x603144]
add dword [ecx*4 + 0x602fc4], edx
mov eax, dword [ebx]
add dword [eax*4 + 0x603144], 0x64
mov edx, dword [ebx]
mov eax, dword [0x593388]
add eax, 0x3e8
mov ecx, dword [edx*4 + 0x602fc4]
cmp ecx, eax
jl 0x40b718
mov edx, dword [ebx]
mov dword [edx*4 + 0x603144], 0x384
mov ecx, dword [ebx]
mov edx, dword [0x593388]
add edx, 0x2ee0
mov eax, dword [ecx*4 + 0x602fc4]
cmp eax, edx
jl case.default.0x40ad0d
mov ecx, dword [ebx]
mov eax, dword [0x593388]
mov dword [ecx*4 + 0x602fc4], eax
mov edx, dword [ebx]
mov dword [edx*4 + 0x603144], 0xfffff5d8
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603384], eax
xor edx, edx
mov dword [esi + 0x28], edx
mov ecx, 0x190
mov dword [esi + 0x2c], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 0
jne 0x40b77f
mov edx, dword [esi + 0x2c]
mov dword [esi + 0x28], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne case.default.0x40ad0d
mov eax, dword [esi + 0x2c]
neg eax
mov dword [esi + 0x28], eax
jmp case.default.0x40ad0d
mov edx, dword [ebx]
inc dword [edx*4 + 0x603b24]
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0
jne 0x40b991
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603b24], 0x32
jne 0x40b7f4
cmp dword [0x5fbf1c], 0x1770
jl 0x40b7f4
mov edx, dword [ebx]
mov dword [edx*4 + 0x6030e4], 0x12c
mov ecx, dword [ebx]
sub dword [ecx*4 + 0x603144], 0x640
mov eax, dword [ebx]
sub dword [eax*4 + 0x602fc4], 0x3e8
xor edx, edx
mov dword [0x5fbb08], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x603c44]
mov dword [ebp - 0x28], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x603be4]
mov dword [ebp - 0x24], ecx
mov eax, dword [ebx]
lea edx, [eax*4 + 0x603144]
mov dword [ebp - 0x14], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x6034a4]
mov dword [ebp - 0x10], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x603084]
mov dword [ebp - 0xc], ecx
mov eax, dword [ebx]
lea edx, [eax*4 + 0x602fc4]
mov dword [ebp - 0x18], edx
mov ecx, dword [ebx]
lea eax, [ecx*4 + 0x603024]
mov dword [ebp - 0x1c], eax
mov edx, dword [ebx]
lea ecx, [edx*4 + 0x602f64]
mov dword [ebp - 0x20], ecx
jmp 0x40b984
mov dword [esi], 0xfa
xor eax, eax
mov dword [esi + 0x14], 0xfffffce0
mov dword [esi + 0x30], eax
mov dword [esi + 4], 0x640
mov edx, dword [0x5fbb08]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
mov dword [esi + 0x20], ecx
mov eax, dword [0x5fbb08]
mov edx, dword [eax*4 + 0x602fc4]
sub edx, dword [0x593374]
mov dword [esi + 0x24], edx
mov ecx, dword [ebx]
cmp ecx, dword [0x5fbb08]
je 0x40b97e
mov eax, dword [0x5fbb08]
cmp dword [eax*4 + 0x603444], 0x66
jne 0x40b97e
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edx]
mov edx, dword [esi]
add ecx, dword [eax]
add edx, edx
add edx, dword [esi + 0x20]
sub ecx, dword [0x593370]
cmp ecx, edx
jle 0x40b97e
mov ecx, dword [0x5fbb08]
mov edx, dword [esi]
add edx, edx
mov eax, dword [ecx*4 + 0x603024]
add eax, dword [esi + 0x20]
mov ecx, dword [ebp - 0x20]
sub eax, edx
mov edx, dword [ecx]
sub edx, dword [0x593370]
cmp eax, edx
jle 0x40b97e
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
mov eax, dword [ebp - 0xc]
add ecx, dword [eax]
sub ecx, dword [0x593374]
mov edx, dword [esi + 0x24]
add edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x40b97e
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov ecx, dword [esi + 4]
add eax, dword [edx]
sub eax, dword [0x593374]
lea ecx, [ecx + ecx*2]
add ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x30]
add ecx, 0x5dc
cmp eax, ecx
jge 0x40b97e
mov eax, dword [0x5fbb08]
mov dword [eax*4 + 0x602f64], 0xfff3cb00
mov edx, dword [ebp - 0x10]
mov dword [edx], 1
mov ecx, dword [ebp - 0x14]
mov dword [ecx], 0xfffff9c0
mov eax, dword [ebp - 0x24]
mov dword [eax], 0x1e
mov edx, dword [ebp - 0x28]
mov dword [edx], 0x19
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x18
jl 0x40b861
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x603144]
add dword [edx*4 + 0x602fc4], eax
mov ecx, dword [ebx]
add dword [ecx*4 + 0x603144], 0x78
jmp case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
mov dword [esi + 0x28], 0x640
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne 0x40b9ff
mov dword [esi + 0x28], 0x4b0
mov eax, dword [ebx]
sub dword [eax*4 + 0x602fc4], 0xc8
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 2
jne 0x40ba1f
mov dword [esi + 0x28], 0x4b0
mov ecx, dword [ebx]
add dword [ecx*4 + 0x602fc4], 0xc8
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 3
jne 0x40ba3f
mov dword [esi + 0x28], 0x384
mov edx, dword [ebx]
sub dword [edx*4 + 0x602fc4], 0x258
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 4
jne case.default.0x40ad0d
mov dword [esi + 0x28], 0x384
mov eax, dword [ebx]
add dword [eax*4 + 0x602fc4], 0x258
jmp case.default.0x40ad0d
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603384], ecx
jmp case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603384], eax
jmp case.default.0x40ad0d
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603384], ecx
jmp case.default.0x40ad0d
mov eax, dword [ebx]
mov dword [eax*4 + 0x603384], 2
jmp case.default.0x40ad0d
mov dword [esi + 0x5c], 0x190
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0
jne 0x40bae7
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x6034a4], 1
mov eax, dword [ebx]
mov dword [eax*4 + 0x603504], 1
cmp dword [0x5fbf1c], 0x7530
jl 0x40bb4b
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602f64]
add ecx, 0xffffc568
sub ecx, dword [0x593370]
cmp ecx, dword [0x5fbf18]
jg 0x40bb4b
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
sub edx, dword [0x593370]
cmp edx, dword [0x5fbf18]
jl 0x40bb4b
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne 0x40bb4b
mov eax, dword [ebx]
mov dword [eax*4 + 0x6034a4], 5
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603504], ecx
cmp dword [0x5fbf1c], 0x5dc0
jl 0x40bbb1
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
add edx, 0x5dc0
sub edx, dword [0x593370]
cmp edx, dword [0x5fbf18]
jl 0x40bbb1
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
sub eax, dword [0x593370]
cmp eax, dword [0x5fbf18]
jg 0x40bbb1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 1
jne 0x40bbb1
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x6034a4], 5
mov eax, dword [ebx]
mov dword [eax*4 + 0x603504], 1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 5
jne case.default.0x40ad0d
mov ecx, dword [esi + 0x5c]
mov dword [esi + 0x28], ecx
jmp case.default.0x40ad0d
mov eax, dword [ebx]
mov dword [eax*4 + 0x603384], 4
mov dword [esi + 0x5c], 0x3e8
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
sub ecx, dword [0x5fbf20]
sub ecx, dword [esi + 0x68]
cmp ecx, dword [0x5fbf18]
jg 0x40bc30
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
sub edx, dword [0x593370]
add edx, dword [ecx*4 + 0x603024]
add edx, dword [esi + 0x68]
cmp edx, dword [0x5fbf18]
jl 0x40bc30
mov eax, dword [ebx]
mov dword [eax*4 + 0x603b24], 1
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603b24], 1
jne case.default.0x40ad0d
mov ecx, dword [ebx]
add dword [ecx*4 + 0x602fc4], 0x4b0
jmp case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
mov ecx, 0xa
cdq
idiv ecx
dec edx
je 0x40bc7d
mov eax, dword [ebx]
add dword [eax*4 + 0x603b24], 6
jmp 0x40bc87
mov edx, dword [ebx]
sub dword [edx*4 + 0x603b24], 6
mov ecx, 2
mov dword [esi + 0x64], ecx
mov eax, dword [esi + 0x64]
mov edx, dword [ebx]
shl eax, 3
lea eax, [eax + eax*4]
lea eax, [eax + eax*8]
cmp eax, dword [edx*4 + 0x603b24]
jge 0x40bcbb
mov ecx, dword [esi + 0x64]
mov eax, dword [ebx]
shl ecx, 3
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*8]
sub dword [eax*4 + 0x603b24], ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603b24], 0
jge 0x40bcdc
mov ecx, dword [esi + 0x64]
mov eax, dword [ebx]
shl ecx, 3
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*8]
add dword [eax*4 + 0x603b24], ecx
xor edx, edx
mov dword [0x5fbb08], edx
jmp 0x40be5d
mov ecx, 0x12
mov dword [esi + 0x68], ecx
mov eax, dword [ebx]
fild dword [eax*4 + 0x603b24]
fmul qword [0x593360]
fld xword [0x40d598]
fmulp st(1)
fmul dword [0x40d5a4]
add esp, 0xfffffff8
fstp qword [esp]
call fcn.0041e4c0
add esp, 8
mov edx, dword [0x5fbb08]
imul edx, dword [esi + 0x68]
mov dword [ebp - 0x2c], edx
fild dword [ebp - 0x2c]
fmulp st(1)
fstp qword [0x60d5d0]
mov ecx, dword [ebx]
fild dword [ecx*4 + 0x603b24]
fmul qword [0x593360]
fld xword [0x40d598]
fmulp st(1)
fmul dword [0x40d5a4]
add esp, 0xfffffff8
fstp qword [esp]
call fcn.0041ff74
add esp, 8
mov eax, dword [0x5fbb08]
imul dword [esi + 0x68]
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x2c]
fmulp st(1)
fstp qword [0x60d5d8]
mov dword [esi + 0x10], 0x708
mov dword [esi + 0x14], 0x320
fld qword [0x60d5d0]
call fcn.0041e7d8
mov edx, eax
mov ecx, dword [ebx]
shl edx, 2
mov eax, dword [ecx*4 + 0x602f64]
sub eax, dword [0x593370]
mov ecx, dword [esi + 0x10]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, eax
sar ecx, 1
jns 0x40bdb4
adc ecx, 0
sub edx, ecx
mov dword [esi + 0x20], edx
fld qword [0x60d5d8]
call fcn.0041e7d8
mov edx, eax
mov ecx, dword [ebx]
shl edx, 2
mov eax, dword [ecx*4 + 0x602fc4]
sub eax, dword [0x593374]
mov ecx, dword [esi + 0x10]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, eax
sar ecx, 1
jns 0x40bdea
adc ecx, 0
sub edx, ecx
mov dword [esi + 0x24], edx
mov edx, dword [0x5fbf18]
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x14]
add edx, dword [0x5fbf20]
cmp edx, eax
jle 0x40be57
mov edx, dword [esi + 0x20]
add edx, dword [esi + 0x10]
sub edx, dword [esi + 0x14]
cmp edx, dword [0x5fbf18]
jle 0x40be57
mov ecx, dword [0x5fbf1c]
mov eax, dword [esi + 0x24]
add eax, dword [esi + 0x14]
add ecx, dword [0x5fbf24]
cmp ecx, eax
jle 0x40be57
mov edx, dword [esi + 0x24]
add edx, dword [esi + 0x10]
sub edx, dword [esi + 0x14]
cmp edx, dword [0x5fbf1c]
jle 0x40be57
dec dword [0x5fbf28]
mov dword [0x5fbfb0], 0x33
mov dword [0x5fbfac], 0x1e
inc dword [0x5fbb08]
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x6034a4]
mov ecx, 0x64
cdq
idiv ecx
cmp edx, dword [0x5fbb08]
jge 0x40bce9
jmp case.default.0x40ad0d
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x603384], edx
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
mov ecx, 0xa
cdq
idiv ecx
dec edx
je 0x40beaa
mov eax, dword [ebx]
add dword [eax*4 + 0x603b24], 6
jmp 0x40beb4
mov edx, dword [ebx]
sub dword [edx*4 + 0x603b24], 6
mov ecx, 2
mov dword [esi + 0x64], ecx
mov eax, dword [esi + 0x64]
mov edx, dword [ebx]
shl eax, 3
lea eax, [eax + eax*4]
lea eax, [eax + eax*8]
cmp eax, dword [edx*4 + 0x603b24]
jge 0x40bee8
mov ecx, dword [esi + 0x64]
mov eax, dword [ebx]
shl ecx, 3
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*8]
sub dword [eax*4 + 0x603b24], ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603b24], 0
jge 0x40bf09
mov ecx, dword [esi + 0x64]
mov eax, dword [ebx]
shl ecx, 3
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*8]
add dword [eax*4 + 0x603b24], ecx
xor edx, edx
mov dword [0x5fbb08], edx
jmp 0x40c08c
mov ecx, 0x12
mov dword [esi + 0x68], ecx
mov eax, dword [ebx]
fild dword [eax*4 + 0x603b24]
fmul qword [0x593360]
fld xword [0x40d598]
fmulp st(1)
fmul dword [0x40d5a4]
add esp, 0xfffffff8
fstp qword [esp]
call fcn.0041e4c0
add esp, 8
mov edx, dword [0x5fbb08]
neg edx
imul edx, dword [esi + 0x68]
mov dword [ebp - 0x2c], edx
fild dword [ebp - 0x2c]
fmulp st(1)
fstp qword [0x60d5d0]
mov ecx, dword [ebx]
fild dword [ecx*4 + 0x603b24]
fmul qword [0x593360]
fld xword [0x40d598]
fmulp st(1)
fmul dword [0x40d5a4]
add esp, 0xfffffff8
fstp qword [esp]
call fcn.0041ff74
add esp, 8
mov eax, dword [0x5fbb08]
imul dword [esi + 0x68]
mov dword [ebp - 0x2c], eax
fild dword [ebp - 0x2c]
fmulp st(1)
fstp qword [0x60d5d8]
mov dword [esi + 0x10], 0x708
mov dword [esi + 0x14], 0x320
fld qword [0x60d5d0]
call fcn.0041e7d8
mov edx, eax
mov ecx, dword [ebx]
shl edx, 2
mov eax, dword [ecx*4 + 0x602f64]
sub eax, dword [0x593370]
mov ecx, dword [esi + 0x10]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, eax
sar ecx, 1
jns 0x40bfe3
adc ecx, 0
sub edx, ecx
mov dword [esi + 0x20], edx
fld qword [0x60d5d8]
call fcn.0041e7d8
mov edx, eax
mov ecx, dword [ebx]
shl edx, 2
mov eax, dword [ecx*4 + 0x602fc4]
sub eax, dword [0x593374]
mov ecx, dword [esi + 0x10]
lea edx, [edx + edx*4]
lea edx, [edx + edx*4]
add edx, eax
sar ecx, 1
jns 0x40c019
adc ecx, 0
sub edx, ecx
mov dword [esi + 0x24], edx
mov edx, dword [0x5fbf18]
mov eax, dword [esi + 0x20]
add eax, dword [esi + 0x14]
add edx, dword [0x5fbf20]
cmp edx, eax
jle 0x40c086
mov edx, dword [esi + 0x20]
add edx, dword [esi + 0x10]
sub edx, dword [esi + 0x14]
cmp edx, dword [0x5fbf18]
jle 0x40c086
mov ecx, dword [0x5fbf1c]
mov eax, dword [esi + 0x24]
add eax, dword [esi + 0x14]
add ecx, dword [0x5fbf24]
cmp ecx, eax
jle 0x40c086
mov edx, dword [esi + 0x24]
add edx, dword [esi + 0x10]
sub edx, dword [esi + 0x14]
cmp edx, dword [0x5fbf1c]
jle 0x40c086
dec dword [0x5fbf28]
mov dword [0x5fbfb0], 0x33
mov dword [0x5fbfac], 0x1e
inc dword [0x5fbb08]
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x6034a4]
mov ecx, 0x64
cdq
idiv ecx
cmp edx, dword [0x5fbb08]
jge 0x40bf16
jmp case.default.0x40ad0d
mov dword [esi + 0x28], 0xa0
jmp case.default.0x40ad0d
mov eax, dword [ebx]
mov dword [eax*4 + 0x603384], 1
mov dword [esi + 0x28], 0x64
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 2
jne case.default.0x40ad0d
xor ecx, ecx
mov dword [0x5fbb08], ecx
jmp 0x40c284
mov dword [esi], 0xfa
xor eax, eax
mov dword [esi + 0x14], 0xfffffce0
mov dword [esi + 0x30], eax
mov dword [esi + 4], 0x640
mov edx, dword [0x5fbb08]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
mov dword [esi + 0x20], ecx
mov eax, dword [0x5fbb08]
mov edx, dword [eax*4 + 0x602fc4]
sub edx, dword [0x593374]
mov dword [esi + 0x24], edx
mov ecx, dword [0x5fbb08]
cmp ecx, dword [ebx]
je 0x40c27e
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
mov eax, dword [esi]
add edx, dword [ecx*4 + 0x603024]
add eax, eax
add eax, dword [esi + 0x20]
sub edx, dword [0x593370]
cmp edx, eax
jle 0x40c27e
mov edx, dword [0x5fbb08]
mov eax, dword [esi]
add eax, eax
mov ecx, dword [edx*4 + 0x603024]
add ecx, dword [esi + 0x20]
mov edx, dword [ebx]
sub ecx, eax
mov eax, dword [edx*4 + 0x602f64]
sub eax, dword [0x593370]
cmp ecx, eax
jle 0x40c27e
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x602fc4]
mov edx, dword [esi + 0x24]
add ecx, dword [eax*4 + 0x603084]
add edx, dword [esi + 0x14]
sub ecx, dword [0x593374]
cmp ecx, edx
jle 0x40c27e
mov ecx, dword [ebx]
mov edx, dword [ebx]
mov eax, dword [ecx*4 + 0x602fc4]
mov ecx, dword [esi + 4]
add eax, dword [edx*4 + 0x603084]
sub eax, dword [0x593374]
lea ecx, [ecx + ecx*2]
add ecx, dword [esi + 0x24]
add ecx, dword [esi + 0x30]
cmp eax, ecx
jge 0x40c27e
mov eax, dword [0x5fbb08]
cmp dword [eax*4 + 0x603444], 0
je 0x40c202
mov edx, dword [0x5fbb08]
cmp dword [edx*4 + 0x603444], 4
jne 0x40c27e
mov ecx, dword [0x5fbb08]
mov dword [ecx*4 + 0x603444], 0x5a
mov eax, dword [0x5fbb08]
mov dword [eax*4 + 0x603024], 0x1900
mov edx, dword [0x5fbb08]
mov dword [edx*4 + 0x603084], 0x189c
mov ecx, dword [0x5fbb08]
xor eax, eax
mov dword [ecx*4 + 0x6034a4], eax
mov edx, dword [0x5fbb08]
sub dword [edx*4 + 0x602f64], 0x41a
mov ecx, dword [0x5fbb08]
sub dword [ecx*4 + 0x602fc4], 0x41a
mov eax, dword [0x5fb8cc]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
mov dword [edx*4 + 0x602f64], 0xfb3b4c00
inc dword [0x5fbb08]
cmp dword [0x5fbb08], 0x18
jl 0x40c0eb
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603384], 1
mov dword [esi + 0x28], 0x64
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 1
jne case.default.0x40ad0d
mov dword [esi + 0x28], 0xc8
jmp case.default.0x40ad0d
mov edx, dword [ebx]
mov dword [edx*4 + 0x603384], 1
mov dword [esi + 0x28], 0xc8
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6033e4], 1
jne case.default.0x40ad0d
mov eax, dword [ebx]
sub dword [eax*4 + 0x602fc4], 0x4b0
mov edx, dword [ebx]
mov dword [edx*4 + 0x603144], 0xfffffa88
jmp case.default.0x40ad0d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603384], 1
mov dword [esi + 0x28], 0x64
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603264], 1
jl 0x40c31d
xor edx, edx
mov dword [esi + 0x28], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603504], 0
jne 0x40c335
mov eax, dword [ebx]
mov edx, dword [esi + 0x28]
sub dword [eax*4 + 0x6032c4], edx
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603504], 1
jne 0x40c34d
mov eax, dword [ebx]
mov edx, dword [esi + 0x28]
add dword [eax*4 + 0x6032c4], edx
mov dword [esi], 0x352
mov dword [esi + 4], 0x4b0
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603144]
cmp eax, dword [esi + 4]
jle 0x40c380
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603384], 5
je 0x40c380
mov ecx, dword [ebx]
mov eax, dword [esi + 4]
mov dword [ecx*4 + 0x603144], eax
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x6032c4]
add dword [eax*4 + 0x602f64], ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603384], 1
jge 0x40c3ae
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603384], 0xffffffff
jne 0x40c476
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603264], 0
jg 0x40c476
mov edx, dword [ebx]
mov eax, dword [ebx]
mov ecx, dword [edx*4 + 0x6030e4]
add dword [eax*4 + 0x602f64], ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603384], 1
jl 0x40c404
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603384], 3
jg 0x40c404
mov eax, dword [ebx]
mov ecx, dword [ebx]
mov edx, dword [eax*4 + 0x603144]
add dword [ecx*4 + 0x602fc4], edx
mov eax, dword [ebx]
add dword [eax*4 + 0x603144], 0x78
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6033e4], 1
jne 0x40c45a
mov ecx, 0x64
mov dword [esi], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6030e4], 0xc8
jl 0x40c433
mov edx, dword [ebx]
mov ecx, dword [esi]
sub dword [edx*4 + 0x6030e4], ecx
jmp 0x40c45a
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6030e4], 0xffffff38
jg 0x40c44f
mov edx, dword [ebx]
mov ecx, dword [esi]
add dword [edx*4 + 0x6030e4], ecx
jmp 0x40c45a
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x6030e4], edx
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x6033e4], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603384], 2
je 0x40c476
call fcn.0040d5a8
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603264], 0
jle 0x40c4ec
mov eax, dword [ebx]
dec dword [eax*4 + 0x603264]
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603264], 0x64
jge 0x40c4a4
mov ecx, dword [ebx]
sub dword [ecx*4 + 0x602fc4], 0xb4
mov eax, dword [ebx]
mov edx, dword [ebx]
cmp dword [eax*4 + 0x603264], 0x64
cmp dword [edx*4 + 0x603264], 0x64
jne 0x40c4ec
mov ecx, dword [ebx]
sub dword [ecx*4 + 0x602fc4], 0x320
mov eax, dword [ebx]
mov dword [eax*4 + 0x603144], 0xfffffb50
mov edx, dword [ebx]
mov dword [edx*4 + 0x6030e4], 0x2bc
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603264], eax
mov dword [esi], 0xfa
mov dword [esi + 4], 0x640
mov dword [esi + 8], 0x3e8
mov dword [esi + 0x10], 0x1f4
mov dword [esi + 0x14], 0xfffffce0
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602f64]
sub ecx, dword [0x593370]
mov dword [esi + 0x20], ecx
xor ecx, ecx
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602fc4]
sub edx, dword [0x593374]
mov dword [esi + 0x24], edx
mov dword [esi + 0x30], ecx
cmp dword [0x5fbf30], 0x64
jl 0x40c548
mov eax, dword [0x5fbf30]
mov dword [esi + 0x30], eax
xor edx, edx
mov dword [esi + 0x64], edx
mov eax, dword [esi]
mov ecx, dword [0x5fbf18]
add eax, eax
add eax, dword [esi + 0x20]
add ecx, dword [0x5fbf20]
cmp ecx, eax
jle 0x40c8c0
mov edx, dword [ebx]
mov eax, dword [esi]
add eax, eax
mov ecx, dword [edx*4 + 0x603024]
add ecx, dword [esi + 0x20]
sub ecx, eax
cmp ecx, dword [0x5fbf18]
jle 0x40c8c0
mov edx, dword [0x5fbf1c]
mov ecx, dword [esi + 0x24]
sub ecx, dword [esi + 0x14]
add edx, dword [0x5fbf24]
cmp edx, ecx
jle 0x40c8c0
mov edx, dword [esi + 0x24]
mov eax, dword [0x5fbf1c]
add edx, dword [esi + 4]
add eax, dword [0x5fbf24]
add edx, dword [esi + 0x30]
cmp eax, edx
jge 0x40c8c0
cmp dword [0x5fbf80], 0
jle 0x40c5d2
cmp dword [0x5fbf30], 0x64
jl 0x40c8c0
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603264], 0
jg 0x40c8c0
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 4
je 0x40c8c0
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 9
je 0x40c8c0
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0xa
je 0x40c8c0
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x4e
jle 0x40c62e
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x55
jne 0x40c8c0
cmp dword [0x5fbf60], 1
je 0x40c8c0
cmp dword [0x5fbf50], 0xc8
je 0x40c8c0
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0
jne 0x40c6b8
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 0
jne 0x40c670
mov edx, dword [ebx]
mov dword [edx*4 + 0x602f64], 0xfff24460
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne 0x40c6b8
mov eax, dword [0x5fb8bc]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [esi + 0x24]
mov ecx, dword [ebx]
add edx, 0xfffffc7c
sub edx, dword [ecx*4 + 0x603084]
xor eax, eax
mov dword [0x5fbf1c], edx
mov dword [0x5fbf30], 0xfffff7cc
mov dword [esi + 0x64], 1
mov dword [0x5fbf98], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 1
jne 0x40c6ee
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603444], 2
mov eax, dword [ebx]
mov dword [eax*4 + 0x603084], 0xbb8
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x6034a4], ecx
jmp 0x40c7a8
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 2
jne 0x40c7a8
cmp dword [0x5fbf30], 0
jl 0x40c7a8
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 1
je 0x40c723
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 2
jne 0x40c730
mov eax, dword [ebx]
xor edx, edx
mov dword [eax*4 + 0x6034a4], edx
jmp 0x40c7a8
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0
jne 0x40c7a8
mov edx, dword [esi]
mov eax, dword [0x5fbf18]
add edx, edx
add edx, dword [esi + 0x20]
add eax, dword [0x5fbf20]
cmp eax, edx
jle 0x40c790
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603024]
sar eax, 1
jns 0x40c762
adc eax, 0
add eax, dword [esi + 0x20]
mov edx, dword [esi]
shl edx, 2
sub eax, edx
cmp eax, dword [0x5fbf18]
jle 0x40c790
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x6034a4], 1
mov eax, dword [ebx]
mov dword [eax*4 + 0x603504], 1
jmp 0x40c7a8
mov edx, dword [ebx]
mov dword [edx*4 + 0x6034a4], 1
mov ecx, dword [ebx]
xor eax, eax
mov dword [ecx*4 + 0x603504], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 3
jne 0x40c7bb
mov dword [esi + 0x64], 1
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 6
jne 0x40c7e4
mov eax, dword [ebx]
xor edx, edx
xor ecx, ecx
mov dword [eax*4 + 0x603b24], 0xa
mov dword [0x5fbf30], edx
mov dword [0x5fbf98], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 7
jne 0x40c7fd
mov edx, dword [ebx]
mov dword [edx*4 + 0x602f64], 0xfff24460
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 8
jne 0x40c821
mov eax, dword [ebx]
mov dword [eax*4 + 0x603444], 0x97
mov edx, dword [ebx]
xor ecx, ecx
mov dword [edx*4 + 0x603144], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x55
je 0x40c862
cmp dword [esi + 0x64], 0
jne 0x40c862
mov edx, dword [0x5fb8bc]
push edx
call fcn.0040e3f4
mov eax, dword [ebx]
pop ecx
mov ecx, dword [esi + 0x24]
add ecx, 0xfffffc18
sub ecx, dword [eax*4 + 0x603084]
mov dword [0x5fbf1c], ecx
mov dword [0x5fbf30], 0xfffffc18
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x55
jne 0x40c8a5
cmp dword [esi + 0x64], 0
jne 0x40c8a5
mov ecx, dword [0x5fb8bc]
push ecx
call fcn.0040e3f4
pop ecx
mov eax, dword [esi + 0x24]
add eax, 0xfffff060
mov dword [0x5fbf1c], eax
mov dword [0x5fbf30], 0xfffffc18
mov edx, dword [ebx]
mov dword [edx*4 + 0x6034a4], 5
cmp dword [0x5fbf98], 1
jne 0x40c8c0
mov dword [0x5fbf30], 0xfffff9c0
xor ecx, ecx
mov dword [0x5fbf98], ecx
mov dword [esi + 0x3c], 0xfffffe0c
xor eax, eax
mov dword [esi + 0x40], eax
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 4
je 0x40c8f0
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 9
je 0x40c8f0
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0xa
jne 0x40c8f7
mov dword [esi + 0x40], 0xfffff448
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x52
je 0x40c91b
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x53
je 0x40c91b
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x54
jne 0x40c922
mov dword [esi + 0x40], 0xfffff380
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x55
jne 0x40c941
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603084]
neg eax
add eax, 0x1770
mov dword [esi + 0x40], eax
mov edx, dword [0x5fbf18]
mov ecx, dword [esi + 0x20]
add ecx, dword [esi + 0x10]
add edx, dword [0x5fbf20]
cmp edx, ecx
jle 0x40d0ec
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x603024]
add edx, dword [esi + 0x20]
sub edx, dword [esi + 0x10]
cmp edx, dword [0x5fbf18]
jle 0x40d0ec
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x603084]
add eax, dword [esi + 0x24]
add eax, dword [esi + 0x3c]
cmp eax, dword [0x5fbf1c]
jle 0x40d0ec
mov ecx, dword [ebx]
mov edx, dword [0x5fbf1c]
add edx, dword [0x5fbf24]
mov eax, dword [ecx*4 + 0x603084]
add eax, dword [esi + 0x24]
sub eax, dword [esi]
add eax, dword [esi + 0x40]
cmp edx, eax
jle 0x40d0ec
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6035c4], 0
jg 0x40d0ec
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603264], 0
jg 0x40d0ec
cmp dword [0x5fbf84], 1
jne 0x40c9ec
mov eax, dword [ebx]
mov dword [eax*4 + 0x602f64], 0xff76abc0
cmp dword [0x5fbf80], 0
jg 0x40cdf9
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x63
jle 0x40ca18
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0xc8
jl 0x40cdf9
cmp dword [0x5fbf84], 1
je 0x40cdf9
cmp dword [0x5fbf50], 0xc8
je 0x40cdf9
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 2
jne 0x40ca4d
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0
je 0x40ca68
cmp dword [0x5fbf28], 1
jl 0x40ca68
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 6
je 0x40ca68
dec dword [0x5fbf28]
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 6
jne 0x40ca81
mov edx, dword [ebx]
mov dword [edx*4 + 0x603b24], 0xa
cmp dword [0x5fbf28], 0
jne 0x40cd0d
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0
je 0x40caa6
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 7
jne 0x40cad6
mov edx, dword [ebx]
mov dword [edx*4 + 0x603be4], 0x3c
push 7
call fcn.00401dd0
pop ecx
mov edx, dword [ebx]
mov ecx, dword [0x593340]
add ecx, ecx
lea ecx, [ecx + ecx*4]
add eax, ecx
add eax, 0x3df
mov dword [edx*4 + 0x603c44], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 1
jne 0x40cb03
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603be4], 0x3c
push 2
call fcn.00401dd0
mov edx, dword [ebx]
pop ecx
add eax, 0xf
mov dword [edx*4 + 0x603c44], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 2
jne 0x40cb3e
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jl 0x40cb3e
cmp dword [0x5fbf80], 0
jg 0x40cb3e
mov eax, dword [ebx]
mov dword [eax*4 + 0x603be4], 0x3c
mov edx, dword [ebx]
mov dword [edx*4 + 0x603c44], 0x12
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 3
jne 0x40cb64
mov eax, dword [ebx]
mov dword [eax*4 + 0x603be4], 0x3c
mov edx, dword [ebx]
mov dword [edx*4 + 0x603c44], 0x14
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 4
jne 0x40cba0
mov eax, dword [ebx]
mov dword [eax*4 + 0x603be4], 0x3c
push 7
call fcn.00401dd0
mov edx, dword [0x593340]
pop ecx
add edx, edx
mov ecx, dword [ebx]
lea edx, [edx + edx*4]
add eax, edx
add eax, 0x3df
mov dword [ecx*4 + 0x603c44], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 5
jne 0x40cbc6
mov edx, dword [ebx]
mov dword [edx*4 + 0x603be4], 0x3c
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603c44], 0x15
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 9
je 0x40cbde
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0xa
jne 0x40cbf2
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0x36
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x1f
jne 0x40cc18
mov eax, dword [ebx]
mov dword [eax*4 + 0x603be4], 0x1e
mov edx, dword [ebx]
mov dword [edx*4 + 0x603c44], 0x18
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x50
je 0x40cc30
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x51
jne 0x40cc4a
mov edx, dword [ebx]
mov dword [edx*4 + 0x603be4], 0x3c
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603c44], 0x1e
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x52
jne 0x40cca7
mov edx, dword [ebx]
mov dword [edx*4 + 0x603be4], 0x14
push 1
call fcn.00401dd0
pop ecx
add eax, 0x1f
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603c44], eax
mov eax, 0x384
mov dword [esi + 0x60], eax
mov edx, dword [ebx]
mov dword [edx*4 + 0x603444], 0x53
mov eax, dword [ebx]
mov ecx, dword [esi + 0x60]
add ecx, 0x64
sub dword [eax*4 + 0x602f64], ecx
mov edx, dword [ebx]
mov ecx, dword [esi + 0x60]
sub dword [edx*4 + 0x602fc4], ecx
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x54
jne 0x40ccc7
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0x32
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x55
jne 0x40ccf4
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603be4], 0x3c
push 1
call fcn.00401dd0
mov edx, dword [ebx]
pop ecx
add eax, 0x55
mov dword [edx*4 + 0x603c44], eax
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x50
jne 0x40cd0d
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603444], 0x51
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 2
jne 0x40cdf9
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0
jne 0x40cdf3
mov eax, dword [esi]
mov ecx, dword [0x5fbf18]
add eax, eax
add eax, dword [esi + 0x20]
add ecx, dword [0x5fbf20]
cmp ecx, eax
jle 0x40cdac
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x603024]
sar ecx, 1
jns 0x40cd54
adc ecx, 0
add ecx, dword [esi + 0x20]
mov eax, dword [esi]
shl eax, 2
sub ecx, eax
cmp ecx, dword [0x5fbf18]
jle 0x40cdac
mov edx, dword [ebx]
mov dword [edx*4 + 0x6034a4], 1
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x603504], 1
mov eax, dword [0x5fbf18]
mov edx, dword [ebx]
add eax, dword [0x5fbf20]
add eax, dword [0x593370]
add eax, dword [0x5fbf2c]
mov dword [edx*4 + 0x602f64], eax
mov dword [0x5fbf80], 5
jmp 0x40cdf9
mov ecx, dword [ebx]
xor edx, edx
mov dword [ecx*4 + 0x6034a4], 1
mov eax, dword [ebx]
mov dword [eax*4 + 0x603504], edx
mov ecx, dword [ebx]
mov eax, dword [0x5fbf18]
mov edx, dword [ebx]
sub eax, dword [ecx*4 + 0x603024]
add eax, dword [0x593370]
sub eax, dword [0x5fbf2c]
mov dword [edx*4 + 0x602f64], eax
mov dword [0x5fbf80], 5
jmp 0x40cdf9
dec dword [0x5fbf28]
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x64
jl 0x40d0ec
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0xc7
jg 0x40d0ec
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x64
jne 0x40ce54
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 0
jne 0x40ce54
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 1
mov eax, dword [0x5fb8cc]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x64
jne 0x40ce8c
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 1
jne 0x40ce8c
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 2
mov eax, dword [0x5fb8cc]
push eax
call fcn.0040e3f4
pop ecx
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x64
jne 0x40ceec
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x6034a4], 2
jne 0x40ceec
mov dword [0x5fbf20], 0x1450
mov dword [0x5fbf24], 0x1c84
mov eax, dword [0x5fb8cc]
push eax
call fcn.0040e3f4
pop ecx
sub dword [0x5fbf18], 0x44c
sub dword [0x5fbf1c], 0xfa0
mov dword [0x5fbf50], 1
mov dword [0x5fbf28], 0x2faf080
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x65
jne 0x40cf12
dec dword [0x5fbf28]
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0xb
mov ecx, dword [ebx]
cmp dword [ecx*4 + 0x603444], 0x66
jne 0x40cf38
dec dword [0x5fbf28]
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 0xa
mov eax, dword [ebx]
cmp dword [eax*4 + 0x603444], 0x69
jne 0x40d0aa
mov edx, dword [ebx]
cmp dword [edx*4 + 0x6034a4], 0
jne 0x40cf6b
mov ecx, dword [0x5fb8b8]
push ecx
call fcn.0040e3f4
pop ecx
mov dword [0x5fbf00], 6
mov eax, dword [ebx]
cmp dword [eax*4 + 0x6034a4], 1
jne 0x40d0aa
mov dword [0x6005f0], 0x50
mov edx, dword [0x5fb8b8]
push edx
call fcn.0040e3f4
pop ecx
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffd120
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
add eax, 0xffff9e58
push eax
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xfffff448
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602f64]
add ecx, 0xffff8eb8
push ecx
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffe890
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
add edx, 0x32c8
push edx
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffdcd8
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
add eax, 0x36b0
push eax
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffd120
mov edx, dword [ebx]
mov ecx, dword [edx*4 + 0x602f64]
add ecx, 0x4a38
push ecx
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffe890
mov eax, dword [ebx]
mov edx, dword [eax*4 + 0x602f64]
add edx, 0x4e20
push edx
call fcn.00414564
add esp, 0x1c
push 0
push 0x6e
push 0
push 0
push 0
push 0xffffe4a8
mov ecx, dword [ebx]
mov eax, dword [ecx*4 + 0x602f64]
add eax, 0x61a8
push eax
call fcn.00414564
add esp, 0x1c
add dword [0x5fc9bc], 0x2328
mov edx, dword [ebx]
cmp dword [edx*4 + 0x603444], 0x6e
jne 0x40d0d0
dec dword [0x5fbf28]
mov dword [0x5fbfac], 0x1e
mov dword [0x5fbfb0], 3
mov ecx, dword [ebx]
mov dword [ecx*4 + 0x602f64], 0xfaa2b580
jmp 0x40d0ec
mov eax, dword [ebx]
mov dword [eax*4 + 0x602f64], 0xff76abc0
inc dword [ebx]
cmp dword [ebx], 0x18
jl 0x40abb4
cmp dword [0x593380], 1
je 0x40d16c
cmp dword [0x593380], 2
je 0x40d16c
mov edx, dword [0x59336c]
xor ecx, ecx
mov dword [esi + 8], edx
mov dword [esi + 0xc], ecx
mov eax, dword [esi + 8]
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
cmp edx, dword [0x5fbf18]
jge 0x40d16c
mov ecx, dword [0x604f50]
cmp ecx, dword [0x604f58]
jge 0x40d16c
mov eax, dword [0x5fbf18]
sub eax, dword [esi + 4]
mov dword [esi + 0x14], eax
mov edx, dword [esi + 4]
mov dword [0x5fbf18], edx
mov ecx, dword [esi + 0x14]
add dword [0x593370], ecx
mov eax, dword [esi + 0x14]
add dword [0x604f50], eax
cmp dword [esi + 4], 0x1388
jg 0x40d16c
mov dword [esi + 0xc], 1
cmp dword [0x593330], 2
jne 0x40d311
inc dword [0x593334]
mov dword [esi + 0x1c], 0x2e
push 2
call fcn.00592534
pop ecx
dec eax
jne 0x40d196
call fcn.0040e1b4
push 0x39
call fcn.00592534
pop ecx
dec eax
jne 0x40d1ba
xor edx, edx
mov dword [ebx], edx
jmp 0x40d1b3
mov ecx, dword [ebx]
sub dword [esi + ecx*4 + 0x30], 0x12c
inc dword [ebx]
mov eax, dword [ebx]
cmp eax, dword [esi + 0x1c]
jle 0x40d1a7
cmp dword [0x593334], 1
jg 0x40d2b6
mov dword [0x593334], 2
mov edx, dword [0x5fba50]
push edx
call fcn.00413894
pop ecx
push 1
push 3
mov ecx, dword [0x5fb8a8]
push ecx
call fcn.005929c8
add esp, 0xc
xor eax, eax
mov dword [esi + 0x28], eax
xor edx, edx
mov dword [ebx], edx
jmp 0x40d208
mov ecx, dword [ebx]
mov dword [esi + ecx*4 + 0x30], 0xef420
inc dword [ebx]
mov eax, dword [ebx]
cmp eax, dword [esi + 0x1c]
jle 0x40d1fc
mov dword [esi + 0x30], 0x1cc
mov dword [esi + 0x34], 0x21c
mov dword [esi + 0x38], 0x24e
mov dword [esi + 0x3c], 0x28a
mov dword [esi + 0x40], 0x2bc
mov dword [esi + 0x44], 0x2f8
mov dword [esi + 0x48], 0x32a
mov dword [esi + 0x4c], 0x366
mov dword [esi + 0x50], 0x398
mov dword [esi + 0x54], 0x3e8
mov dword [esi + 0x58], 0x41a
mov dword [esi + 0x5c], 0x44c
mov dword [esi + 0x60], 0x49c
mov dword [esi + 0x64], 0x4ce
mov dword [esi + 0x68], 0x550
mov dword [esi + 0x6c], 0x582
mov dword [esi + 0x70], 0x604
mov dword [esi + 0x74], 0x636
mov dword [esi + 0x78], 0x708
xor edx, edx
mov dword [ebx], edx
jmp 0x40d2af
mov ecx, dword [ebx]
mov eax, dword [esi + ecx*4 + 0x30]
shl eax, 2
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
mov dword [esi + ecx*4 + 0x30], eax
inc dword [ebx]
mov edx, dword [ebx]
cmp edx, dword [esi + 0x1c]
jle 0x40d29a
inc dword [esi + 0x28]
xor ecx, ecx
mov dword [ebx], ecx
jmp 0x40d2c8
mov eax, dword [ebx]
sub dword [esi + eax*4 + 0x30], 0x64
inc dword [ebx]
mov edx, dword [ebx]
cmp edx, dword [esi + 0x1c]
jle 0x40d2bf
cmp dword [esi + 0x78], 0xffffff38
jne 0x40d2e5
mov ecx, dword [0x5fba50]
push ecx
call fcn.00413894
pop ecx
cmp dword [esi + 0x78], 0xfffffe70
jg 0x40d311
mov dword [0x593330], 0x64
mov dword [0x593368], 2
xor eax, eax
mov dword [0x593334], eax
xor edx, edx
mov dword [0x593354], edx
cmp dword [0x593330], 0xa
jne 0x40d352
inc dword [0x593334]
cmp dword [0x593348], 1
jne 0x40d330
add dword [0x593334], 2
cmp dword [0x593334], 0x1e
jl 0x40d352
xor ecx, ecx
xor eax, eax
mov dword [0x593334], ecx
mov dword [0x593330], 1
mov dword [0x5fbb1c], eax
cmp dword [0x593330], 0x64
jne 0x40d551
inc dword [0x593334]
xor edx, edx
mov dword [esi], edx
cmp dword [0x593334], 0xa
jg 0x40d39f
mov dword [0x593334], 0xb
mov dword [0x59333c], 1
mov dword [0x593340], 1
xor ecx, ecx
mov dword [0x593344], ecx
xor eax, eax
mov dword [0x593358], eax
push 2
call fcn.00592534
pop ecx
dec eax
jne 0x40d3c6
mov dword [0x59333c], 1
xor edx, edx
mov dword [0x593340], 1
mov dword [0x593344], edx
push 3
call fcn.00592534
pop ecx
dec eax
jne 0x40d3ed
mov dword [0x59333c], 1
xor ecx, ecx
mov dword [0x593340], 2
mov dword [0x593344], ecx
push 4
call fcn.00592534
pop ecx
dec eax
jne 0x40d413
mov dword [0x59333c], 1
xor eax, eax
mov dword [0x593340], 3
mov dword [0x593344], eax
push 5
call fcn.00592534
pop ecx
dec eax
jne 0x40d43a
mov dword [0x59333c], 1
xor edx, edx
mov dword [0x593340], 4
mov dword [0x593344], edx
push 6
call fcn.00592534
pop ecx
dec eax
jne 0x40d461
mov dword [0x59333c], 2
xor ecx, ecx
mov dword [0x593340], 1
mov dword [0x593344], ecx
push 7
call fcn.00592534
pop ecx
dec eax
jne 0x40d487
mov dword [0x59333c], 2
xor eax, eax
mov dword [0x593340], 2
mov dword [0x593344], eax
push 8
call fcn.00592534
pop ecx
dec eax
jne 0x40d4ae
mov dword [0x59333c], 2
xor edx, edx
mov dword [0x593340], 3
mov dword [0x593344], edx
push 9
call fcn.00592534
pop ecx
dec eax
jne 0x40d4d5
mov dword [0x59333c], 2
xor ecx, ecx
mov dword [0x593340], 4
mov dword [0x593344], ecx
push 0xb
call fcn.00592534
pop ecx
dec eax
jne 0x40d4f0
mov dword [esi], 1
mov dword [0x593358], 1
push 0x1c
call fcn.00592534
pop ecx
dec eax
jne 0x40d501
mov dword [esi], 1
push 0x2c
call fcn.00592534
pop ecx
dec eax
jne 0x40d512
mov dword [esi], 1
cmp dword [esi], 1
jne 0x40d551
mov dword [0x593330], 0xa
xor eax, eax
mov dword [0x5fbb1c], eax
xor edx, edx
mov dword [0x593334], edx
mov dword [0x593368], 2
xor ecx, ecx
mov dword [0x593348], ecx
xor eax, eax
mov dword [0x59334c], eax
xor edx, edx
mov dword [0x593350], edx
call fcn.00401f64
mov dword [esi], 0x1e
push 0x39
call fcn.00592534
pop ecx
dec eax
jne 0x40d56d
mov dword [esi], 0x3c
mov eax, 0x3e8
cdq
idiv dword [esi]
push eax
push 0
call fcn.005924f4
pop ecx
push eax
mov ecx, dword [0x60d7f8]
push ecx
call fcn.00401dac
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret