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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
push 0xffffffffffffffff
push 0x879f66
mov eax, dword fs:[0]
push eax
sub esp, 0x4a8
mov eax, dword [0x8ce6f4]
xor eax, esp
mov dword [esp + 0x470], eax
push ebx
push esi
push edi
mov eax, dword [0x8ce6f4]
xor eax, esp
push eax
lea eax, [esp + 0x4b8]
mov dword fs:[0], eax
mov esi, ecx
call fcn.00533c70
mov dword [esp + 0x24], eax
call fcn.00533c60
mov ecx, dword [esi + 0xe6c]
mov edx, dword [esi + 0xe70]
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0xe68]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0xe74]
mov dword [esp + 0x40], eax
mov eax, 0x14
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov eax, 0x208
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov eax, dword [esi + 0x370]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x3c], edx
test eax, eax
je 0x606834
mov eax, dword [esi + 0x374]
test eax, eax
je 0x606834
mov ecx, dword [eax]
mov edx, dword [ecx + 0x20]
push 0x10
push eax
call edx
call fcn.007cff5d
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x60604f
push 0x80004005
call fcn.004a8210
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x18], eax
fld qword [esi + 0xed0]
fmul qword [0x40cd78]
mov dword [esp + 0x4c0], 0
fadd qword [0x405058]
call fcn.00802da0
mov ecx, dword [esi + 0xe94]
mov edx, dword [esi + 0xe90]
push 0
push 0x2710
push ecx
push edx
mov edi, eax
call fcn.00803a40
push eax
mov eax, dword [esi + 0x668]
push eax
lea ecx, [esp + 0x20]
push 0x43b438
push ecx
call fcn.004aa600
add esp, 0x10
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
mov ebx, dword [sym.imp.USER32.dll_OffsetRect]
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
mov edx, dword [esp + 0x44]
cmp dword [edx + 0xc], 1
jne 0x6063cf
fild qword [esp + 0x1c]
sub esp, 0x30
fld qword [0x434b50]
mov eax, dword [esi + 0xf00]
fdiv st(1), st(0)
fxch st(1)
fstp qword [esp + 0x28]
fild qword [esp + 0x6c]
fdiv st(1)
fstp qword [esp + 0x20]
fdivr qword [esi + 0x5f8]
fstp qword [esp + 0x18]
fld qword [eax + 0x60]
fstp qword [esp + 0x10]
fld qword [eax + 0x58]
fstp qword [esp + 8]
fld qword [esi + 0x648]
lea eax, [esp + 0x48]
fstp qword [esp]
push 0x43b390
push eax
call fcn.004aa600
add esp, 0x38
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
fld qword [esi + 0x640]
sub esp, 0x10
fstp qword [esp + 8]
lea ecx, [esp + 0x28]
fld qword [esi + 0x650]
fstp qword [esp]
push 0x43b300
push ecx
call fcn.004aa600
add esp, 0x18
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
fld qword [0x409f80]
fdiv qword [esi + 0x5f8]
sub esp, 0x10
lea edx, [esp + 0x28]
fstp qword [esp + 8]
fld qword [esi + 0x78]
fstp qword [esp]
push 0x43b290
push edx
call fcn.004aa600
add esp, 0x18
push 1
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x84]
push ecx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea edx, [esp + 0x84]
push edx
call ebx
mov eax, dword [esi + 0x630]
fld qword [esi + 0x638]
push eax
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x24]
push 0x43b208
push ecx
call fcn.004aa600
add esp, 0x14
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
mov edx, dword [esi + 0xf00]
cmp dword [edx], 0
je 0x6062a8
mov eax, edx
fld qword [eax + 0x90]
sub esp, 0x10
fstp qword [esp + 8]
fld qword [0x409f20]
fdiv qword [eax + 0x90]
lea eax, [esp + 0x28]
fstp qword [esp]
push 0x43b178
push eax
call fcn.004aa600
add esp, 0x18
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
test dword [esi + 0x3e0], 0x20000
jne 0x6062e5
push 0x43b0c8
lea ecx, [esp + 0x1c]
call fcn.004a8ed0
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
mov ecx, dword [esi + 0x620]
mov edx, dword [esi + 0x61c]
mov eax, dword [esi + 0x4c]
push ecx
mov ecx, dword [esi + 0x48]
push edx
mov edx, dword [esi + 0x44]
push eax
mov eax, dword [esi + 0x40]
push ecx
push edx
push eax
lea ecx, [esp + 0x30]
push 0x43b040
push ecx
call fcn.004aa600
add esp, 0x20
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x40]
test eax, eax
jne 0x606352
mov ecx, edx
cmp dword [ecx + 0x3c], eax
je 0x6063cf
test eax, eax
je 0x606387
mov edx, dword [esi + 0xf00]
push 0
push 0x43a3a8
mov dword [esp + 0x3c], edx
call dword [sym.imp.USER32.dll_FindWindowW]
mov ecx, dword [esp + 0x34]
mov dword [ecx + 0xa8], eax
test eax, eax
jne 0x606387
push 0x43afb0
lea ecx, [esp + 0x1c]
call fcn.004a8ed0
jmp 0x6063ac
mov eax, dword [esi + 0xf00]
mov edx, dword [eax + 0x24]
add edx, dword [eax + 0x20]
mov eax, dword [eax + 8]
shr edx, 1
push edx
push eax
lea ecx, [esp + 0x20]
push 0x43af58
push ecx
call fcn.004aa600
add esp, 0x10
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
mov eax, dword [esi + 0xf00]
mov edx, dword [esp + 0x24]
fld qword [edx + 0x58]
sub esp, 0x20
fstp qword [esp + 0x18]
fld qword [eax + 0x48]
fstp qword [esp + 0x10]
fld qword [eax + 0x40]
fstp qword [esp + 8]
fld qword [eax + 0x50]
lea eax, [esp + 0x38]
fstp qword [esp]
push 0x43aec8
push eax
call fcn.004aa600
add esp, 0x28
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
fld qword [esi + 0x658]
mov ecx, dword [esi + 0x660]
fmul qword [0x40a660]
mov edx, dword [esi + 0xe88]
push ecx
sub esp, 8
fstp qword [esp]
push edx
lea eax, [esp + 0x28]
push 0x43ae18
push eax
call fcn.004aa600
add esp, 0x18
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
mov ecx, dword [esp + 0x44]
cmp dword [ecx + 0xc], 1
jne 0x6067ee
mov eax, dword [esi + 0xf08]
test eax, eax
je 0x606501
mov edx, dword [esp + 0x24]
cmp dword [edx + 0x3c], 0
je 0x606501
cmp dword [esi + 0xf18], 4
mov eax, 0x43ada0
je 0x6064b6
mov eax, 0x43ad58
mov ecx, dword [esi + 0xf10]
mov edx, dword [esi + 0xf0c]
push eax
mov eax, dword [esi + 0xf14]
push eax
push ecx
push edx
lea eax, [esp + 0x28]
push 0x43ad00
push eax
call fcn.004aa600
add esp, 0x18
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
mov ecx, dword [esi + 0x5d0]
push ecx
lea edx, [esp + 0x1c]
push 0x43acc0
push edx
call fcn.004aa600
mov eax, dword [esp + 0x30]
add esp, 0xc
cmp dword [eax + 0x44], 0
je 0x6065a8
lea ecx, [esp + 0x34]
call fcn.005345e0
mov ecx, dword [esi + 0xeb4]
mov edx, dword [esi + 0xeb0]
push 0
push 0x2710
push ecx
push edx
mov byte [esp + 0x4d0], 1
call fcn.00803a40
push edx
push eax
mov eax, dword [esi + 0xebc]
push eax
lea ecx, [esp + 0x40]
push 0x43ac60
push ecx
call fcn.004aa600
mov ecx, dword [esp + 0x48]
mov eax, dword [ecx - 0xc]
add esp, 0x14
push eax
push ecx
lea ecx, [esp + 0x20]
call fcn.004a9f20
mov eax, dword [esp + 0x34]
add eax, 0xfffffff0
mov byte [esp + 0x4c0], 0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x6065a8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
mov ecx, dword [esi + 0x5c4]
mov edx, dword [esi + 0x5c0]
mov eax, dword [esi + 0x5cc]
push ecx
mov ecx, dword [esi + 0x5c8]
push edx
mov edx, dword [esi + 0x5bc]
push ecx
sub edx, eax
push edx
push eax
lea eax, [esp + 0x2c]
push 0x43abe0
push eax
call fcn.004aa600
add esp, 0x1c
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
push 0x43abc0
lea ecx, [esp + 0x1c]
call fcn.004a8ed0
cmp byte [esi + 0x613], 0
je 0x60664a
push 0x43abb8
lea ecx, [esp + 0x1c]
call fcn.00537450
mov ecx, dword [esp + 0x24]
cmp byte [ecx + 0x24], 0
je 0x606662
push 0x43abb0
lea ecx, [esp + 0x1c]
call fcn.00537450
mov edx, dword [esp + 0x24]
cmp dword [edx + 0x3c], 0
je 0x60667a
push 0x43aba4
lea ecx, [esp + 0x1c]
call fcn.00537450
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x40], 0
je 0x606692
push 0x43ab94
lea ecx, [esp + 0x1c]
call fcn.00537450
mov ecx, dword [esp + 0x24]
cmp dword [ecx + 0x44], 0
je 0x6066aa
push 0x43ab84
lea ecx, [esp + 0x1c]
call fcn.00537450
cmp byte [esi + 0x610], 0
je 0x6066c1
push 0x43ab7c
lea ecx, [esp + 0x1c]
call fcn.00537450
mov edx, dword [esp + 0x24]
mov eax, dword [edx + 0x38]
test eax, eax
jne 0x6066d3
push 0x43ab74
jmp 0x6066dd
cmp eax, 1
jne 0x6066e6
push 0x43ab6c
lea ecx, [esp + 0x1c]
call fcn.00537450
push 1
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x84]
push ecx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea edx, [esp + 0x84]
push edx
call ebx
call fcn.00612180
push eax
call fcn.00612190
push eax
lea eax, [esp + 0x20]
push 0x43ab58
push eax
call fcn.004aa600
add esp, 0x10
push 1
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
call fcn.00533c60
mov eax, dword [eax + 4]
push eax
lea ecx, [esp + 0x1c]
push 0x43ab34
push ecx
call fcn.004aa600
add esp, 0xc
push 1
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x84]
push eax
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
lea edx, [esi + 0xed8]
mov dword [esp + 0x34], 0
mov dword [esp + 0x24], edx
lea ebx, [ebx]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jl 0x60706b
movzx eax, word [eax]
test ax, ax
je 0x6067db
mov ecx, dword [esp + 0x24]
push 1
push ecx
lea edx, [esp + 0x84]
push edx
mov ecx, esi
call fcn.00600ea0
push edi
push 0
lea eax, [esp + 0x84]
push eax
call ebx
mov eax, dword [esp + 0x34]
add dword [esp + 0x24], 4
inc eax
mov dword [esp + 0x34], eax
cmp eax, 6
jl 0x6067a0
push edi
push 0
lea ecx, [esp + 0x84]
push ecx
call ebx
mov eax, dword [esi + 0x374]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0x2c]
call eax
mov eax, dword [esp + 0x18]
add eax, 0xfffffff0
mov dword [esp + 0x4c0], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x606834
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [esi + 0x36c], 0
je 0x607047
mov ecx, dword [esp + 0x44]
cmp dword [ecx + 0xc], 3
jge 0x607047
mov ebx, dword [esi + 0x68]
mov edi, dword [esi + 0x6c]
sub ebx, dword [esi + 0x60]
sub edi, dword [esi + 0x64]
lea ecx, [esp + 0x4c]
push ecx
sub ebx, 0x285
sub edi, 0x10e
push 0x50
lea edx, [ebx + 0x271]
lea eax, [edi + 0xfa]
push 0
mov ecx, esi
mov dword [esp + 0x40], ebx
mov dword [esp + 0x24], edi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
call fcn.005ffdc0
fld dword [0x43ab30]
mov eax, dword [esi + 0x36c]
mov edx, dword [eax]
push ecx
fstp dword [esp]
push eax
mov eax, dword [edx + 0x2c]
call eax
mov eax, dword [esi + 0x36c]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x34]
push 1
push eax
call edx
mov eax, dword [esi + 0x36c]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
push eax
call edx
fild dword [esp + 0x34]
mov eax, 0x19
sub eax, edi
fstp dword [esp + 0x2c]
mov dword [esp + 0x24], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x34], 0x33
mov eax, dword [esp + 0x1c]
fld dword [esp + 0x2c]
add eax, dword [esp + 0x24]
fstp dword [esp + 0x8c]
mov ecx, 0x19
fild dword [esp + 0x24]
cdq
idiv ecx
fstp dword [esp + 0x3c]
fld dword [esp + 0x3c]
fst dword [esp + 0x90]
mov eax, dword [esi + 0x36c]
push 0xff6464ff
push 2
lea ecx, [esp + 0x94]
push ecx
push eax
neg edx
sbb edx, edx
and edx, 0xfffffdc1
add edx, 0x271
add edx, ebx
mov dword [esp + 0x4c], edx
fild dword [esp + 0x4c]
fstp dword [esp + 0xa4]
fstp dword [esp + 0xa8]
mov edx, dword [eax]
mov edx, dword [edx + 0x14]
call edx
add dword [esp + 0x24], 5
dec dword [esp + 0x34]
jne 0x6068f0
add edi, 0x7d
mov dword [esp + 0x1c], edi
fild dword [esp + 0x1c]
add edi, 0xa
mov dword [esp + 0x1c], edi
mov dword [esp + 0x34], ebx
fstp dword [esp + 0x3c]
mov edi, 5
fild dword [esp + 0x1c]
fstp dword [esp + 0x2c]
fild dword [esp + 0x34]
mov eax, dword [esi + 0x36c]
push 0xff6464ff
push 2
fstp dword [esp + 0x24]
lea edx, [esp + 0x94]
fld dword [esp + 0x24]
push edx
fst dword [esp + 0x98]
push eax
fld dword [esp + 0x4c]
fstp dword [esp + 0xa0]
fstp dword [esp + 0xa4]
fld dword [esp + 0x3c]
fstp dword [esp + 0xa8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0x14]
call eax
add dword [esp + 0x34], 0x7d
dec edi
jne 0x606995
fild dword [esp + 0x18]
mov edi, dword [esi + 0xe50]
fld qword [0x40c938]
lea eax, [ebx + 0xa]
fld qword [0x43ab28]
xor ecx, ecx
add edi, 2
mov dword [esp + 0x3c], eax
mov dword [esp + 0x24], eax
lea eax, [edi - 1]
cdq
mov ebx, 0x7e
idiv ebx
test edx, edx
jns 0x606a21
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0xfffffff6
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
mov eax, edi
fstp dword [esp + ecx*8 + 0x8c]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0x90]
test edx, edx
jns 0x606a5c
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0xfffffffb
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 1]
fstp dword [esp + ecx*8 + 0x94]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0x98]
test edx, edx
jns 0x606a98
add edx, ebx
fild dword [esp + 0x24]
lea eax, [edi + 2]
fstp dword [esp + ecx*8 + 0x9c]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xa0]
test edx, edx
jns 0x606ac9
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 5
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 3]
fstp dword [esp + ecx*8 + 0xa4]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xa8]
test edx, edx
jns 0x606b05
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0xa
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 4]
fstp dword [esp + ecx*8 + 0xac]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xb0]
test edx, edx
jns 0x606b41
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0xf
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 5]
fstp dword [esp + ecx*8 + 0xb4]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xb8]
test edx, edx
jns 0x606b7d
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0x14
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 6]
fstp dword [esp + ecx*8 + 0xbc]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xc0]
test edx, edx
jns 0x606bb9
add edx, ebx
mov eax, dword [esp + 0x24]
add eax, 0x19
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
lea eax, [edi + 7]
fstp dword [esp + ecx*8 + 0xc4]
fild qword [esi + edx*8 + 0x670]
cdq
idiv ebx
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0xc8]
test edx, edx
jns 0x606bf5
add edx, ebx
mov eax, dword [esp + 0x24]
lea ebx, [eax + 0x1e]
mov dword [esp + 0x1c], ebx
fild dword [esp + 0x1c]
add ecx, 9
add eax, 0x2d
add edi, 9
fstp dword [esp + ecx*8 + 0x84]
mov dword [esp + 0x24], eax
fild qword [esi + edx*8 + 0x670]
fsub qword [esi + 0x5f8]
fdiv st(2)
fadd st(1)
fadd st(3)
fstp dword [esp + ecx*8 + 0x88]
cmp ecx, 0x7e
jl 0x606a10
mov eax, dword [esi + 0x36c]
fstp st(1)
mov ecx, dword [eax]
fstp st(0)
push 0xffff6464
fstp st(0)
push 0x7e
lea edx, [esp + 0x94]
push edx
push eax
mov eax, dword [ecx + 0x14]
call eax
mov ecx, dword [esp + 0x44]
cmp dword [ecx + 0xc], 1
jne 0x607039
mov eax, dword [esp + 0x18]
mov ebx, dword [esi + 0xe54]
cdq
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x3c]
xor edi, edi
mov dword [esp + 0x2c], eax
add ebx, 2
mov dword [esp + 0x18], edx
lea esp, [esp]
lea eax, [ebx - 1]
cdq
mov ecx, 0x7e
idiv ecx
test edx, edx
jns 0x606ca1
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0xfffffff6
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0x9c]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edx
mov eax, ebx
fild qword [esp + 0x3c]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0x90]
test edx, edx
jns 0x606d04
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0xfffffffb
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xa4]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
fild qword [esp + 0x34]
lea eax, [ebx + 1]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0x98]
test edx, edx
jns 0x606d68
add edx, ecx
mov eax, dword [esi + edx*8 + 0xa64]
fild dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa60]
push 0
push 0x7d0
fstp dword [esp + edi*8 + 0xa4]
push eax
push ecx
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
lea eax, [ebx + 2]
fild qword [esp + 0x44]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xa0]
test edx, edx
jns 0x606dc1
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 5
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xb4]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], edx
lea eax, [ebx + 3]
fild qword [esp + 0x24]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xa8]
test edx, edx
jns 0x606e25
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0xa
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xbc]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
lea eax, [ebx + 4]
fild qword [esp + 0x5c]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xb0]
test edx, edx
jns 0x606e89
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0xf
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xc4]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edx
lea eax, [ebx + 5]
fild qword [esp + 0x64]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xb8]
test edx, edx
jns 0x606eed
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0x14
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xcc]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edx
lea eax, [ebx + 6]
fild qword [esp + 0x6c]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xc0]
test edx, edx
jns 0x606f51
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0x19
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xd4]
call fcn.00803a40
add eax, dword [esp + 0x2c]
mov ecx, 0x7e
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], edx
lea eax, [ebx + 7]
fild qword [esp + 0x74]
cdq
idiv ecx
fstp dword [esp + edi*8 + 0xc8]
test edx, edx
jns 0x606fb5
add edx, ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + edx*8 + 0xa64]
mov edx, dword [esi + edx*8 + 0xa60]
push 0
add eax, 0x1e
mov dword [esp + 0x20], eax
fild dword [esp + 0x20]
push 0x7d0
push ecx
push edx
fstp dword [esp + edi*8 + 0xdc]
call fcn.00803a40
add eax, dword [esp + 0x2c]
adc edx, dword [esp + 0x30]
add eax, 0x7d
adc edx, 0
add dword [esp + 0x18], 0x2d
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edx
fild qword [esp + 0x4c]
add edi, 9
add ebx, 9
fstp dword [esp + edi*8 + 0x88]
cmp edi, 0x7e
jl 0x606c90
mov eax, dword [esi + 0x36c]
mov ecx, dword [eax]
push 0xff64c864
push 0x7e
lea edx, [esp + 0x94]
push edx
push eax
mov eax, dword [ecx + 0x14]
call eax
mov esi, dword [esi + 0x36c]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x44]
push esi
call edx
mov ecx, dword [esp + 0x4b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x470]
xor ecx, esp
call fcn.0080262b
mov esp, ebp
pop ebp
ret
push 0x80070057
call fcn.004a8210
int3