Function at 0x4aee70
Capabilities:
Access peb ldr_data
Get ntdll base address
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd0
mov esi, esp
mov dword [esi + 0xb8], ebp
mov edi, ecx
mov ebx, dword [ebp + 8]
mov dword [esi + 0xbc], esp
mov dword [esi + 0xc8], 0xffffffff
lea eax, [esi + 0xc0]
mov dword [esi + 0xc4], 0x5887f0
mov ecx, dword fs:[0]
mov dword [esi + 0xc0], ecx
mov dword fs:[0], eax
mov eax, dword [0x5c5080]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
mov eax, dword [0x5c5084]
sete byte [esi + 6]
cmp eax, 0xa
setl byte [esi + 7]
lea eax, [edi + 0x18]
mov dword [esi + 0x8c], eax
lea eax, [ebx + 0x18]
mov dword [esi + 0x4c], eax
lea eax, [edi + 0x30]
mov dword [esi + 0x88], eax
lea eax, [ebx + 0x30]
mov dword [esi + 0x48], eax
lea eax, [edi + 0x38]
mov dword [esi + 0x84], eax
lea eax, [ebx + 0x38]
mov dword [esi + 0x44], eax
lea eax, [edi + 0x50]
mov dword [esi + 0x80], eax
lea eax, [ebx + 0x50]
mov dword [esi + 0x40], eax
lea eax, [edi + 0x6c]
mov dword [esi + 0x7c], eax
lea eax, [ebx + 0x6c]
mov dword [esi + 0x3c], eax
lea eax, [edi + 0x88]
mov dword [esi + 0x78], eax
lea eax, [ebx + 0x88]
mov dword [esi + 0x38], eax
lea eax, [edi + 0xa0]
mov dword [esi + 0x74], eax
lea eax, [ebx + 0xa0]
mov dword [esi + 0x34], eax
lea eax, [edi + 0xb8]
mov dword [esi + 0x70], eax
lea eax, [ebx + 0xb8]
mov dword [esi + 0x30], eax
lea eax, [edi + 0xc0]
mov dword [esi + 0x6c], eax
lea eax, [ebx + 0xc0]
mov dword [esi + 0x2c], eax
lea eax, [edi + 0xc8]
mov dword [esi + 0x68], eax
lea eax, [ebx + 0xc8]
mov dword [esi + 0x28], eax
lea eax, [edi + 0xd4]
mov dword [esi + 0x64], eax
lea eax, [ebx + 0xd4]
mov dword [esi + 0x24], eax
lea eax, [edi + 0xdc]
mov dword [esi + 0x60], eax
lea eax, [ebx + 0xdc]
mov dword [esi + 0x20], eax
lea eax, [ebx + 0x110]
mov dword [esi + 0x1c], eax
lea eax, [edi + 0x110]
mov dword [esi + 0x5c], eax
lea eax, [edi + 0x138]
mov dword [esi + 0x58], eax
lea eax, [ebx + 0x138]
mov dword [esi + 0x14], eax
lea eax, [edi + 0x160]
mov dword [esi + 0x54], eax
lea eax, [ebx + 0x160]
mov dword [esi + 0x10], eax
lea eax, [edi + 0x190]
mov dword [esi + 0x50], eax
lea eax, [ebx + 0x190]
mov dword [esi + 0xc], eax
mov eax, 0x5b709915
mov dword [esi + 0x18], edi
nop word [eax + eax]
cmp eax, 0x1948a987
jg 0x4af1e0
cmp eax, 0xa48bb4d7
je 0x4af463
cmp eax, 0x1323815f
jne 0x4af000
mov dword [esi + 0xc8], 0xffffffff
mov ecx, edi
push ebx
call fcn.00499a80
mov ecx, dword [esi + 0x8c]
push dword [esi + 0x4c]
call fcn.00499a80
mov ecx, dword [esi + 0x88]
push dword [esi + 0x48]
call fcn.004a4dc0
mov ecx, dword [esi + 0x84]
push dword [esi + 0x44]
call fcn.00499a80
mov ecx, dword [esi + 0x80]
push dword [esi + 0x40]
call fcn.00499a80
mov eax, dword [ebx + 0x68]
mov dword [edi + 0x68], eax
mov ecx, dword [esi + 0x7c]
push dword [esi + 0x3c]
call fcn.00499a80
mov eax, dword [ebx + 0x84]
mov dword [edi + 0x84], eax
mov ecx, dword [esi + 0x78]
push dword [esi + 0x38]
call fcn.00499a80
mov ecx, dword [esi + 0x74]
push dword [esi + 0x34]
call fcn.00499a80
mov ecx, dword [esi + 0x70]
push dword [esi + 0x30]
call fcn.004eaad0
mov ecx, dword [esi + 0x6c]
push dword [esi + 0x2c]
call fcn.004ebb90
mov ecx, dword [esi + 0x68]
push dword [esi + 0x28]
call fcn.004eabe0
mov edx, dword [esi + 0x24]
mov eax, dword [edx]
mov ecx, dword [esi + 0x64]
mov dword [ecx], eax
movzx eax, byte [edx + 4]
mov byte [ecx + 4], al
mov ecx, dword [esi + 0x60]
push dword [esi + 0x20]
call fcn.004ed580
mov eax, dword [ebx + 0xe8]
mov dword [edi + 0xe8], eax
mov eax, dword [ebx + 0xec]
mov dword [edi + 0xec], eax
movzx eax, byte [ebx + 0xf0]
mov byte [edi + 0xf0], al
mov eax, dword [ebx + 0xf4]
mov dword [edi + 0xf4], eax
mov eax, dword [ebx + 0xf8]
mov dword [edi + 0xf8], eax
movzx eax, byte [ebx + 0xfc]
mov byte [edi + 0xfc], al
mov eax, dword [ebx + 0x100]
mov dword [edi + 0x100], eax
mov eax, dword [ebx + 0x104]
mov dword [edi + 0x104], eax
movzx eax, byte [ebx + 0x108]
mov byte [edi + 0x108], al
mov dword [esi + 0xb4], 0
mov dword [esi + 0xc8], 1
lea ecx, [esi + 0x90]
push dword [esi + 0x1c]
call fcn.004b5380
lea edi, [esi + 0x90]
mov ecx, edi
push dword [esi + 0x5c]
call fcn.004ee880
mov ecx, edi
call fcn.004b54b0
mov dword [esi + 0xc8], 0xffffffff
mov ecx, dword [esi + 0x58]
push dword [esi + 0x14]
call fcn.004eaf10
mov ecx, dword [esi + 0x54]
push dword [esi + 0x10]
call fcn.004eb2d0
mov ebx, dword [ebp + 8]
vmovsd xmm0, qword [ebx + 0x188]
mov edi, dword [esi + 0x18]
vmovsd qword [edi + 0x188], xmm0
mov ecx, dword [esi + 0x50]
push dword [esi + 0xc]
call fcn.004eb580
vmovsd xmm0, qword [ebx + 0x1b8]
vmovsd qword [edi + 0x1b8], xmm0
mov eax, 0x1948a988
jmp 0x4af000
cmp eax, 0x1948a988
je 0x4af21f
cmp eax, 0x5b709915
jne 0x4af000
movzx edx, byte [esi + 6]
mov byte [esi + 8], dl
movzx eax, byte [esi + 7]
xor dl, al
mov edx, 0x1323815f
mov ecx, 0x1948a988
cmovne edx, ecx
test al, al
mov eax, edx
cmovne eax, ecx
cmp byte [esi + 8], 0
cmove eax, edx
jmp 0x4af000
mov dword [esi], edi
mov ecx, dword [esi]
mov dword [esi + 0xc8], 0xffffffff
push ebx
call fcn.00499a80
mov ecx, dword [esi]
add ecx, 0x18
push dword [esi + 0x4c]
call fcn.00499a80
mov ecx, dword [esi]
add ecx, 0x30
push dword [esi + 0x48]
call fcn.004a4dc0
mov ecx, dword [esi]
add ecx, 0x38
push dword [esi + 0x44]
call fcn.00499a80
mov ecx, dword [esi]
add ecx, 0x50
push dword [esi + 0x40]
call fcn.00499a80
mov eax, dword [ebx + 0x68]
mov ecx, dword [esi]
mov dword [ecx + 0x68], eax
mov ecx, dword [esi]
add ecx, 0x6c
push dword [esi + 0x3c]
call fcn.00499a80
mov eax, dword [ebx + 0x84]
mov ecx, dword [esi]
mov dword [ecx + 0x84], eax
mov ecx, dword [esi]
mov eax, 0x88
add ecx, eax
push dword [esi + 0x38]
call fcn.00499a80
mov ecx, dword [esi]
mov eax, 0xa0
add ecx, eax
push dword [esi + 0x34]
call fcn.00499a80
mov ecx, dword [esi]
mov eax, 0xb8
add ecx, eax
push dword [esi + 0x30]
call fcn.004eaad0
mov ecx, dword [esi]
mov eax, 0xc0
add ecx, eax
push dword [esi + 0x2c]
call fcn.004ebb90
mov ecx, dword [esi]
mov eax, 0xc8
add ecx, eax
push dword [esi + 0x28]
call fcn.004eabe0
mov edi, dword [esi]
mov ecx, dword [esi + 0x24]
mov eax, dword [ecx]
mov dword [edi + 0xd4], eax
movzx eax, byte [ecx + 4]
mov byte [edi + 0xd8], al
lea ecx, [edi + 0xdc]
push dword [esi + 0x20]
call fcn.004ed580
mov eax, dword [ebx + 0xe8]
mov dword [edi + 0xe8], eax
mov eax, dword [ebx + 0xec]
mov dword [edi + 0xec], eax
movzx eax, byte [ebx + 0xf0]
mov byte [edi + 0xf0], al
mov eax, dword [ebx + 0xf4]
mov dword [edi + 0xf4], eax
mov eax, dword [ebx + 0xf8]
mov dword [edi + 0xf8], eax
movzx eax, byte [ebx + 0xfc]
mov byte [edi + 0xfc], al
mov eax, dword [ebx + 0x100]
mov dword [edi + 0x100], eax
mov eax, dword [ebx + 0x104]
mov dword [edi + 0x104], eax
movzx eax, byte [ebx + 0x108]
mov byte [edi + 0x108], al
mov eax, dword [esi]
mov dword [esi + 8], eax
mov dword [esi + 0xb4], 0
mov dword [esi + 0xc8], 0
lea ecx, [esi + 0x90]
push dword [esi + 0x1c]
call fcn.004b5380
mov eax, dword [esi + 8]
add eax, 0x110
lea edi, [esi + 0x90]
mov ecx, edi
push eax
call fcn.004ee880
mov ecx, edi
call fcn.004b54b0
mov ecx, dword [esi]
mov eax, 0x138
add ecx, eax
mov dword [esi + 0xc8], 0xffffffff
push dword [esi + 0x14]
call fcn.004eaf10
mov ecx, dword [esi]
mov eax, 0x160
add ecx, eax
push dword [esi + 0x10]
call fcn.004eb2d0
mov eax, dword [esi]
mov ebx, dword [ebp + 8]
vmovsd xmm0, qword [ebx + 0x188]
vmovsd qword [eax + 0x188], xmm0
mov ecx, dword [esi]
mov eax, 0x190
add ecx, eax
push dword [esi + 0xc]
call fcn.004eb580
mov eax, dword [esi]
vmovsd xmm0, qword [ebx + 0x1b8]
vmovsd qword [eax + 0x1b8], xmm0
mov edx, dword [0x5c5080]
mov ecx, dword [0x5c5084]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x1323815f
mov edi, 0xa48bb4d7
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
mov edi, dword [esi + 0x18]
jmp 0x4af000
mov eax, dword [esi]
mov ecx, dword [esi + 0xc0]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4