Function at 0x417d30
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x61bc30
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push esi
push edi
mov ebx, ecx
mov esi, dword [esp + 0x30]
mov eax, dword [ebx + 0x2d8]
mov dword [esp + 0x28], 1
lea edi, [esi + 1]
cmp edi, eax
jb 0x417d68
xor edi, edi
call fcn.00403de0
and eax, 0xffff
mov dword [esp + 0x1c], 0
shl esi, 4
mov dword [esp + 0x18], eax
add esi, ebx
fild qword [esp + 0x18]
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x2e4]
mov cl, byte [esi + 0x2e8]
fmul dword [0x622f6c]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
xor edx, edx
mov byte [esp + 0x18], al
mov dl, byte [esi + 0x2e5]
xor eax, eax
mov al, byte [esi + 0x2e9]
mov dword [esp + 0xc], edx
fstp st(0)
fild dword [esp + 0xc]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
xor ecx, ecx
xor edx, edx
mov cl, byte [esi + 0x2e6]
mov dl, byte [esi + 0x2ea]
fstp st(0)
mov dword [esp + 0xc], ecx
mov byte [esp + 0x19], al
fild dword [esp + 0xc]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
mov byte [esp + 0x1a], al
xor eax, eax
mov al, byte [esi + 0x2e7]
xor ecx, ecx
mov cl, byte [esi + 0x2eb]
mov dword [esp + 0xc], eax
fstp st(0)
fild dword [esp + 0xc]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
fstp st(0)
fstp st(0)
mov byte [esp + 0x1b], al
call fcn.00403de0
and eax, 0xffff
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], eax
fild qword [esp + 0x10]
shl edi, 4
add edi, ebx
xor edx, edx
fmul dword [0x622f6c]
mov dl, byte [edi + 0x2e4]
xor eax, eax
mov dword [esp + 0xc], edx
mov al, byte [edi + 0x2e8]
fild dword [esp + 0xc]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
xor ecx, ecx
xor edx, edx
mov cl, byte [edi + 0x2e5]
mov dl, byte [edi + 0x2e9]
fstp st(0)
mov dword [esp + 0xc], ecx
mov byte [esp + 0x10], al
fild dword [esp + 0xc]
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
mov byte [esp + 0x11], al
xor eax, eax
mov al, byte [edi + 0x2e6]
xor ecx, ecx
mov cl, byte [edi + 0x2ea]
mov dword [esp + 0xc], eax
fstp st(0)
fild dword [esp + 0xc]
mov dword [esp + 0xc], ecx
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
xor edx, edx
mov byte [esp + 0x12], al
mov dl, byte [edi + 0x2e7]
xor eax, eax
mov al, byte [edi + 0x2eb]
mov dword [esp + 0xc], edx
fstp st(0)
fild dword [esp + 0xc]
mov dword [esp + 0xc], eax
fild dword [esp + 0xc]
fsub st(1)
fmul st(2)
fadd st(1)
call fcn.00608fb4
mov edx, dword [esp + 0x18]
mov byte [esp + 0x13], al
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x11]
mov ecx, edi
and edx, 0xff
and ecx, 0xff
and eax, 0xff
sub ecx, edx
mov edx, dword [esp + 0x12]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x19]
fstp st(0)
and ecx, 0xff
and edx, 0xff
fstp st(0)
fild dword [esp + 0xc]
sub eax, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1a]
fild dword [esp + 0xc]
and eax, 0xff
sub edx, eax
mov dword [esp + 0xc], edx
fild dword [esp + 0xc]
mov ecx, dword [esp + 0x13]
mov edx, dword [esp + 0x1b]
and ecx, 0xff
and edx, 0xff
sub ecx, edx
mov dword [esp + 0xc], ecx
push ecx
fild dword [esp + 0x10]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fld st(4)
fmul st(5)
faddp st(1)
fstp dword [esp]
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
call fcn.005917c0
add esp, 4
fstp dword [esp + 0xc]
call fcn.00403de0
and eax, 0xffff
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
fild qword [esp + 0x18]
add eax, 0x2e
mov ecx, dword [esp + 0x20]
shl eax, 4
fmul dword [0x622f68]
fsubr dword [0x6222d4]
fmul dword [eax + ebx]
mov eax, dword [esp + 0x34]
fadd dword [0x6222d4]
fmul dword [esi + 0x2dc]
mov dword [eax], edi
pop edi
pop esi
pop ebx
fmul dword [0x622c14]
fdivr dword [esp]
fstp dword [eax + 8]
mov dword fs:[0], ecx
add esp, 0x20
ret 8