Function at 0x4a5ae0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x6442df
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x18
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x38]
mov esi, ecx
push edi
mov dword [esp + 0x14], esi
call fcn.0042b320
xor ebx, ebx
lea eax, [esp + 0x38]
push eax
mov ebp, 0x200
push ebp
mov dword [esi], 0x656810
mov dword [esi + 0x38], edi
mov dword [esi + 0x160], ebx
mov dword [esi + 0x164], ebx
mov dword [esi + 0x15c], ebx
mov dword [esi + 0x168], 3
mov word [esi + 0x1a4], bx
mov word [esi + 0x1a6], bx
mov word [esi + 0x1a8], bx
mov ecx, dword [0x6a09fc]
push ebp
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x44], ebx
call fcn.004d67c0
mov ecx, dword [esp + 0x38]
push ebx
call fcn.0041ef50
push 0x60
call fcn.00614bf2
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x30], 1
je 0x4a5b93
mov ecx, eax
call fcn.0049ec40
mov edi, eax
jmp 0x4a5b95
xor edi, edi
mov ecx, dword [esp + 0x38]
push ecx
mov ecx, edi
mov byte [esp + 0x34], bl
call fcn.0049f010
mov ecx, dword [0x6a07e4]
push edi
call fcn.004a0440
push edi
mov ecx, esi
call fcn.0042aa60
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
je 0x4a5bcb
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esp + 0x38], ebx
mov ecx, dword [0x6a09fc]
lea eax, [esp + 0x38]
push eax
push 0x1d
push 0x1d
call fcn.004d67c0
mov ecx, dword [esp + 0x38]
push ebx
call fcn.0041ef50
mov edi, dword [sym.imp.user32.dll_SetRect]
push 0x3a
push 0x65
push 0x1d
push 0x48
lea ecx, [esp + 0x28]
push ecx
call edi
mov ecx, dword [0x6a09fc]
push ebx
push 0x3e
call fcn.004d6b60
mov ecx, dword [esp + 0x3c]
push eax
push ebx
push ebx
lea edx, [esp + 0x28]
push edx
call fcn.0041f9b0
push 0x60
call fcn.00614bf2
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x30], 2
je 0x4a5c3d
mov ecx, eax
call fcn.0049ec40
jmp 0x4a5c3f
xor eax, eax
mov ecx, dword [esp + 0x38]
push ecx
mov ecx, eax
mov byte [esp + 0x34], bl
mov dword [esi + 0x138], eax
call fcn.0049f010
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
je 0x4a5c67
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esp + 0x38], ebx
mov ecx, dword [0x6a09fc]
lea eax, [esp + 0x38]
push eax
push 0x1d
push 0x1d
call fcn.004d67c0
mov ecx, dword [esp + 0x38]
push ebx
call fcn.0041ef50
push 0x1d
push 0x65
push ebx
push 0x48
lea ecx, [esp + 0x28]
push ecx
call edi
mov ecx, dword [0x6a09fc]
push ebx
push 0x3e
call fcn.004d6b60
mov ecx, dword [esp + 0x3c]
push eax
push ebx
push ebx
lea edx, [esp + 0x28]
push edx
call fcn.0041f9b0
push 0x60
call fcn.00614bf2
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x30], 3
je 0x4a5cd2
mov ecx, eax
call fcn.0049ec40
jmp 0x4a5cd4
xor eax, eax
mov ecx, dword [esp + 0x38]
push ecx
mov ecx, eax
mov byte [esp + 0x34], bl
mov dword [esi + 0x13c], eax
call fcn.0049f010
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
je 0x4a5cfc
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esp + 0x38], ebx
mov ecx, dword [0x6a09fc]
lea eax, [esp + 0x38]
push eax
push 0x1d
push 0x1d
call fcn.004d67c0
mov ecx, dword [esp + 0x38]
push ebx
call fcn.0041ef50
push 0x1d
push 0x82
push ebx
push 0x65
lea ecx, [esp + 0x28]
push ecx
call edi
mov ecx, dword [0x6a09fc]
push ebx
push 0x3e
call fcn.004d6b60
mov ecx, dword [esp + 0x3c]
push eax
push ebx
push ebx
lea edx, [esp + 0x28]
push edx
call fcn.0041f9b0
push 0x60
call fcn.00614bf2
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x30], 4
je 0x4a5d6a
mov ecx, eax
call fcn.0049ec40
jmp 0x4a5d6c
xor eax, eax
mov ecx, dword [esp + 0x38]
push ecx
mov ecx, eax
mov byte [esp + 0x34], bl
mov dword [esi + 0x140], eax
call fcn.0049f010
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
je 0x4a5d94
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esp + 0x38], ebx
mov ecx, dword [0x6a09fc]
lea eax, [esp + 0x38]
push eax
push 0x3a
push 0x48
call fcn.004d67c0
mov ecx, dword [esp + 0x38]
push ebx
call fcn.0041ef50
push 0x3a
push 0x48
push ebx
push ebx
lea ecx, [esp + 0x28]
push ecx
call edi
mov ecx, dword [0x6a09fc]
push ebx
push 0x3e
call fcn.004d6b60
mov ecx, dword [esp + 0x3c]
push eax
push ebx
push ebx
lea edx, [esp + 0x28]
push edx
call fcn.0041f9b0
push 0x60
call fcn.00614bf2
add esp, 4
mov dword [esp + 0x14], eax
cmp eax, ebx
mov byte [esp + 0x30], 5
je 0x4a5dfe
mov ecx, eax
call fcn.0049ec40
jmp 0x4a5e00
xor eax, eax
mov ecx, dword [esp + 0x38]
push ecx
mov ecx, eax
mov byte [esp + 0x34], bl
mov dword [esi + 0x144], eax
call fcn.0049f010
mov ecx, dword [esp + 0x38]
cmp ecx, ebx
je 0x4a5e28
mov edx, dword [ecx]
push 1
call dword [edx]
mov dword [esp + 0x38], ebx
cmp dword [esi + 0x48], ebp
je 0x4a5e3b
mov eax, dword [esi]
push esi
mov ecx, esi
mov dword [esi + 0x48], ebp
call dword [eax + 0xc0]
cmp dword [esi + 0x4c], ebp
je 0x4a5e4e
mov edx, dword [esi]
push esi
mov ecx, esi
mov dword [esi + 0x4c], ebp
call dword [edx + 0xc0]
call fcn.0042d3e0
mov eax, dword [eax + 0xc]
sub eax, dword [esi + 0x48]
cdq
sub eax, edx
sar eax, 1
mov dword [esi + 0x2c], eax
call fcn.0042d3e0
mov eax, dword [eax + 0x10]
sub eax, dword [esi + 0x4c]
cdq
sub eax, edx
sar eax, 1
mov dword [esi + 0x30], eax
mov ecx, esi
mov dword [0x6a07ec], esi
call fcn.004a4bb0
mov ecx, dword [0x69e760]
lea eax, [esi + 0x134]
push eax
call fcn.0041e380
mov ecx, dword [esp + 0x28]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x24
ret 4