Function at 0x481a20
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x4edea3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x20
mov edx, dword [esp + 0x30]
push ebx
lea eax, [esp + 0x14]
push esi
lea ecx, [esp + 0xc]
push eax
push ecx
push edx
xor ebx, ebx
push 0xe
push 0xd
mov dword [esp + 0x20], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x1c], ebx
call fcn.00461070
mov esi, eax
add esp, 0x14
cmp esi, ebx
mov dword [esp + 0x10], esi
jne 0x481a80
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
add esp, 0x2c
ret
mov ecx, dword [esp + 0xc]
mov eax, 0x2aaaaaab
imul ecx
push ebp
push edi
mov edi, dword [esp + 0x44]
sar edx, 1
mov ebp, dword [edi + 0x98]
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ebp, ebx
mov dword [esp + 0x1c], edx
je 0x481ac3
cmp dword [ebp + 0xc], ebx
jne 0x481ab4
mov ecx, ebp
call fcn.00481900
push ebp
call fcn.004ddac0
add esp, 4
mov dword [edi + 0x98], ebx
push 0x18
call fcn.004ddf8e
add esp, 4
cmp eax, ebx
je 0x481aec
mov dword [eax + 4], ebx
mov dword [eax], ebx
mov dword [eax + 8], 0xffffffff
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], 1
jmp 0x481aee
xor eax, eax
mov ecx, dword [esp + 0x40]
mov dword [edi + 0x98], eax
mov dword [eax + 8], ecx
mov eax, dword [esp + 0x1c]
xor ecx, ecx
cmp eax, ebx
mov dword [esp + 0x40], ecx
jle 0x481c22
lea eax, [ecx + ecx*2]
mov dword [esp + 0x38], ebx
shl eax, 2
cmp ecx, ebx
mov dx, word [eax + esi + 2]
mov bp, word [eax + esi]
mov word [esp + 0x28], dx
mov dx, word [eax + esi + 4]
mov word [esp + 0x2a], dx
mov dx, word [eax + esi + 6]
mov eax, dword [eax + esi + 8]
mov word [esp + 0x2c], dx
jne 0x481b4a
mov word [edi + 0x3c], bp
jmp 0x481c09
cmp eax, 1
jne 0x481c09
push 0x7c
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebx
mov byte [esp + 0x38], 1
je 0x481b75
mov ecx, eax
call fcn.004825c0
mov edi, eax
jmp 0x481b77
xor edi, edi
mov eax, dword [esp + 0x44]
mov word [edi + 0x3c], bp
push 0x14
mov byte [esp + 0x3c], bl
mov ebp, dword [eax + 0x98]
call fcn.004ddf8e
add esp, 4
cmp eax, ebx
je 0x481ba1
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov esi, eax
jmp 0x481ba3
xor esi, esi
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x74]
mov dword [esi], edi
mov ecx, dword [esp + 0x28]
lea eax, [esi + 4]
mov dword [esi + 4], ecx
mov dx, word [esp + 0x2c]
mov word [eax + 4], dx
mov eax, dword [ebp + 4]
cmp eax, ebx
mov dword [esi + 0xc], eax
je 0x481bcc
mov dword [eax + 0x10], esi
mov eax, dword [ebp]
mov dword [ebp + 4], esi
cmp eax, ebx
jne 0x481bd9
mov dword [ebp], esi
push edi
mov dword [esi + 0x10], ebx
call fcn.00482d90
push ebx
lea eax, [esp + 0x30]
push ebx
push eax
call fcn.004771d0
mov ecx, dword [esp + 0x20]
add esp, 0x10
cmp eax, ecx
jle 0x481bfd
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x1c]
inc ecx
cmp ecx, eax
mov dword [esp + 0x38], 0xffffffff
mov dword [esp + 0x40], ecx
jl 0x481b0d
mov ecx, dword [edi + 0x98]
mov edx, dword [esp + 0x10]
mov dword [ecx + 0x10], edx
mov eax, dword [edi + 0x98]
mov ecx, dword [esp + 0x30]
pop edi
pop ebp
mov dword [eax + 0x14], ebx
pop esi
mov eax, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x2c
ret