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

Disassembly:
sub esp, 0xb8
push ebx
push ebp
push esi
mov esi, dword [esp + 0xc8]
xor ebx, ebx
push edi
cmp esi, ebx
je 0x42f622
mov eax, dword [esi + 0x4c]
mov dword [esi + 0xa8], ebx
cmp eax, 0x10
mov dword [esi + 0xd0], ebx
mov dword [esi + 0xcc], ebx
ja 0x42efb6
je 0x42efa7
add eax, 0xfffffffe
cmp eax, 8
ja case.0x42ef37.8
jmp dword [eax*4 + 0x42f630]
mov dword [esi + 0xd4], 0x42e7e0
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e8d0
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e970
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e850
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e620
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e6a0
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42eb40
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42eb00
jmp 0x42f05f
cmp eax, 0x700
ja 0x42f019
je 0x42f00d
cmp eax, 0x300
ja 0x42effa
je 0x42efee
cmp eax, 0x100
je 0x42efe2
cmp eax, 0x200
jne case.0x42ef37.8
mov dword [esi + 0xd4], 0x42ebc0
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42ea20
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42ea70
jmp 0x42f05f
cmp eax, 0x600
jne case.0x42ef37.8
mov dword [esi + 0xd4], 0x42ed50
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42ee80
jmp 0x42f05f
cmp eax, 0x1000
je 0x42f055
cmp eax, 0x4000
je 0x42f047
cmp eax, 0x5000
je 0x42f03a
mov dword [esi + 0xd4], fcn.0043b320
jmp 0x42f05f
mov eax, dword [0x481dd8]
mov dword [esi + 0xd4], eax
jmp 0x42f05f
mov ecx, dword [0x4819c8]
mov dword [esi + 0xd4], ecx
jmp 0x42f05f
mov dword [esi + 0xd4], 0x42e9e0
push ebx
push ebx
push 1
push esi
call dword [esi + 0xd4]
mov eax, dword [esi + 0x48]
add esp, 0x10
test ah, 1
je 0x42f113
lea ecx, [esi + 0x98]
xor edx, edx
mov al, byte [ecx]
test al, al
je 0x42f09a
cmp al, 0x61
jl 0x42f093
cmp al, 0x7a
jg 0x42f093
sub al, 0x20
mov byte [ecx], al
inc ecx
inc edx
cmp edx, 0x10
jl 0x42f081
mov eax, dword [0x47f910]
cmp eax, ebx
jle 0x42f0f8
mov ebp, dword [0x47f920]
mov edx, 0x47f910
test edx, edx
je 0x42f0e3
cmp ebx, eax
jge 0x42f0e3
test ebx, ebx
jl 0x42f0e3
test ebp, ebp
je 0x42f0e3
lea eax, [esi + 0x98]
mov edi, ebp
xor edx, edx
sub edi, eax
mov cl, byte [eax]
cmp cl, byte [edi + eax]
jne 0x42f0de
test cl, cl
je 0x42f0f2
inc eax
inc edx
cmp edx, 0x10
jge 0x42f0f2
jmp 0x42f0ca
mov eax, dword [0x47f910]
mov edx, dword [0x47f91c]
inc ebx
add ebp, edx
cmp ebx, eax
jge 0x42f0f8
jmp 0x42f0a9
mov dword [esi + 0xa8], ebp
mov eax, dword [esi + 0xa8]
test eax, eax
jne 0x42f3e6
mov eax, dword [esi + 0x48]
or al, 1
mov dword [esi + 0x48], eax
jmp 0x42f3e6
test ah, 2
je 0x42f1a6
lea ecx, [esi + 0x98]
xor edx, edx
mov al, byte [ecx]
test al, al
je 0x42f13d
cmp al, 0x61
jl 0x42f136
cmp al, 0x7a
jg 0x42f136
sub al, 0x20
mov byte [ecx], al
inc ecx
inc edx
cmp edx, 0x10
jl 0x42f124
mov eax, dword [0x480db8]
xor ebx, ebx
test eax, eax
jle 0x42f0f8
mov ebp, dword [0x480dc8]
mov ecx, 0x480db8
test ecx, ecx
je 0x42f193
cmp ebx, eax
jge 0x42f193
test ebx, ebx
jl 0x42f193
test ebp, ebp
je 0x42f193
lea eax, [esi + 0x98]
mov ecx, ebp
xor edx, edx
sub ecx, eax
lea edi, [ecx + 0x3c]
mov cl, byte [eax]
cmp cl, byte [edi + eax]
jne 0x42f18e
test cl, cl
je 0x42f0f2
inc eax
inc edx
cmp edx, 0x10
jge 0x42f0f2
jmp 0x42f172
mov eax, dword [0x480db8]
mov edx, dword [0x480dc4]
inc ebx
add ebp, edx
cmp ebx, eax
jge 0x42f0f8
jmp 0x42f14e
fld dword [esi + 0x1c]
fstp dword [esp + 0x48]
fld dword [esi + 0x20]
fstp dword [esp + 0x4c]
fld dword [esi + 0x24]
fstp dword [esp + 0x50]
fld dword [esi + 0x1c]
fstp dword [esp + 0x54]
fld dword [esi + 0x20]
fstp dword [esp + 0x58]
fld dword [esi + 0x24]
fstp dword [esp + 0x5c]
fld dword [esi + 0x28]
fstp dword [esp + 0x60]
fld dword [esi + 0x20]
fstp dword [esp + 0x64]
fld dword [esi + 0x28]
fstp dword [esp + 0x6c]
fld dword [esi + 0x20]
fstp dword [esp + 0x70]
fld dword [esi + 0x1c]
fstp dword [esp + 0x78]
fld dword [esi + 0x2c]
fstp dword [esp + 0x7c]
fld dword [esi + 0x24]
fstp dword [esp + 0x80]
fld dword [esi + 0x1c]
fstp dword [esp + 0x84]
fld dword [esi + 0x2c]
fstp dword [esp + 0x88]
fld dword [esi + 0x24]
fstp dword [esp + 0x8c]
fld dword [esi + 0x28]
fstp dword [esp + 0x90]
fld dword [esi + 0x2c]
mov edx, dword [esi + 0x18]
fstp dword [esp + 0x94]
fld dword [esi + 0x28]
fstp dword [esp + 0x9c]
fld dword [esi + 0x2c]
mov eax, edx
mov ecx, edx
mov dword [esp + 0x68], eax
mov eax, dword [esi + 0x14]
fstp dword [esp + 0xa0]
push eax
mov dword [esp + 0x48], edx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x9c], edx
call fcn.004010c0
mov ecx, dword [esi + 0x10]
fstp dword [esp + 0x14]
push ecx
call fcn.004010c0
mov edx, dword [esi + 0xc]
fstp dword [esp + 0x20]
push edx
call fcn.004010c0
mov eax, dword [esi + 0x14]
fstp dword [esp + 0x30]
push eax
call fcn.00401060
mov ecx, dword [esi + 0x10]
fchs
fstp dword [esp + 0x2c]
push ecx
call fcn.00401060
mov edx, dword [esi + 0xc]
fchs
fstp dword [esp + 0x28]
push edx
call fcn.00401060
fchs
fld dword [esp + 0x3c]
fmul dword [esp + 0x28]
add esp, 0x18
lea eax, [esp + 0x4c]
mov ecx, 8
fstp dword [esp + 0x28]
fld dword [esp + 0x1c]
fmul dword [esp + 0x24]
fstp dword [esp + 0x20]
fld st(0)
fmul dword [esp + 0x14]
fstp dword [esp + 0x2c]
fld dword [esp + 0x24]
fmul dword [esp + 0x18]
fstp dword [esp + 0xa4]
fld dword [esp + 0x20]
fmul dword [esp + 0x14]
fld st(1)
fmul dword [esp + 0x10]
faddp st(1)
fstp dword [esp + 0xa8]
fld st(0)
fmul dword [esp + 0x1c]
fld dword [esp + 0x28]
fmul dword [esp + 0x14]
fsubp st(1)
fstp dword [esp + 0xac]
fmul dword [esp + 0x18]
fchs
fld dword [esp + 0x2c]
fmul dword [esp + 0x1c]
fsubr dword [esp + 0x28]
fld dword [esp + 0x2c]
fmul dword [esp + 0x10]
fadd dword [esp + 0x20]
fld dword [esp + 0x1c]
fmul dword [esp + 0x18]
fchs
fld dword [esp + 0x18]
fmul dword [esp + 0x10]
fld st(3)
fmul dword [eax - 4]
fld st(3)
fmul dword [eax]
add eax, 0xc
dec ecx
faddp st(1)
fld st(5)
fmul dword [eax - 0x14]
faddp st(1)
fld dword [esp + 0x14]
fmul dword [eax - 0x14]
fld st(3)
fmul dword [eax - 0x10]
faddp st(1)
fld st(2)
fmul dword [eax - 0xc]
faddp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0xa4]
fmul dword [eax - 0x14]
fld dword [esp + 0xa8]
fmul dword [eax - 0x10]
mov edx, dword [esp + 0x20]
faddp st(1)
fld dword [esp + 0xac]
fmul dword [eax - 0xc]
mov dword [eax - 0xc], edx
faddp st(1)
fstp dword [eax - 0x14]
fstp dword [eax - 0x10]
fld dword [eax - 0x14]
fadd dword [esi]
fstp dword [eax - 0x14]
fld dword [esi + 4]
fadd dword [eax - 0x10]
fstp dword [eax - 0x10]
fld dword [esi + 8]
fadd dword [eax - 0xc]
fstp dword [eax - 0xc]
jne 0x42f34f
fstp st(0)
fstp st(0)
fstp st(0)
lea eax, [esp + 0x44]
push 8
lea ecx, [esi + 0x30]
push eax
fstp st(0)
push ecx
fstp st(0)
call fcn.00408950
add esp, 0xc
mov eax, dword [esi + 0x50]
test eax, 0x10000
je 0x42f505
push 1
lea edx, [esp + 0x34]
push 2
push edx
call fcn.00407be0
mov eax, dword [0x47f910]
add esp, 0xc
xor ebx, ebx
test eax, eax
jle 0x42f49e
mov ecx, 0x47f910
test ecx, ecx
je 0x42f490
cmp ebx, eax
jge 0x42f490
test ebx, ebx
jl 0x42f490
mov edx, dword [0x47f91c]
mov ecx, dword [0x47f920]
imul edx, ebx
add edx, ecx
test edx, edx
je 0x42f490
test dword [esi + 0x50], 0x80000
lea eax, [esi + 0x54]
je 0x42f46a
mov ebp, edx
xor edi, edi
sub ebp, eax
mov cl, byte [eax]
cmp cl, 0x2a
je 0x42f482
cmp cl, byte [eax + ebp]
je 0x42f45d
cmp cl, 0x3f
jne 0x42f490
test cl, cl
je 0x42f482
inc eax
inc edi
cmp edi, 0x10
jl 0x42f44c
jmp 0x42f482
mov ebp, edx
xor edi, edi
sub ebp, eax
mov cl, byte [eax]
cmp cl, byte [eax + ebp]
jne 0x42f490
test cl, cl
je 0x42f482
inc eax
inc edi
cmp edi, 0x10
jl 0x42f470
push edx
lea edx, [esp + 0x34]
push edx
call fcn.00407c90
add esp, 8
mov eax, dword [0x47f910]
inc ebx
cmp ebx, eax
jl 0x42f414
mov eax, dword [esp + 0x34]
mov edi, 1
cmp eax, edi
jne 0x42f4d2
lea eax, [esp + 0x30]
push 0
push eax
call fcn.00407cf0
lea ecx, [esp + 0x38]
mov dword [esi + 0xd0], eax
push ecx
mov dword [esi + 0xcc], edi
call fcn.00407c50
add esp, 0xc
jmp 0x42f4e4
jle 0x42f4e4
mov edx, dword [esp + 0x30]
mov dword [esi + 0xcc], eax
mov dword [esi + 0xd0], edx
mov eax, dword [esi + 0xcc]
test eax, eax
jne 0x42f622
mov eax, dword [esi + 0x48]
or eax, edi
pop edi
mov dword [esi + 0x48], eax
pop esi
pop ebp
pop ebx
add esp, 0xb8
ret
test eax, 0x20000
je 0x42f622
push 1
lea eax, [esp + 0x34]
push 2
push eax
call fcn.00407be0
mov eax, dword [0x480db8]
add esp, 0xc
xor ebx, ebx
test eax, eax
jle 0x42f5c0
mov ecx, 0x480db8
test ecx, ecx
je 0x42f5b2
cmp ebx, eax
jge 0x42f5b2
test ebx, ebx
jl 0x42f5b2
mov edx, dword [0x480dc4]
mov ecx, dword [0x480dc8]
imul edx, ebx
add edx, ecx
test edx, edx
je 0x42f5b2
test dword [esi + 0x50], 0x80000
lea eax, [esi + 0x54]
je 0x42f589
mov ecx, edx
xor edi, edi
sub ecx, eax
lea ebp, [ecx + 0x3c]
mov cl, byte [eax]
cmp cl, 0x2a
je 0x42f5a4
cmp cl, byte [eax + ebp]
je 0x42f57c
cmp cl, 0x3f
jne 0x42f5b2
test cl, cl
je 0x42f5a4
inc eax
inc edi
cmp edi, 0x10
jl 0x42f56b
jmp 0x42f5a4
mov ecx, edx
xor edi, edi
sub ecx, eax
lea ebp, [ecx + 0x3c]
mov cl, byte [eax]
cmp cl, byte [eax + ebp]
jne 0x42f5b2
test cl, cl
je 0x42f5a4
inc eax
inc edi
cmp edi, 0x10
jl 0x42f592
push edx
lea edx, [esp + 0x34]
push edx
call fcn.00407c90
add esp, 8
mov eax, dword [0x480db8]
inc ebx
cmp ebx, eax
jl 0x42f530
mov eax, dword [esp + 0x34]
mov edi, 1
cmp eax, edi
jne 0x42f5f4
lea eax, [esp + 0x30]
push 0
push eax
call fcn.00407cf0
lea ecx, [esp + 0x38]
mov dword [esi + 0xd0], eax
push ecx
mov dword [esi + 0xcc], edi
call fcn.00407c50
add esp, 0xc
jmp 0x42f615
jle 0x42f608
mov edx, dword [esp + 0x30]
mov dword [esi + 0xcc], eax
mov dword [esi + 0xd0], edx
jmp 0x42f615
lea eax, [esp + 0x30]
push eax
call fcn.00407c50
add esp, 4
mov eax, dword [esi + 0xcc]
test eax, eax
jne 0x42f622
or dword [esi + 0x48], edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xb8
ret