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

Disassembly:
pushfd
mov eax, dword [0x1560710]
push ecx
mov ecx, dword [fcn.00407ad0]
rol eax, cl
pop ecx
mov eax, dword [eax]
popfd
jmp 0x462aab
push 0xffffffffffffffff
push 0x837c73
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2f4
push ebx
push ebp
push esi
xor esi, esi
push edi
mov dword [esp + 0x288], esi
mov dword [esp + 0x28c], esi
mov dword [esp + 0x30c], esi
mov dword [esp + 0x2d0], esi
mov dword [esp + 0x2d4], esi
push 0xffffffffffffffff
mov byte [esp + 0x310], 1
call fcn.0056e230
add esp, 4
cmp word [eax + 0x1c], si
je 0x462d98
push esi
push 0xffffffffffffffff
call fcn.0056e0d0
add esp, 8
test eax, eax
je 0x462d98
mov al, byte [0xa43584]
test al, al
jne 0x462a6e
mov ecx, 0x51
mov eax, case.0x7dab5d.5
mov edi, 0xa43438
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov ecx, dword [0xb7cb4c]
and ecx, 0xf
imul ecx, ecx, 0x145
mov eax, ecx
cdq
and edx, 0xf
add eax, edx
mov ebp, eax
lea eax, [ecx + 0x145]
cdq
and edx, 0xf
add eax, edx
mov ecx, eax
sar ebp, 4
sar ecx, 4
mov byte [0xa43584], 1
mov dword [esp + 0x2c], ecx
jmp 0x402033
cmp eax, ecx
mov dword [esp + 0x18], ebp
jl 0x462ab5
mov eax, ecx
cmp ebp, eax
jge 0x462d9f
mov edi, dword [ebp*4 + 0xa435a0]
movzx eax, di
mov eax, dword [eax*4 + 0x96f854]
cmp eax, esi
mov dword [esp + 0x10], edi
je 0x4632e2
mov esi, edi
shr esi, 0x10
imul esi, esi, 0x1c
movsx ecx, word [esi + eax + 8]
add esi, eax
mov dword [esp + 0x10], ecx
lea edx, [esp + 0x1c4]
fild dword [esp + 0x10]
push 0xffffffffffffffff
push edx
fmul dword [0x858c48]
fstp dword [esp + 0x94]
call fcn.0056e010
fld dword [eax]
fsub dword [esp + 0x94]
add esp, 8
fst dword [esp + 0x10]
fcomp dword [0x859ce8]
fnstsw ax
test ah, 0x41
jne 0x4632db
fld dword [esp + 0x10]
fcomp dword [0x85991c]
fnstsw ax
test ah, 5
jp 0x4632db
movsx eax, word [esi + 0xa]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x218]
push 0xffffffffffffffff
fild dword [esp + 0x18]
push ecx
fmul dword [0x858c48]
fstp dword [esp + 0x40]
call fcn.0056e010
fld dword [eax + 4]
fsub dword [esp + 0x40]
add esp, 8
fst dword [esp + 0x14]
fcomp dword [0x859ce8]
fnstsw ax
test ah, 0x41
jne 0x4632db
fld dword [esp + 0x14]
fcomp dword [0x85991c]
fnstsw ax
test ah, 5
jp 0x4632db
fld dword [esp + 0x14]
fmul dword [esp + 0x14]
fld dword [esp + 0x10]
fmul dword [esp + 0x10]
faddp st(1)
fsqrt
fcomp dword [0x85991c]
fnstsw ax
test ah, 5
jp 0x4632db
mov al, byte [ebp + 0xa43438]
test al, al
jne 0x4632e2
push 0xffffffffffffffff
mov byte [ebp + 0xa43438], 1
call fcn.0056e230
movzx ebx, word [eax + 0x1c]
add esp, 4
call fcn.00821b1e
and eax, 0x7f
cmp eax, ebx
jge 0x4632e2
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x2c]
push eax
push edi
call fcn.00460ee0
add esp, 0xc
test al, al
je 0x4632e2
mov al, byte [esi + 0x16]
test al, al
je 0x462ebc
movzx ecx, al
mov dword [esp + 0x10], ecx
lea edx, [esp + 0x1c]
fild dword [esp + 0x10]
push edx
lea eax, [esp + 0x1f8]
fmul dword [0x858620]
fstp dword [esp + 0x14]
mov ebp, dword [esp + 0x14]
push ebp
push eax
call fcn.0040fe90
add esp, 0xc
push eax
lea ecx, [esp + 0xc0]
push ecx
mov ecx, esi
call fcn.00420a10
push eax
lea edx, [esp + 0x19c]
push edx
call fcn.0040fe30
fld dword [esp + 0x34]
fmul dword [0x858b8c]
mov edi, eax
lea eax, [esp + 0x28]
push eax
fadd dword [esp + 0x20]
lea ecx, [esp + 0xe4]
fstp dword [esp + 0x20]
mov ebx, dword [esp + 0x20]
push ebx
push ecx
call fcn.0040fe90
add esp, 0x18
push eax
lea edx, [esp + 0x234]
push edx
mov ecx, esi
call fcn.00420a10
push eax
lea eax, [esp + 0xf4]
push eax
call fcn.0040fe30
mov edx, dword [edi]
add esp, 0xc
push 0
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [edi + 4]
mov dword [ecx + 4], edx
mov edx, dword [edi + 8]
mov dword [ecx + 8], edx
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
call fcn.004619c0
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0x1cc]
push ebx
push edx
call fcn.0040fe90
add esp, 0x28
push eax
lea eax, [esp + 0x108]
push eax
mov ecx, esi
call fcn.00420a10
push eax
lea ecx, [esp + 0x214]
push ecx
call fcn.0040fe60
mov edi, eax
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x12c]
push ebp
push eax
call fcn.0040fe90
add esp, 0x18
push eax
lea ecx, [esp + 0x9c]
push ecx
mov ecx, esi
call fcn.00420a10
push eax
lea edx, [esp + 0x13c]
push edx
call fcn.0040fe60
mov edx, dword [edi]
add esp, 0xc
push 0
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [edi + 4]
mov dword [ecx + 4], edx
mov edx, dword [edi + 8]
mov dword [ecx + 8], edx
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
call fcn.004619c0
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x48]
add esp, 0x1c
inc ebp
xor esi, esi
jmp 0x462aa6
mov byte [0xa43584], 0
mov esi, dword [0xb7cb4c]
and esi, 0xf
imul esi, esi, 0x1c
mov al, byte [esi + 0xa43ad0]
test al, al
je 0x4632f5
fld dword [esi + 0xa43ac0]
lea ecx, [esp + 0x80]
fadd dword [esi + 0xa43acc]
push 0xffffffffffffffff
fld dword [esi + 0xa43abc]
push ecx
fadd dword [esi + 0xa43ac8]
fld dword [esi + 0xa43ac4]
fadd dword [esi + 0xa43ab8]
fstp dword [esp + 0x3c]
fxch st(1)
fmul dword [0x858b8c]
fstp dword [esp + 0x34]
fmul dword [0x858b8c]
fstp dword [esp + 0x38]
fld dword [esp + 0x3c]
fmul dword [0x858b8c]
fstp dword [esp + 0x3c]
call fcn.0056e010
fld dword [esp + 0x34]
add esp, 8
fsub dword [eax + 8]
fld dword [esp + 0x30]
fsub dword [eax + 4]
fld dword [esp + 0x34]
fsub dword [eax]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fcomp dword [0x85991c]
fnstsw ax
test ah, 5
jp 0x4632ee
mov al, byte [esi + 0xa43ad1]
test al, al
je 0x4632f5
movzx edx, byte [esi + 0xa43ad2]
mov ecx, dword [esi + 0xa43ac4]
push edx
mov edx, dword [esi + 0xa43ac8]
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esi + 0xa43acc]
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov eax, dword [esi + 0xa43ab8]
mov ecx, dword [esi + 0xa43abc]
sub esp, 0xc
mov edx, esp
mov dword [edx], eax
mov eax, dword [esi + 0xa43ac0]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
call fcn.004619c0
add esp, 0x1c
mov byte [esi + 0xa43ad1], 0
jmp 0x4632f5
mov eax, dword [0xa43580]
xor ebx, ebx
test eax, eax
jle 0x4631f7
jmp 0x462ed0
cmp ebp, ebx
mov eax, dword [ebx*4 + 0xa435a0]
mov dword [esp + 0x10], eax
je 0x4632c8
mov cl, byte [ebx + 0xa43438]
test cl, cl
jne 0x4632c8
movzx ecx, ax
mov eax, dword [ecx*4 + 0x96f854]
test eax, eax
je 0x4632c8
mov edi, dword [esp + 0x10]
shr edi, 0x10
imul edi, edi, 0x1c
lea edx, [esp + 0x23c]
push edx
mov ecx, esi
add edi, eax
call fcn.00420a10
mov ebp, eax
lea eax, [esp + 0x14c]
push eax
mov ecx, edi
call fcn.00420a10
fld dword [ebp]
fsub dword [eax]
fcom dword [0x859ce4]
fnstsw ax
test ah, 0x41
jne 0x4632c2
fcomp dword [0x858ca4]
fnstsw ax
test ah, 5
jp 0x4632c4
lea ecx, [esp + 0x1dc]
push ecx
mov ecx, esi
call fcn.00420a10
lea edx, [esp + 0x164]
push edx
mov ecx, edi
mov ebp, eax
call fcn.00420a10
fld dword [ebp + 4]
fsub dword [eax + 4]
fcom dword [0x859ce4]
fnstsw ax
test ah, 0x41
jne 0x4632c2
fcomp dword [0x858ca4]
fnstsw ax
test ah, 5
jp 0x4632c4
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x34]
push ecx
push edx
call fcn.00460ee0
add esp, 0xc
test al, al
je 0x4632c4
fld dword [esp + 0x28]
fcomp dword [esp + 0x30]
fnstsw ax
test ah, 0x44
jp 0x4632c4
fld dword [esp + 0x64]
fmul dword [esp + 0x1c]
fld dword [esp + 0x6c]
fmul dword [esp + 0x24]
faddp st(1)
fld dword [esp + 0x68]
fmul dword [esp + 0x20]
faddp st(1)
fabs
fcomp dword [0x858cb0]
fnstsw ax
test ah, 0x41
jne 0x4632c4
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x228]
push ecx
mov ecx, esi
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0x3f800000
call fcn.00420a10
push eax
lea edx, [esp + 0x184]
push edx
call fcn.0040fe30
mov ecx, dword [eax]
mov dword [esp + 0x58], ecx
mov edx, dword [eax + 4]
add esp, 0xc
mov dword [esp + 0x50], edx
mov eax, dword [eax + 8]
lea ecx, [esp + 0x70]
push ecx
lea edx, [esp + 0xa8]
push edx
mov ecx, edi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0x3f800000
call fcn.00420a10
push eax
lea eax, [esp + 0xb8]
push eax
call fcn.0040fe30
mov ecx, dword [eax]
push 0
push 0
push 0
push 0
push 0
push 0
mov dword [esp + 0x7c], ecx
mov edx, dword [eax + 4]
push 0
push 1
mov dword [esp + 0x88], edx
mov eax, dword [eax + 8]
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x308]
mov dword [esp + 0x90], eax
push edx
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0x84]
push ecx
call fcn.0056ba00
add esp, 0x3c
test al, al
jne 0x4632c4
lea edx, [esp + 0xc8]
push edx
mov ecx, esi
call fcn.00420a10
push eax
lea eax, [esp + 0xe4]
push eax
mov ecx, edi
call fcn.00420a10
push eax
lea ecx, [esp + 0x100]
push ecx
call fcn.0040fe60
mov edx, dword [eax]
mov dword [esp + 0x28], edx
mov ecx, dword [eax + 4]
mov dword [esp + 0x2c], ecx
mov edx, dword [eax + 8]
add esp, 0xc
lea ecx, [esp + 0x1c]
mov dword [esp + 0x24], edx
call fcn.0059c910
fld dword [esp + 0x28]
fmul dword [0x858b8c]
lea eax, [esp + 0x1c]
push eax
lea edx, [esp + 0x114]
fstp dword [esp + 0x14]
mov ecx, dword [esp + 0x14]
push ecx
push edx
call fcn.0040fe90
add esp, 0xc
push eax
lea eax, [esp + 0x12c]
push eax
mov ecx, esi
call fcn.00420a10
push eax
lea ecx, [esp + 0x148]
push ecx
call fcn.0040fe60
lea edx, [esp + 0x28]
mov ebp, eax
mov eax, dword [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0x16c]
push ecx
call fcn.0040fe90
add esp, 0x18
push eax
lea edx, [esp + 0x174]
push edx
mov ecx, edi
call fcn.00420a10
push eax
lea eax, [esp + 0x190]
push eax
call fcn.0040fe30
mov edx, dword [ebp]
add esp, 0xc
push 0
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [ebp + 4]
mov dword [ecx + 4], edx
mov edx, dword [ebp + 8]
mov dword [ecx + 8], edx
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
call fcn.004619c0
add esp, 0x1c
mov byte [ebx + 0xa43438], 1
mov ebp, dword [esp + 0x18]
cmp ebx, dword [0xa43580]
jne 0x4632e2
fld dword [esp + 0x28]
lea ecx, [esp + 0x1c]
fmul dword [0x858b8c]
push ecx
lea edx, [esp + 0x1a4]
fstp dword [esp + 0x14]
mov ebx, dword [esp + 0x14]
push ebx
push edx
call fcn.0040fe90
add esp, 0xc
push eax
lea eax, [esp + 0x1bc]
push eax
mov ecx, esi
call fcn.00420a10
push eax
lea ecx, [esp + 0x1d8]
push ecx
call fcn.0040fe60
lea edx, [esp + 0x28]
push edx
mov edi, eax
lea eax, [esp + 0x1f8]
push ebx
push eax
call fcn.0040fe90
add esp, 0x18
push eax
lea ecx, [esp + 0x204]
push ecx
mov ecx, esi
call fcn.00420a10
push eax
lea edx, [esp + 0x88]
push edx
call fcn.0040fe30
mov edx, dword [edi]
add esp, 0xc
push 0
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [edi + 4]
mov dword [ecx + 4], edx
mov edx, dword [edi + 8]
mov dword [ecx + 8], edx
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov dword [ecx + 8], eax
call fcn.004619c0
mov ecx, dword [esp + 0x48]
add esp, 0x1c
inc ebp
xor esi, esi
jmp 0x462aa6
fstp st(0)
mov ebp, dword [esp + 0x18]
mov eax, dword [0xa43580]
inc ebx
cmp ebx, eax
jl 0x462ed0
jmp 0x4631f7
mov byte [ebp + 0xa43438], 0
mov ecx, dword [esp + 0x2c]
inc ebp
xor esi, esi
jmp 0x462aa6
mov byte [esi + 0xa43ad1], 1
lea ecx, [esp + 0x290]
mov byte [esp + 0x30c], 0
call fcn.0059acd0
lea ecx, [esp + 0x248]
mov dword [esp + 0x30c], 0xffffffff
call fcn.0059acd0
mov ecx, dword [esp + 0x304]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x300
ret