Function at 0x5025d0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6039c0
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
mov eax, dword [0x631220]
xor eax, esp
mov dword [esp + 0x28], eax
push esi
push edi
mov eax, dword [0x631220]
xor eax, esp
push eax
lea eax, [esp + 0x38]
mov dword fs:[0], eax
mov edi, ecx
xorps xmm0, xmm0
lea eax, [edi + 0x478]
movdqu xmmword [esp + 0x1c], xmm0
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x1c], 0
mov word [esp + 0x24], ax
mov dword [esp + 0x28], eax
mov edx, dword [edi + 0xa8]
mov dword [esp + 0x40], eax
mov eax, dword [edx + 0x2f8]
mov dword [esp + 0x1c], eax
mov ax, word [edx + 8]
mov ecx, dword [edx + 0xc]
mov word [esp + 0x24], ax
mov dword [esp + 0x28], ecx
call fcn.004ea510
push dword [0x63767d]
mov ecx, dword [eax + 0x24]
mov eax, dword [0x637679]
add eax, ecx
push eax
lea eax, [esp + 0x14]
push eax
call fcn.00503570
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x30], ecx
lea esi, [edi + 0x1a8]
cmp esi, ecx
je 0x5026ca
mov eax, dword [esi]
test eax, eax
je 0x5026a6
push eax
call fcn.005df995
mov ecx, dword [esp + 0x34]
add esp, 4
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov eax, dword [ecx]
mov dword [esi], eax
mov eax, dword [ecx + 4]
mov dword [esi + 4], eax
mov eax, dword [ecx + 8]
mov dword [esi + 8], eax
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov eax, dword [esp + 0xc]
mov byte [esp + 0x40], 0
test eax, eax
je 0x5026e0
push eax
call fcn.005df995
add esp, 4
mov eax, dword [edi + 0xcc]
mov ecx, edi
shr eax, 6
and al, 1
sete al
movzx eax, al
push eax
push dword [edi + 0xfc]
push dword [0x63769d]
push dword [0x637699]
call fcn.004f1c50
push eax
push dword [0x63767d]
lea ecx, [esp + 0x30]
push dword [0x637679]
call fcn.00528cd0
test al, al
je 0x502891
cmp dword [0x63767d], 0
jbe 0x502742
lea eax, [edi + 0x1b4]
push eax
push esi
call fcn.00501a50
add esp, 8
mov ecx, dword [0x637258]
test ecx, ecx
mov edx, dword [0x637685]
setne al
mov byte [esp + 0x30], al
test al, al
push dword [esp + 0x30]
cmovne edx, ecx
lea ecx, [esp + 0x20]
push dword [edi + 0xfc]
push edx
push dword [0x637681]
push dword [0x635d28]
push dword [0x635d24]
call fcn.005287a0
test al, al
je 0x502891
push dword [0x637695]
push dword [0x637691]
call fcn.004eb160
add esp, 8
test al, al
je 0x502891
push dword [0x637651]
mov ecx, edi
push dword [0x637655]
call fcn.004f1c50
push eax
push dword [0x635d28]
push dword [0x635d24]
call fcn.00528be0
mov eax, dword [edi + 0xcc]
add esp, 0x10
shr eax, 0xb
test al, 1
je 0x502824
push 0x635d18
call fcn.005280a0
mov eax, dword [edi + 0xcc]
add esp, 4
shr eax, 6
test al, 1
je 0x502833
mov eax, dword [0x637679]
xorps xmm0, xmm0
movq qword [esp + 0x2c], xmm0
mov dword [esp + 0x2c], eax
mov eax, dword [0x63767d]
mov dword [esp + 0x30], eax
call fcn.004ea510
push dword [eax + 0x24]
lea eax, [esp + 0x30]
push eax
call fcn.005d59c0
jmp 0x502833
push dword [0x63767d]
lea ecx, [esp + 0x20]
call fcn.005284f0
mov dword [0x637679], 0
mov al, 1
mov dword [0x63769d], 0
mov dword [0x637699], 0
mov dword [0x637685], 0
mov dword [0x637681], 0
mov dword [0x637695], 0
mov dword [0x637691], 0
mov dword [0x637651], 0
mov dword [0x637655], 0
jmp 0x502893
xor al, al
mov ecx, dword [esp + 0x38]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.005e0482
add esp, 0x38
ret