Function at 0x502120
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x654f41
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x702ca8]
xor eax, esp
push eax
lea eax, [esp + 0x20]
mov dword fs:[0], eax
mov esi, ecx
call fcn.00562c80
push ecx
mov eax, esp
mov dword [esp + 0x14], esp
push ecx
mov dword [eax], 0xffffffff
mov eax, esp
mov ecx, esi
mov dword [esp + 0x18], esp
mov dword [eax], 0x11170
call fcn.00562ef0
push ecx
mov eax, esp
mov dword [eax], 2
mov ecx, dword [esi + 0x2c8]
mov dword [esp + 0x14], esp
call fcn.005876b0
fld1
mov eax, dword [0x717c9c]
push ecx
mov ecx, dword [eax + 0x24]
fstp dword [esp]
mov ecx, dword [ecx + 0xc]
add ecx, 0x308
call fcn.00441d40
fstp dword [esi + 0x404]
push 0xd0
call fcn.00604431
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
mov dword [esp + 0x28], 0
je 0x5021d0
mov ecx, eax
call fcn.005a8e20
mov edi, eax
jmp 0x5021d2
xor edi, edi
mov edx, dword [0x717c9c]
mov eax, dword [edx + 0x24]
mov ecx, dword [eax + 0xc]
push 0
push edi
mov dword [esp + 0x30], 0xffffffff
call fcn.0043e050
fld dword [0x6ddcf8]
push ecx
mov eax, esp
fstp dword [eax]
mov dword [esp + 0x14], esp
fldz
sub esp, 0xc
fst dword [esp + 0x24]
mov eax, esp
fld dword [0x692988]
mov ecx, dword [esp + 0x24]
mov dword [eax], ecx
fstp dword [esp + 0x28]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], esp
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
mov dword [eax + 4], edx
push ecx
mov dword [eax + 8], ecx
mov eax, esp
mov ecx, edi
mov dword [esp + 0x24], esp
mov dword [eax], esi
call fcn.005a93c0
mov ecx, edi
call fcn.00433f10
mov ecx, edi
call fcn.00433fc0
push ecx
mov eax, esp
lea ebx, [esi + 0x200]
mov ecx, ebx
mov dword [esp + 0x14], esp
mov dword [eax], edi
call fcn.00433d20
push 0xd0
call fcn.00604431
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
mov dword [esp + 0x28], 1
je 0x50228a
mov ecx, eax
call fcn.005a8e20
mov edi, eax
jmp 0x50228c
xor edi, edi
mov edx, dword [0x717c9c]
mov eax, dword [edx + 0x24]
mov ecx, dword [eax + 0xc]
push 0
push edi
mov dword [esp + 0x30], 0xffffffff
call fcn.0043e050
fld dword [0x69268c]
push ecx
mov eax, esp
fstp dword [eax]
mov dword [esp + 0x14], esp
fld dword [0x6ddce8]
sub esp, 0xc
fstp dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
fldz
mov eax, esp
mov dword [eax], ecx
fst dword [esp + 0x28]
mov edx, dword [esp + 0x28]
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], esp
mov dword [eax + 4], edx
push ecx
mov dword [eax + 8], ecx
mov eax, esp
mov ecx, edi
mov dword [esp + 0x24], esp
mov dword [eax], esi
call fcn.005a93c0
mov ecx, edi
call fcn.00433f10
mov ecx, edi
call fcn.00433fc0
push ecx
mov eax, esp
mov ecx, ebx
mov dword [esp + 0x14], esp
mov dword [eax], edi
call fcn.00433d20
push 0xd0
call fcn.00604431
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
mov dword [esp + 0x28], 2
je 0x50233e
mov ecx, eax
call fcn.005a8e20
mov edi, eax
jmp 0x502340
xor edi, edi
mov edx, dword [0x717c9c]
mov eax, dword [edx + 0x24]
mov ecx, dword [eax + 0xc]
push 0
push edi
mov dword [esp + 0x30], 0xffffffff
call fcn.0043e050
fld dword [0x69268c]
push ecx
mov eax, esp
fstp dword [eax]
mov dword [esp + 0x14], esp
fld dword [0x692980]
sub esp, 0xc
fstp dword [esp + 0x24]
mov ecx, dword [esp + 0x24]
fldz
mov eax, esp
mov dword [eax], ecx
fst dword [esp + 0x28]
mov edx, dword [esp + 0x28]
fstp dword [esp + 0x2c]
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], esp
mov dword [eax + 4], edx
push ecx
mov dword [eax + 8], ecx
mov eax, esp
mov ecx, edi
mov dword [esp + 0x24], esp
mov dword [eax], esi
call fcn.005a93c0
mov ecx, edi
call fcn.00433f10
mov ecx, edi
call fcn.00433fc0
push ecx
mov eax, esp
mov ecx, ebx
mov dword [esp + 0x14], esp
mov dword [eax], edi
call fcn.00433d20
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x1c
ret