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

Disassembly:
sub esp, 0x6c
push esi
mov esi, dword [esp + 0x74]
mov al, byte [esi + 0x40]
test al, al
je 0x481395
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x6c], 0x3f800000
mov dword [esp + 0x58], 0x3f800000
mov dword [esp + 0x44], 0x3f800000
mov dword [esp + 0x30], 0x3f800000
jmp 0x4813a2
push esi
push 0
lea eax, [esp + 0x38]
push eax
call fcn.004a92b1
mov edx, dword [esp + 0x78]
lea ecx, [esp + 0x30]
push ecx
push edx
lea eax, [esp + 0x2c]
push eax
call fcn.004a87ac
fld dword [esp + 0x7c]
mov edx, dword [esi + 0x44]
fmul dword [esp + 0x7c]
xor eax, eax
cmp word [edx + 4], ax
fstp dword [esp + 0x7c]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
jbe 0x4815a8
push ebx
push ebp
mov dword [esp + 0x7c], eax
push edi
mov ecx, dword [edx]
mov edi, dword [esp + 0x80]
mov eax, dword [ecx + edi + 0x18]
add ecx, edi
test eax, eax
mov dword [esp + 0x2c], ecx
je 0x48157f
mov eax, dword [eax + 4]
movzx esi, word [eax + 0x2a2]
cmp esi, 0xffff
mov edx, dword [ecx + 0x40]
mov ebp, dword [edx + 4]
mov edi, dword [eax + 0x16c]
movzx ebx, word [eax + 0x2ae]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], edi
je 0x48157b
cmp ebx, 0xffff
je 0x48157b
mov eax, dword [ecx + 0x44]
and eax, 0x7fffffff
add eax, dword [edx + 8]
mov edx, dword [ebp + 8]
imul eax, edi
add eax, edx
mov edx, dword [ecx + 4]
test edx, edx
lea ebp, [eax + esi]
mov dword [esp + 0x14], 0
jbe 0x48157b
sub eax, ebp
add eax, ebx
mov dword [esp + 0x10], eax
lea esp, [esp]
fld dword [esp + 0x38]
fsub dword [ebp + 8]
fld dword [esp + 0x34]
fsub dword [ebp + 4]
fld dword [esp + 0x30]
fsub dword [ebp]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [esp + 0x88]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x481565
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + ebp]
movsx ecx, byte [esp + 0x8c]
movsx ebx, byte [esp + 0x94]
mov eax, edx
shr eax, 0x10
movzx eax, al
add eax, ecx
movsx ecx, byte [esp + 0x90]
movzx esi, dh
add esi, ecx
mov ecx, edx
and ecx, 0xff
mov edi, edx
and edi, 0xff000000
add ecx, ebx
cmp eax, 0xff
mov dword [esp + 0x20], edx
jle 0x4814ff
mov eax, 0xff
jmp 0x481509
cmp eax, 0x40
jge 0x481509
mov eax, 0x40
cmp esi, 0xff
jle 0x481518
mov esi, 0xff
jmp 0x481522
cmp esi, 0x40
jge 0x481522
mov esi, 0x40
cmp ecx, 0xff
jle 0x481531
mov ecx, 0xff
jmp 0x48153b
cmp ecx, 0x40
jge 0x48153b
mov ecx, 0x40
shl eax, 8
or eax, esi
shl eax, 8
or eax, ecx
or edi, eax
cmp edi, edx
je 0x481556
mov eax, dword [esp + 0x24]
or dword [eax + 4], 0x80000000
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x2c]
mov dword [edx + ebp], edi
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x14]
mov edx, dword [ecx + 4]
add ebp, edi
inc eax
cmp eax, edx
mov dword [esp + 0x14], eax
jb 0x481470
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x80]
movzx ecx, word [edx + 4]
inc eax
add edi, 0x4c
cmp eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x80], edi
jl 0x4813e0
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x6c
ret