Function at 0x463fe0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4c9848
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x4eadc8]
xor eax, esp
mov dword [esp + 0x3c], eax
push edi
mov eax, dword [0x4eadc8]
xor eax, esp
push eax
lea eax, [esp + 0x48]
mov dword fs:[0], eax
movzx eax, word [ebx + 0x97c]
fld dword [esi + 0x4273c]
movsx edi, ax
fnstcw word [esp + 0xa]
movzx eax, word [esp + 0xa]
or eax, 0xc00
mov dword [esp + 0xc], eax
push 0x14
push 0
fldcw word [esp + 0x14]
push 0xc
fistp dword [esp + 0x18]
movzx eax, byte [esp + 0x18]
movzx ecx, al
fldcw word [esp + 0x16]
mov eax, 0x51eb851f
imul ecx, ecx, 0x61
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
mov ecx, dword [0x4efb90]
lea edx, [edi + 0x60]
push edx
push 0x2f
call fcn.0047a5d0
push 0x14
fld dword [esi + 0x42740]
push 0
fnstcw word [esp + 0x12]
movzx eax, word [esp + 0x12]
or eax, 0xc00
mov dword [esp + 0x14], eax
push 0xc
fldcw word [esp + 0x18]
fistp dword [esp + 0x18]
movzx eax, byte [esp + 0x18]
movzx ecx, al
fldcw word [esp + 0x16]
mov eax, 0x51eb851f
imul ecx, ecx, 0x61
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
mov ecx, dword [0x4efb90]
lea edx, [edi + 0x6e]
push edx
push 0x2f
call fcn.0047a5d0
push 0x14
fld dword [esi + 0x42744]
push 0
fnstcw word [esp + 0x12]
movzx eax, word [esp + 0x12]
or eax, 0xc00
mov dword [esp + 0x14], eax
push 0xc
fldcw word [esp + 0x18]
fistp dword [esp + 0x18]
movzx eax, byte [esp + 0x18]
movzx ecx, al
fldcw word [esp + 0x16]
mov eax, 0x51eb851f
imul ecx, ecx, 0x61
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
mov ecx, dword [0x4efb90]
lea edx, [edi + 0x7c]
push edx
push 0x2f
call fcn.0047a5d0
push 4
mov eax, dword [esi + 0x4270c]
push eax
lea ecx, [edi + 0x37]
xor eax, eax
push ecx
lea ecx, [eax + 0x55]
call fcn.004706a0
movsx edx, word [esi + 0x426f0]
push 4
push edx
lea eax, [edi + 0x44]
push eax
xor eax, eax
lea ecx, [eax + 0x55]
call fcn.004706a0
movsx ecx, word [esi + 0x426ee]
push 4
push ecx
lea edx, [edi + 0x50]
xor eax, eax
push edx
lea ecx, [eax + 0x55]
call fcn.004706a0
mov eax, dword [0x6391d8]
mov ecx, dword [0x4efb90]
add esp, 0x24
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.00489780
lea ecx, [esp + 0x10]
mov dword [esp + 0x50], 0
call fcn.00483db0
fld dword [esi + 0x4273c]
movsx edx, word [esi + 0x42700]
sub esp, 8
lea eax, [esp + 0x2c]
fstp qword [esp]
push edx
push 0x4e08b4
push eax
call fcn.0048dc72
movzx eax, word [ebx + 0x97c]
movzx ecx, word [ebx + 0x97a]
add esp, 0x14
cwde
movsx ecx, cx
lea edx, [esp + 0x24]
push edx
add eax, 0x60
add ecx, 0x2e
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00487220
movsx edx, word [esi + 0x42702]
fld dword [esi + 0x42740]
sub esp, 8
lea eax, [esp + 0x2c]
fstp qword [esp]
push edx
push 0x4e08b4
push eax
call fcn.0048dc72
movzx eax, word [ebx + 0x97c]
movzx ecx, word [ebx + 0x97a]
add esp, 0x14
cwde
movsx ecx, cx
lea edx, [esp + 0x24]
push edx
add eax, 0x6e
add ecx, 0x2e
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00487220
sub esp, 8
fld dword [esi + 0x42744]
fstp qword [esp]
movsx edx, word [esi + 0x42704]
push edx
lea eax, [esp + 0x30]
push 0x4e08b4
push eax
call fcn.0048dc72
movzx eax, word [ebx + 0x97c]
movzx ecx, word [ebx + 0x97a]
add esp, 0x14
cwde
movsx ecx, cx
lea edx, [esp + 0x24]
push edx
add eax, 0x7c
add ecx, 0x2e
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00487220
lea ecx, [esp + 0x10]
mov dword [esp + 0x50], 0xffffffff
call fcn.004897b0
movsx edx, word [esi + 0x426fa]
push 3
push edx
lea eax, [edi + 0x8f]
push eax
xor eax, eax
mov ecx, 0x89
call fcn.004706a0
movsx ecx, word [esi + 0x426fc]
push 3
push ecx
lea edx, [edi + 0x9d]
push edx
xor eax, eax
mov ecx, 0x89
call fcn.004706a0
movsx eax, word [esi + 0x426fe]
push 3
push eax
add edi, 0xab
push edi
xor eax, eax
mov ecx, 0x89
call fcn.004706a0
add esp, 0x24
mov edi, ebx
call fcn.00450230
cmp eax, 1
jne 0x464351
mov eax, dword [ebx + 0xa10]
test eax, eax
je 0x464351
cmp byte [eax + 0x14], 0
movsx ecx, word [ebx + 0x97c]
movsx edx, word [ebx + 0x97a]
je 0x464351
mov edi, dword [eax + 4]
test edi, edi
je 0x464334
push edi
movsx edi, word [eax + 0xe]
add edi, ecx
movsx ecx, word [eax + 0xc]
add ecx, edx
push edi
push ecx
mov ecx, dword [0x4efb90]
call fcn.0047d6a0
jmp 0x464351
mov edi, dword [eax + 8]
push edi
movsx edi, word [eax + 0xe]
movsx eax, word [eax + 0xc]
add edi, ecx
mov ecx, dword [0x4efb90]
push edi
add eax, edx
push eax
call fcn.0047bee0
mov edi, ebx
call fcn.00450230
cmp eax, 1
jne 0x4643cf
mov eax, dword [ebx + 0xa10]
test eax, eax
je 0x4643bb
cmp byte [eax + 0x14], 0
movsx ecx, word [ebx + 0x97c]
movsx edx, word [ebx + 0x97a]
je 0x4643bb
mov edi, dword [eax + 4]
test edi, edi
je 0x46439e
push edi
movsx edi, word [eax + 0xe]
add edi, ecx
movsx ecx, word [eax + 0xc]
add ecx, edx
push edi
push ecx
mov ecx, dword [0x4efb90]
call fcn.0047d6a0
jmp 0x4643bb
mov edi, dword [eax + 8]
push edi
movsx edi, word [eax + 0xe]
movsx eax, word [eax + 0xc]
add edi, ecx
mov ecx, dword [0x4efb90]
push edi
add eax, edx
push eax
call fcn.0047bee0
mov edi, 0x4e08c4
call fcn.004021e0
push eax
push esi
call fcn.00442090
add esp, 8
mov edi, ebx
call fcn.00450180
cmp eax, 1
jne 0x4643ef
mov edi, 0x4e08d8
call fcn.004021e0
push eax
push esi
call fcn.00442090
add esp, 8
mov eax, 1
mov ecx, dword [esp + 0x48]
mov dword fs:[0], ecx
pop ecx
pop edi
mov ecx, dword [esp + 0x3c]
xor ecx, esp
call fcn.0048d5a8
add esp, 0x4c
ret