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

Disassembly:
push 0xffffffffffffffff
push 0x6a3775
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1a0
push ebx
mov ebx, ecx
push esi
push edi
lea ecx, [esp + 0x6c]
call fcn.00470f30
lea ecx, [esp + 0x8c]
mov dword [esp + 0x1b4], 0
call fcn.00470f30
mov byte [esp + 0x1b4], 1
call fcn.004c67e0
mov edi, eax
mov dword [esp + 0x44], edi
call fcn.004c68d0
fstp dword [esp + 0x40]
call fcn.004c69e0
fmul dword [0x6c8ac0]
mov ecx, dword [ebx + 0xd0]
xor eax, eax
test ecx, ecx
mov dword [esp + 0x48], eax
fstp dword [esp + 0x1c]
jle 0x4beba1
push ebp
mov ecx, dword [ebx + 0xd4]
lea edx, [esp + 0x1c]
push edx
mov esi, dword [ecx + eax*4]
lea eax, [esp + 0x1c]
push eax
push 0
mov ecx, esi
call fcn.004710a0
lea ecx, [esp + 0x24]
lea edx, [esp + 0x28]
push ecx
push edx
push 1
mov ecx, esi
call fcn.004710a0
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x10]
lea ecx, [esp + 0x14]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x24]
push eax
push ecx
push edx
call fcn.00465fb0
fld dword [esp + 0x2c]
fmul dword [esp + 0x5c]
add esp, 0x18
fadd dword [esp + 0x18]
fstp dword [esp + 0x28]
fld dword [esp + 0x10]
fmul dword [esp + 0x44]
mov ecx, dword [esp + 0x28]
fadd dword [esp + 0x1c]
fstp dword [esp + 0x24]
mov eax, dword [esp + 0x24]
push eax
push ecx
push 1
mov ecx, esi
call fcn.00471130
cmp edi, 1
je 0x4be43b
cmp edi, 2
je 0x4be43b
cmp edi, 3
jne 0x4beb89
mov eax, dword [ebx + 0x38]
xor ebp, ebp
test eax, eax
jle 0x4beb89
mov edx, dword [ebx + 0x3c]
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x2c]
push 0x3d4ccccd
mov esi, dword [edx + ebp*4]
mov edx, dword [esp + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.0047acf0
add esp, 0x14
test al, al
jne 0x4be47c
mov eax, dword [ebx + 0x38]
inc ebp
cmp ebp, eax
jl 0x4be448
jmp 0x4beb89
cmp edi, 3
jne 0x4be57e
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x50]
lea ecx, [esp + 0x64]
push eax
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
push ecx
push eax
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x34]
push eax
push ecx
call fcn.004af180
fld dword [esp + 0x44]
add esp, 0x24
lea edx, [esp + 0x5c]
lea eax, [esp + 0x6c]
push edx
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
fchs
fstp dword [esp]
push eax
push ecx
push eax
push ecx
mov ecx, dword [esp + 0x38]
push ecx
push edx
call fcn.004af180
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
add esp, 0x24
lea eax, [esp + 0x30]
push 0x3d4ccccd
push eax
push ecx
push edx
mov ecx, esi
call fcn.00473c60
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
push eax
inc edx
push ecx
push edx
mov ecx, esi
call fcn.00471170
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x64]
push eax
add edx, 2
push ecx
push edx
mov ecx, esi
call fcn.00471170
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x6c]
push eax
add edx, edi
push ecx
push edx
mov ecx, esi
call fcn.00471170
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
push eax
add edx, 4
push ecx
push edx
mov ecx, esi
call fcn.00471170
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x18]
push eax
add edx, 5
push ecx
push edx
mov ecx, esi
call fcn.00471170
jmp 0x4beb89
push esi
lea ecx, [esp + 0x74]
call fcn.00471310
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push 0x3d4ccccd
push eax
push ecx
lea ecx, [esp + 0x7c]
call fcn.00473ea0
lea ecx, [esp + 0x70]
call fcn.00472510
fst dword [esp + 0x2c]
fcomp dword [esp + 0x20]
fnstsw ax
test ah, 1
jne 0x4be67f
lea ecx, [esp + 0xf0]
call fcn.00470f30
lea ecx, [esp + 0x130]
mov byte [esp + 0x1b8], 2
call fcn.00470f30
fld dword [esp + 0x2c]
fsub dword [esp + 0x20]
lea edx, [esp + 0x130]
lea eax, [esp + 0xf0]
push edx
push eax
push ecx
lea ecx, [esp + 0x7c]
mov byte [esp + 0x1c4], 3
fstp dword [esp]
call fcn.00472980
lea ecx, [esp + 0xf0]
push ecx
lea ecx, [esp + 0x74]
call fcn.00471310
lea ecx, [esp + 0x70]
call fcn.00471090
test eax, eax
jne 0x4be652
lea edx, [esp + 0x10]
lea eax, [esp + 0x14]
push edx
push eax
push 0
lea ecx, [esp + 0x13c]
call fcn.004710a0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push ecx
push edx
lea ecx, [esp + 0x78]
call fcn.00471100
lea ecx, [esp + 0x130]
mov byte [esp + 0x1b8], 2
call fcn.00470ff0
lea ecx, [esp + 0xf0]
mov byte [esp + 0x1b8], 1
call fcn.00470ff0
jmp 0x4be78e
lea ecx, [esp + 0x110]
call fcn.00470f30
lea ecx, [esp + 0x170]
mov byte [esp + 0x1b8], 4
call fcn.00470f30
mov ecx, dword [ebx + 0x38]
xor edx, edx
fld dword [esp + 0x20]
lea eax, [ecx + ebp - 1]
mov byte [esp + 0x1b8], 5
div ecx
fsub dword [esp + 0x2c]
mov eax, dword [ebx + 0x3c]
lea ecx, [esp + 0x170]
push ecx
mov edi, dword [eax + edx*4]
lea edx, [esp + 0x114]
fstp dword [esp + 0x30]
push edx
mov ecx, edi
call fcn.00472510
fsub dword [esp + 0x34]
push ecx
mov ecx, edi
fstp dword [esp]
call fcn.00472980
lea eax, [esp + 0x110]
mov ecx, edi
push eax
call fcn.00471310
mov ecx, edi
call fcn.00471090
test eax, eax
jne 0x4be72c
lea ecx, [esp + 0x10]
lea edx, [esp + 0x14]
push ecx
push edx
push eax
lea ecx, [esp + 0x17c]
call fcn.004710a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, edi
call fcn.00471100
lea ecx, [esp + 0x70]
call fcn.00471050
lea edx, [esp + 0x10]
lea eax, [esp + 0x14]
push edx
push eax
mov ecx, edi
call fcn.00471090
dec eax
mov ecx, edi
push eax
call fcn.004710a0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push ecx
push edx
lea ecx, [esp + 0x78]
call fcn.00471100
lea ecx, [esp + 0x170]
mov byte [esp + 0x1b8], 4
call fcn.00470ff0
lea ecx, [esp + 0x110]
mov byte [esp + 0x1b8], 1
call fcn.00470ff0
mov edi, dword [esp + 0x48]
push esi
lea ecx, [esp + 0x94]
call fcn.00471310
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push 0x3d4ccccd
push eax
push ecx
lea ecx, [esp + 0x9c]
call fcn.00473da0
lea ecx, [esp + 0x90]
call fcn.00472510
fst dword [esp + 0x2c]
fcomp dword [esp + 0x20]
fnstsw ax
test ah, 1
jne 0x4be8a9
lea ecx, [esp + 0xb0]
call fcn.00470f30
lea ecx, [esp + 0x150]
mov byte [esp + 0x1b8], 6
call fcn.00470f30
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x150]
lea eax, [esp + 0xb0]
push edx
push eax
push ecx
lea ecx, [esp + 0x9c]
mov byte [esp + 0x1c4], 7
call fcn.00472980
lea edx, [esp + 0x150]
lea ecx, [esp + 0x90]
push edx
call fcn.00471310
lea ecx, [esp + 0x90]
call fcn.00471090
test eax, eax
jne 0x4be87c
lea eax, [esp + 0x10]
lea ecx, [esp + 0x14]
push eax
push ecx
lea ecx, [esp + 0xb8]
call fcn.00471090
dec eax
lea ecx, [esp + 0xb8]
push eax
call fcn.004710a0
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push edx
push eax
lea ecx, [esp + 0x98]
call fcn.00471100
lea ecx, [esp + 0x150]
mov byte [esp + 0x1b8], 6
call fcn.00470ff0
lea ecx, [esp + 0xb0]
mov byte [esp + 0x1b8], 1
call fcn.00470ff0
jmp 0x4be9b9
lea ecx, [esp + 0xd0]
call fcn.00470f30
lea ecx, [esp + 0x190]
mov byte [esp + 0x1b8], 8
call fcn.00470f30
mov ecx, dword [ebx + 0x38]
lea eax, [ebp + 1]
xor edx, edx
mov byte [esp + 0x1b8], 9
div ecx
fld dword [esp + 0x20]
fsub dword [esp + 0x2c]
mov ecx, dword [ebx + 0x3c]
lea eax, [esp + 0xd0]
mov edi, dword [ecx + edx*4]
lea edx, [esp + 0x190]
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
mov ecx, edi
call fcn.00472980
lea edx, [esp + 0x190]
mov ecx, edi
push edx
call fcn.00471310
mov ecx, edi
call fcn.00471090
test eax, eax
jne 0x4be958
lea eax, [esp + 0x10]
lea ecx, [esp + 0x14]
push eax
push ecx
lea ecx, [esp + 0xd8]
call fcn.00471090
dec eax
lea ecx, [esp + 0xd8]
push eax
call fcn.004710a0
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push edx
push eax
mov ecx, edi
call fcn.00471100
lea ecx, [esp + 0x90]
call fcn.00471050
lea ecx, [esp + 0x10]
lea edx, [esp + 0x14]
push ecx
push edx
push 0
mov ecx, edi
call fcn.004710a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
lea ecx, [esp + 0x98]
call fcn.00471100
lea ecx, [esp + 0x190]
mov byte [esp + 0x1b8], 8
call fcn.00470ff0
lea ecx, [esp + 0xd0]
mov byte [esp + 0x1b8], 1
call fcn.00470ff0
mov edi, dword [esp + 0x48]
mov ecx, esi
call fcn.00471090
test eax, eax
jle 0x4be9d8
push 0
mov ecx, esi
call fcn.004711c0
mov ecx, esi
call fcn.00471090
test eax, eax
jg 0x4be9c4
lea ecx, [esp + 0x70]
xor ebp, ebp
call fcn.00471090
test eax, eax
jle 0x4bea1a
lea edx, [esp + 0x10]
lea eax, [esp + 0x14]
push edx
push eax
push ebp
lea ecx, [esp + 0x7c]
call fcn.004710a0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push ecx
push edx
mov ecx, esi
call fcn.00471100
lea ecx, [esp + 0x70]
inc ebp
call fcn.00471090
cmp ebp, eax
jl 0x4be9e7
cmp edi, 1
jne 0x4beb28
lea eax, [esp + 0x60]
lea ecx, [esp + 0x68]
push eax
push ecx
lea ecx, [esp + 0x78]
call fcn.00471090
dec eax
lea ecx, [esp + 0x78]
push eax
call fcn.004710a0
lea edx, [esp + 0x54]
lea eax, [esp + 0x58]
push edx
push eax
push 0
lea ecx, [esp + 0x9c]
call fcn.004710a0
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
push eax
push ecx
push eax
push ecx
mov ecx, dword [esp + 0x38]
push ecx
push edx
call fcn.004af180
fld dword [esp + 0x44]
add esp, 0x24
lea eax, [esp + 0x34]
lea ecx, [esp + 0x38]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x28]
push ecx
push ecx
mov ecx, dword [esp + 0x34]
fchs
fstp dword [esp]
push eax
push ecx
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
call fcn.004af180
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x68]
push eax
mov eax, dword [esp + 0x70]
push ecx
mov ecx, dword [esp + 0x94]
push edx
mov edx, dword [esp + 0xa0]
push eax
push ecx
push edx
call fcn.004af700
add esp, 0x44
test al, al
je 0x4beb0b
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
push eax
push ecx
mov ecx, esi
call fcn.00471100
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
push edx
jmp 0x4beb36
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
push ecx
push edx
mov ecx, esi
call fcn.00471100
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
push eax
push ecx
jmp 0x4beb37
cmp edi, 2
jne 0x4beb3e
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
push edx
push eax
mov ecx, esi
call fcn.00471100
lea ecx, [esp + 0x90]
xor ebp, ebp
call fcn.00471090
test eax, eax
jle 0x4beb89
lea ecx, [esp + 0x10]
lea edx, [esp + 0x14]
push ecx
push edx
push ebp
lea ecx, [esp + 0x9c]
call fcn.004710a0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, esi
call fcn.00471100
lea ecx, [esp + 0x90]
inc ebp
call fcn.00471090
cmp ebp, eax
jl 0x4beb50
mov eax, dword [esp + 0x4c]
mov ecx, dword [ebx + 0xd0]
inc eax
cmp eax, ecx
mov dword [esp + 0x4c], eax
jl 0x4be3a0
pop ebp
test edi, edi
je 0x4bebb9
lea esi, [ebx + 0xcc]
mov ecx, esi
call fcn.00470c60
mov ecx, esi
call fcn.005758b0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x1b4], 0
call fcn.00470ff0
lea ecx, [esp + 0x6c]
mov dword [esp + 0x1b4], 0xffffffff
call fcn.00470ff0
mov ecx, dword [esp + 0x1ac]
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x1ac
ret