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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x19c
mov eax, dword [esp + 0x1c4]
mov ecx, dword [esp + 0x1e8]
mov edx, dword [esp + 0x1e0]
mov esi, dword [esp + 0x1bc]
mov eax, dword [eax]
mov ecx, dword [ecx]
sub edx, 4
mov edi, dword [esp + 0x200]
mov dword [esp + 0x88], edx
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
mov dword [esp + 0x18], 0x62f0dd00
mov dword [esp + 0x14], 0x62f0dcfc
mov dword [esp + 0x10], 0x62f0dcf8
mov dword [esp + 0xc], 0x62f0dcf4
mov dword [esp + 8], 0x62f355d4
mov dword [esp + 4], 0x62f355d6
mov dword [esp], 0x62f0dcf0
call fcn.62eb68f0
mov ebx, dword [esp + 0x1b8]
mov edx, dword [esp + 0x1b0]
movzx ecx, byte [0x62f35ab6]
mov dword [esp + 0xa8], eax
movzx eax, byte [ebx]
xor ebx, ebx
movzx eax, byte [eax + 0x62f35a60]
mov byte [esp + 0x8c], al
movzx eax, byte [edx]
mov edx, dword [esp + 0x1b4]
cmp byte [eax + 0x62f35a60], cl
mov ecx, dword [esp + 0x1f4]
movzx eax, byte [edx]
sete bl
mov ebp, ebx
cmp dword [ecx], 0xffffffff
movzx edx, byte [eax + 0x62f35a60]
mov dword [esp + 0x70], 1
je 0x62efde8a
mov ebx, dword [esp + 0x1fc]
xor eax, eax
cmp dword [ebx], 0xffffffff
sete al
mov dword [esp + 0x70], eax
mov dword [esp + 0x180], 1
mov eax, dword [esi]
lea ecx, [eax + eax*4]
add ecx, ecx
test ebp, ebp
mov dword [esp + 0x78], ecx
mov dword [esp + 0x170], ecx
mov dword [edi], 0
jne 0x62efdf00
mov ecx, dword [esp + 0x1b0]
movzx ebx, byte [0x62f35aae]
movzx ecx, byte [ecx]
cmp byte [ecx + 0x62f35a60], bl
je 0x62efdf00
mov dword [edi], 0xffffffff
mov eax, dword [edi]
neg eax
mov dword [esp + 0x180], eax
lea eax, [esp + 0x180]
mov dword [esp + 4], eax
mov dword [esp], 0x62f355d6
call fcn.62f060b0
add esp, 0x19c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
xor ecx, ecx
cmp dl, byte [0x62f35aa1]
sete cl
xor ebx, ebx
cmp byte [0x62f35ab6], dl
mov dword [esp + 0x9c], ecx
sete bl
cmp dl, byte [0x62f35aa9]
mov dword [esp + 0x80], ebx
sete dl
movzx edx, dl
mov dword [esp + 0x98], edx
mov edx, ebx
or edx, ecx
or edx, dword [esp + 0x98]
jne 0x62efdf50
mov dword [edi], 0xfffffffe
jmp 0x62efded0
movzx ecx, byte [esp + 0x8c]
xor ebx, ebx
cmp cl, byte [0x62f35aac]
sete bl
mov dword [esp + 0xac], ebx
je 0x62efdf90
mov ecx, dword [esp + 0x1b8]
movzx ebx, byte [0x62f35ab5]
movzx edx, byte [ecx]
cmp byte [edx + 0x62f35a60], bl
je 0x62efdf90
mov dword [edi], 0xfffffffd
jmp 0x62efded0
mov ecx, dword [esi]
cmp ecx, 0
jl 0x62efdfb9
mov ebx, dword [esp + 0x1c4]
mov edx, 1
cmovg edx, ecx
mov dword [esp + 0x74], edx
cmp dword [ebx], edx
jge 0x62efdfc4
mov dword [edi], 0xfffffffa
jmp 0x62efded0
mov dword [edi], 0xfffffffc
jmp 0x62efded0
mov edx, dword [esp + 0x80]
test edx, edx
jne 0x62efe029
mov ebx, dword [esp + 0x98]
test ebx, ebx
je 0x62efe052
mov edx, dword [esp + 0x1d0]
mov edx, dword [edx]
test edx, edx
mov dword [esp + 0x8c], edx
jle 0x62efeed9
cmp dword [esp + 0x74], edx
jl 0x62efeed9
mov edx, dword [esp + 0x1d4]
cmp dword [esp + 0x8c], ecx
mov ebx, dword [edx]
mov edx, dword [esp + 0x8c]
cmovg edx, ecx
cmp ebx, edx
jl 0x62efe01e
cmp ecx, ebx
jge 0x62efe052
mov dword [edi], 0xfffffff6
jmp 0x62efded0
test ecx, ecx
je 0x62efe052
mov edx, dword [esp + 0x1c8]
mov ebx, dword [esp + 0x1cc]
fld dword [edx]
fld dword [ebx]
fxch st(1)
fcompi st(1)
fstp st(0)
jb 0x62efe052
mov dword [edi], 0xfffffff8
jmp 0x62efded0
mov edx, dword [esp + 0x1e8]
mov ebx, dword [edx]
test ebx, ebx
jle 0x62efe067
test ebp, ebp
je 0x62efe072
cmp ecx, ebx
jle 0x62efe072
mov dword [edi], 0xfffffff1
jmp 0x62efded0
imul edx, eax, 0x1a
mov ecx, dword [esp + 0x78]
mov eax, 1
mov dword [esp + 0x18], 0x62f0dd04
mov dword [esp + 0x14], 0x62f0dd04
mov dword [esp + 0x10], 0x62f0dd04
test edx, edx
cmovle edx, eax
test ecx, ecx
mov ecx, dword [esp + 0x1b8]
cmovg eax, dword [esp + 0x78]
mov dword [esp + 0x68], edx
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 0x8c], eax
mov dword [esp + 4], 0x62f355e3
mov dword [esp], 0x62f0dcf4
call fcn.62eb68f0
mov ebx, dword [esp + 0x1b8]
mov dword [esp + 0x18], 0x62f0dd04
mov dword [esp + 0x14], 0x62f0dd04
mov dword [esp + 0x10], 0x62f0dd04
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x180], eax
mov dword [esp + 4], 0x62f355ea
mov dword [esp], 0x62f0dcf4
call fcn.62eb68f0
mov ecx, dword [esp + 0x180]
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x8c]
cmp eax, ecx
mov dword [esp + 0x170], eax
cmovl eax, ecx
mov ecx, dword [esp + 0x1f8]
add eax, 1
imul eax, dword [esi]
cmp eax, edx
mov dword [esp + 0x180], eax
cmovl eax, edx
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x1f0]
fild dword [esp + 0xdc]
fst dword [esp + 0xbc]
fstp dword [eax]
mov eax, dword [esp + 0x70]
mov dword [ecx], ebx
test eax, eax
jne 0x62efe1a2
mov eax, dword [esp + 0x1f4]
cmp dword [eax], edx
jl 0x62efe9f8
mov ecx, dword [esp + 0x1fc]
mov ebx, dword [esp + 0x8c]
cmp dword [ecx], ebx
jge 0x62efe1a2
mov dword [edi], 0xffffffec
mov eax, 0x14
jmp 0x62efded4
mov eax, dword [edi]
test eax, eax
jne 0x62efeee4
mov edx, dword [esp + 0x70]
test edx, edx
jne 0x62efdef2
mov eax, dword [esp + 0x1dc]
mov dword [eax], 0
mov eax, dword [esi]
test eax, eax
je 0x62efe694
mov ecx, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
add ecx, 1
lea edx, [ecx*4]
add ebx, 1
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0x1c0]
sub ecx, edx
mov dword [esp + 0xa4], ecx
lea ecx, [ebx*4]
mov dword [esp + 0xcc], ecx
mov ecx, dword [esp + 0x1e4]
sub ecx, dword [esp + 0xcc]
cmp eax, 1
mov dword [esp + 0x78], ecx
je 0x62efea08
movzx eax, byte [0x62f35bb3]
mov dword [esp + 0x68], edx
fld qword [eax*8 + 0x62f35c60]
movzx eax, byte [0x62f35bb0]
fld qword [eax*8 + 0x62f35c60]
fstp dword [esp + 0xd4]
fld dword [esp + 0xd4]
fdivr st(1)
fld st(0)
fsqrt
fstp qword [esp + 0xb0]
fdivr dword [0x62f355f4]
fsqrt
fstp dword [esp + 0xa0]
fld dword [esp + 0xa0]
fstp dword [esp + 0x160]
fld dword [0x62f355f8]
fstp qword [esp + 8]
fstp qword [esp]
call sub.msvcrt.dll_pow
mov ecx, dword [esp + 0x1d8]
mov edx, dword [esp + 0x68]
mov eax, dword [ecx]
fstp qword [esp + 0xc0]
mov dword [esp + 0x100], eax
mov eax, dword [esp + 0x80]
test eax, eax
je 0x62efe2d7
mov ebx, dword [esp + 0x1c8]
mov ecx, dword [esp + 0x1cc]
mov eax, dword [ebx]
mov dword [esp + 0x140], eax
mov eax, dword [ecx]
mov dword [esp + 0x130], eax
add edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x1f0]
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0xd0], edx
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x1b8]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov dword [esp], 0x62f355dd
call fcn.62ed39d0
fldz
fxch st(1)
fcomi st(1)
fstp st(1)
jbe 0x62efe335
fld qword [esp + 0xb0]
fcomi st(1)
ja 0x62efe8ad
fstp st(0)
fld qword [esp + 0xc0]
fld dword [esp + 0xa0]
fcomi st(1)
fcmovnb st(0), st(1)
fstp st(1)
fxch st(1)
fcomi st(1)
ja 0x62efe8ab
fstp st(0)
fstp st(0)
mov eax, dword [esi]
mov dword [esp + 0xd8], 0
lea ecx, [eax + 1]
mov edx, dword [esp + 0x1f0]
mov dword [esp + 0x80], ecx
add ecx, eax
mov dword [esp + 0x90], ecx
add ecx, eax
mov dword [esp + 0xc0], ecx
add ecx, eax
lea ebx, [eax + ecx]
mov eax, dword [esp + 0x1f4]
sub edx, 4
mov dword [esp + 0xb0], ecx
mov ecx, 1
sub ecx, ebx
lea ebx, [edx + ebx*4]
add ecx, dword [eax]
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0x80]
lea eax, [esp + 0x10c]
mov dword [esp + 0x24], eax
lea eax, [esp + 0xe8]
mov dword [esp + 0xe8], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x20], eax
shl ebx, 2
mov dword [esp + 0xac], ebx
add ebx, edx
shl ecx, 2
mov dword [esp + 0xa4], ecx
add ecx, edx
mov dword [esp + 0x70], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x80], ebx
mov eax, dword [esp + 0x70]
mov ebx, dword [esp + 0x1f0]
mov dword [esp + 0x68], edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 4], esi
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp], ecx
call fcn.62f01fd0
mov edx, dword [esp + 0x98]
xor eax, eax
test edx, edx
mov edx, dword [esp + 0x68]
je 0x62efe475
mov ebx, dword [esp + 0x1d0]
cmp dword [ebx], 1
je 0x62efeeb4
or eax, dword [esp + 0x9c]
je 0x62efe6b4
cmp dword [esp + 0xa8], 1
jne 0x62efe6b4
test ebp, ebp
jne 0x62efeb92
mov ebx, dword [esp + 0x1e0]
mov eax, dword [esp + 0x80]
mov dword [esp + 0x68], edx
mov dword [esp + 0x10], 0x62f0dcf4
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x62f0dcf4
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.62ebeeb0
mov eax, dword [esi]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0x70]
sub eax, 1
mov dword [esp + 0x180], eax
lea eax, [esp + 0x180]
lea edx, [edx + ecx*4]
mov dword [esp + 0xc], edx
mov dword [esp + 0x68], edx
mov dword [esp + 0x10], 0x62f0dcf4
mov dword [esp + 8], 0x62f0dcf4
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.62ebeeb0
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0xc], edi
mov dword [esp], esi
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.62efcd80
mov ebx, dword [edi]
test ebx, ebx
jne 0x62efe6ae
mov eax, dword [esi]
mov edx, dword [esp + 0x1dc]
mov dword [edx], eax
cmp dword [esp + 0xd8], 1
je 0x62efeb36
test ebp, ebp
je 0x62efe667
mov eax, dword [esp + 0x1dc]
mov ecx, dword [eax]
mov dword [esp + 0x150], 1
lea edx, [ecx - 1]
test edx, edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x180], edx
jle 0x62efe667
mov ebx, dword [esp + 0x1e0]
mov edi, 1
mov ebp, 1
mov dword [esp + 0x7c], esi
lea esi, [esi]
mov eax, dword [esp + 0x88]
lea esi, [eax + ebp*4]
mov edx, dword [esi]
lea eax, [ebp + 1]
cmp ecx, eax
mov dword [esp + 0x170], ecx
mov dword [esp + 0x74], edx
jl 0x62efe5de
fld dword [esp + 0x74]
xor edx, edx
fld dword [ebx + eax*4 - 4]
fcomi st(1)
cmovb edx, eax
fcmovnb st(0), st(1)
fstp st(1)
add eax, 1
cmp ecx, eax
jge 0x62efe5c4
test edx, edx
jne 0x62efe600
fstp st(0)
add edi, 1
cmp dword [esp + 0x70], edi
mov dword [esp + 0x150], edi
jl 0x62efe667
mov eax, dword [esp + 0x1dc]
mov ebp, edi
mov ecx, dword [eax]
jmp 0x62efe5a0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x88]
imul ebp, dword [esp + 0x94]
mov dword [ecx + edx*4], eax
mov ecx, dword [esp + 0x78]
fstp dword [esi]
imul edx, dword [esp + 0x94]
mov dword [esp + 0x10], 0x62f0dcf4
mov dword [esp + 8], 0x62f0dcf4
lea eax, [ecx + ebp*4 + 4]
mov dword [esp + 0xc], eax
lea eax, [ecx + edx*4 + 4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.62efdc40
mov edx, dword [esp + 0x180]
mov edi, dword [esp + 0x150]
mov dword [esp + 0x70], edx
jmp 0x62efe5de
mov edx, dword [esp + 0x1f0]
fld dword [esp + 0xbc]
mov eax, dword [esp + 0x1f8]
fstp dword [edx]
mov edx, dword [esp + 0x8c]
mov dword [eax], edx
add esp, 0x19c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [esp + 0x1f0]
xor eax, eax
mov dword [edx], 0x3f800000
add esp, 0x19c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [edi], 0
mov eax, dword [esp + 0x1f8]
sub eax, 4
test ebp, ebp
je 0x62efea6d
mov edx, dword [esp + 0xa4]
lea ebx, [esp + 0x18f]
mov ecx, dword [esp + 0xac]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x1b4]
mov byte [esp + 0x18f], 0x42
lea edx, [eax + edx]
lea ecx, [eax + ecx]
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], edx
mov dword [esp + 0x38], ecx
mov dword [esp], ebx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1f8]
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x44], edi
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x1e0]
mov dword [esp + 8], esi
mov dword [esp + 0x30], eax
lea eax, [esp + 0xe4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x100]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1d4]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x130]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x140]
mov dword [esp + 0xc], eax
call fcn.62ef90b0
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x1e8]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x1f8]
add ebx, dword [esp + 0xcc]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x1dc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x30], edi
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.62efa7c0
mov edx, dword [esp + 0x1f4]
mov eax, 1
sub eax, dword [esp + 0x90]
lea ecx, [esp + 0x10c]
add eax, dword [edx]
mov edx, dword [esp + 0x1e8]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x1f0]
mov dword [esp + 0xec], eax
lea eax, [esp + 0xec]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x1dc]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x1c4]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x1b8]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x14], eax
mov dword [esp + 8], 0x62f355d4
mov dword [esp + 4], ecx
mov dword [esp], 0x62f355e1
call fcn.62ef7a80
jmp 0x62efe547
fxch st(1)
fdivrp st(1)
mov ebx, dword [esp + 0xac]
test ebx, ebx
fstp dword [esp + 0x110]
je 0x62efee03
mov edx, dword [esi]
mov dword [esp + 0x150], 1
test edx, edx
mov eax, edx
mov dword [esp + 0x180], edx
jle 0x62efe98b
mov ebx, dword [esp + 0x1e0]
lea ecx, [esp + 0x110]
mov eax, 1
mov dword [esp + 0x90], ebp
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0xa4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x70], edi
mov edi, esi
mov esi, ecx
jmp 0x62efe922
mov edx, dword [edi]
add edx, 1
sub edx, eax
imul eax, ebx
mov dword [esp + 0x170], edx
mov dword [esp + 0xc], 0x62f0dcf4
mov dword [esp + 4], esi
lea eax, [ebp + eax*4]
mov dword [esp + 8], eax
lea eax, [esp + 0x170]
mov dword [esp], eax
call fcn.62ef8ff0
mov eax, dword [esp + 0x150]
add eax, 1
cmp dword [esp + 0x180], eax
mov dword [esp + 0x150], eax
jge 0x62efe920
mov esi, edi
mov edx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x90]
mov edi, dword [esp + 0x70]
mov eax, dword [esi]
mov dword [esp + 0x1e0], edx
mov edx, dword [esp + 0x1d8]
fld dword [edx]
fldz
fxch st(1)
fcomi st(1)
fstp st(1)
jbe 0x62efe9ae
fmul dword [esp + 0x110]
fstp dword [esp + 0x100]
jmp 0x62efe9b0
fstp st(0)
mov ecx, dword [esp + 0x80]
mov dword [esp + 0xd8], 1
test ecx, ecx
je 0x62efe364
mov ecx, dword [esp + 0x1c8]
fld dword [esp + 0x110]
mov ebx, dword [esp + 0x1cc]
fld dword [ecx]
fmul st(1)
fstp dword [esp + 0x140]
fmul dword [ebx]
fstp dword [esp + 0x130]
jmp 0x62efe364
mov dword [edi], 0xffffffee
mov eax, 0x12
jmp 0x62efded4
mov eax, dword [esp + 0x1f0]
mov edx, dword [esp + 0x98]
or edx, dword [esp + 0x9c]
mov dword [eax], 0x41d00000
je 0x62efedb4
mov ecx, dword [esp + 0x1dc]
mov edx, dword [esp + 0x70]
mov dword [ecx], 1
mov ecx, dword [esp + 0xa4]
mov eax, dword [ecx + edx*4]
mov edx, dword [esp + 0x1e0]
mov dword [edx], eax
jmp 0x62efea55
fstp st(0)
jmp 0x62efea55
fstp st(0)
test ebp, ebp
je 0x62efdef2
mov ecx, dword [esp + 0x78]
mov dword [ecx + ebx*4], 0x3f800000
jmp 0x62efdef2
mov edx, dword [esp + 0xa4]
lea ecx, [esp + 0x18f]
mov ebx, dword [esp + 0xa0]
mov byte [esp + 0x18f], 0x45
mov dword [esp + 0x44], edi
lea edx, [eax + edx]
add eax, dword [esp + 0xac]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x1e0]
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x1dc]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1f8]
mov dword [esp + 8], esi
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x80]
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x1d4]
mov dword [esp + 0x34], eax
lea eax, [esp + 0xe4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0x1b4]
mov dword [esp + 0x18], ebx
mov dword [esp + 4], ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x100]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp], edx
mov dword [esp + 0x14], eax
lea eax, [esp + 0x130]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x140]
mov dword [esp + 0xc], eax
call fcn.62ef90b0
jmp 0x62efe547
mov eax, dword [edi]
test eax, eax
jne 0x62efeeca
mov ecx, dword [esp + 0x1dc]
mov eax, dword [ecx]
mov dword [esp + 0x120], eax
fld1
mov ebx, dword [esp + 0x1e0]
fdiv dword [esp + 0x110]
lea eax, [esp + 0x160]
mov dword [esp + 4], eax
lea eax, [esp + 0x120]
mov dword [esp + 0xc], 0x62f0dcf4
mov dword [esp + 8], ebx
mov dword [esp], eax
fstp dword [esp + 0x160]
call fcn.62ef8ff0
jmp 0x62efe555
mov eax, dword [esi]
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0x68], edx
mov dword [esp + 0x10], 0x62f0dcf4
sub eax, 1
mov dword [esp + 0x180], eax
mov eax, dword [esp + 0x70]
lea ecx, [edx + ebx*4]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x6c], ecx
mov dword [esp + 8], 0x62f0dcf4
mov dword [esp + 4], eax
lea eax, [esp + 0x180]
mov dword [esp], eax
call fcn.62ebeeb0
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0xc0]
mov eax, dword [esp + 0x80]
mov dword [esp + 0x10], 0x62f0dcf4
mov dword [esp + 8], 0x62f0dcf4
lea edx, [edx + ebx*4]
mov dword [esp + 0xc], edx
mov dword [esp + 0x68], edx
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.62ebeeb0
mov ebx, dword [esp + 0x1d8]
xor eax, eax
fld dword [esp + 0xd4]
fadd st(0)
fild dword [esi]
fmulp st(1)
fld dword [ebx]
fxch st(1)
fcompi st(1)
fstp st(0)
mov ebx, dword [esp + 0x78]
setae al
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x1fc]
add ebx, dword [esp + 0xcc]
mov dword [esp + 0x50], edi
mov dword [esp + 0x34], esi
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x1f8]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x1f4]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
lea eax, [esp + 0xf0]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x1ec]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x1e8]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x1d4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c8]
mov dword [esp + 0x14], eax
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], esi
mov dword [esp + 4], 0x62f355df
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x1b0]
mov dword [esp + 0x10], ecx
mov dword [esp], edx
call fcn.62efb640
mov eax, dword [edi]
test eax, eax
jne 0x62efe6ae
mov ecx, dword [esp + 0x1f4]
mov eax, 1
sub eax, dword [esp + 0x90]
mov edx, dword [esp + 0x70]
add eax, dword [ecx]
mov ecx, dword [esp + 0x1e8]
mov dword [esp + 0x20], ebx
mov ebx, dword [esp + 0x1f0]
mov dword [esp + 0xec], eax
lea eax, [esp + 0x10c]
mov dword [esp + 0x30], eax
lea eax, [esp + 0xec]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c4]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x1dc]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x1b8]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x62f355d4
mov dword [esp + 4], ebx
mov dword [esp], 0x62f355e1
call fcn.62ef7a80
jmp 0x62efe532
mov ecx, dword [esp + 0x70]
mov eax, dword [esp + 0xa4]
mov edx, dword [esp + 0x1c8]
fld dword [eax + ecx*4]
fld dword [edx]
fxch st(1)
fcomi st(1)
fstp st(1)
jbe 0x62efea4f
mov ecx, dword [esp + 0x1cc]
fld dword [ecx]
fcompi st(1)
jb 0x62efea53
mov eax, dword [esp + 0x1dc]
mov edx, dword [esp + 0x1e0]
mov dword [eax], 1
fstp dword [edx]
jmp 0x62efea55
mov eax, dword [esi]
mov dword [esp + 0x150], 1
test eax, eax
mov dword [esp + 0x180], eax
jle 0x62efe98b
mov dword [esp + 0x70], ebp
mov ebp, dword [esp + 0xa4]
lea ecx, [esp + 0x110]
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x90]
mov eax, 1
mov dword [esp + 0x90], edi
mov edi, dword [esp + 0x1e0]
mov ebx, ecx
imul eax, esi
mov dword [esp + 0xc], 0x62f0dcf4
mov dword [esp + 4], ebx
lea eax, [ebp + eax*4 + 4]
mov dword [esp + 8], eax
lea eax, [esp + 0x150]
mov dword [esp], eax
call fcn.62ef8ff0
mov eax, dword [esp + 0x150]
add eax, 1
cmp dword [esp + 0x180], eax
mov dword [esp + 0x150], eax
jge 0x62efee54
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x1e0], edi
mov ebp, dword [esp + 0x70]
mov edi, dword [esp + 0x90]
mov eax, dword [esi]
jmp 0x62efe98b
mov eax, dword [esp + 0x1d4]
mov ecx, dword [esi]
cmp dword [eax], ecx
sete al
movzx eax, al
jmp 0x62efe475
sub eax, 1
mov dword [esp + 0x120], eax
jmp 0x62efeb50
mov dword [edi], 0xfffffff7
jmp 0x62efded0
neg eax
jmp 0x62efded4