Function at 0x504500
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x52eb7e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x184
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x130]
lea edi, [esi + 0x450]
push edi
call fcn.00489f30
lea eax, [esp + 0x10]
lea ecx, [esp + 0x20]
push eax
push ecx
mov ecx, dword [esi + 0x4dc]
mov dword [esp + 0x1a0], 0
add ecx, 0x18
call fcn.0047ded0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x130]
push edx
call fcn.0048a9d0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x130]
push eax
call fcn.0048a9d0
lea ecx, [esp + 0x30]
call fcn.00488210
lea ecx, [esp + 0x10]
lea edx, [esp + 0x20]
push ecx
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x1a0], 1
call fcn.00488a10
fld qword [esp + 0x48]
fmul qword [0x531170]
mov ecx, esi
fadd qword [esp + 0x30]
fstp qword [esp + 0x20]
fld qword [esp + 0x50]
fmul qword [0x531170]
fadd qword [esp + 0x38]
fstp qword [esp + 0x28]
call fcn.00498ba0
mov ebp, eax
lea eax, [esp + 0x180]
push eax
mov ecx, esi
call fcn.00498ba0
mov ecx, eax
call fcn.004881c0
mov ecx, dword [eax]
mov dword [esp + 0x10], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x14], edx
mov ecx, dword [eax + 8]
mov dword [esp + 0x18], ecx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x58], 0x534208
mov dword [esp + 0x1c], edx
mov dword [esp + 0xf0], 0
fld qword [esp + 0x18]
fsub qword [esp + 0x28]
fld qword [esp + 0x10]
fsub qword [esp + 0x20]
fld qword [esp + 0x30]
fadd st(1)
fstp qword [esp + 0x30]
fstp st(0)
fld qword [esp + 0x38]
fadd st(1)
fstp qword [esp + 0x38]
fstp st(0)
mov byte [esp + 0x198], 2
mov dword [esp + 0x100], 0
mov dword [esp + 0x104], 0
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0
mov dword [esp + 0x118], 0
lea eax, [esp + 0x30]
lea ecx, [esp + 0x58]
push eax
push ebp
mov dword [esp + 0x124], 0x3ff00000
mov dword [esp + 0x110], 0
mov dword [esp + 0x114], 0x3ff00000
mov dword [esp + 0x128], 0x47ae147b
mov dword [esp + 0x12c], 0x3f847ae1
mov dword [esp + 0x130], 0xeb1c432d
mov dword [esp + 0x134], 0x3f1a36e2
call fcn.00489260
test eax, eax
je 0x504769
fld qword [esp + 0x60]
fcom qword [esp + 0x68]
fld qword [esp + 0x48]
fnstsw ax
test ah, 0x41
jne 0x50472d
fmul st(1)
fadd qword [esp + 0x30]
fstp qword [esp + 0x10]
fld qword [esp + 0x50]
fmul st(1)
fadd qword [esp + 0x38]
fstp qword [esp + 0x18]
fstp st(0)
fld qword [esp + 0x48]
fmul qword [esp + 0x68]
fadd qword [esp + 0x30]
fstp qword [esp + 0x20]
fld qword [esp + 0x50]
fmul qword [esp + 0x68]
fadd qword [esp + 0x38]
fstp qword [esp + 0x28]
jmp 0x5047a1
fmul qword [esp + 0x68]
fadd qword [esp + 0x30]
fstp qword [esp + 0x10]
fld qword [esp + 0x50]
fmul qword [esp + 0x68]
fadd qword [esp + 0x38]
fstp qword [esp + 0x18]
fld qword [esp + 0x48]
fmul st(1)
fadd qword [esp + 0x30]
fstp qword [esp + 0x20]
fld qword [esp + 0x50]
fmul st(1)
fadd qword [esp + 0x38]
fstp qword [esp + 0x28]
fstp st(0)
jmp 0x5047a1
fld qword [esp + 0x48]
fadd qword [esp + 0x30]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x24], edx
fstp qword [esp + 0x10]
fld qword [esp + 0x38]
fadd qword [esp + 0x50]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
fstp qword [esp + 0x18]
push edi
lea ecx, [esp + 0x134]
call fcn.0048a6d0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x130]
push edx
call fcn.0048a9d0
lea eax, [esp + 0x10]
lea ecx, [esp + 0x130]
push eax
call fcn.0048a9d0
lea ecx, [esp + 0x10]
lea edx, [esp + 0x20]
push ecx
mov ecx, dword [esi + 0x4dc]
push edx
add ecx, 0x18
call fcn.0047dd90
mov eax, dword [esi + 0x4dc]
mov ecx, esi
push eax
call fcn.005018a0
lea ecx, [esp + 0x58]
mov byte [esp + 0x198], 1
call fcn.004891f0
lea ecx, [esp + 0x30]
mov byte [esp + 0x198], 0
call fcn.00519440
lea ecx, [esp + 0x130]
mov dword [esp + 0x198], 0xffffffff
call fcn.00519440
mov ecx, dword [esp + 0x190]
pop edi
mov dword fs:[0], ecx
pop esi
pop ebp
mov esp, ebp
pop ebp
ret 8