Function at 0x4aa5d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
mov eax, dword [ebp + 0xc]
push ebx
push esi
xor esi, esi
push edi
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], esi
mov dword [eax], esi
call fcn.004a7390
cmp eax, esi
jne 0x4aaafd
cmp byte [0x4d43bc], 0
mov edi, dword [ebp + 0x10]
jne 0x4aa60a
mov dword [esp + 0x14], esi
jmp 0x4aa635
test edi, 0x8000
je 0x4aa618
mov dword [esp + 0x14], esi
jmp 0x4aa635
test edi, 0x10000
je 0x4aa62a
mov dword [esp + 0x14], 1
jmp 0x4aa635
movzx ecx, byte [0x4d43bd]
mov dword [esp + 0x14], ecx
test edi, 0x40000
je 0x4aa645
and edi, 0xfffdffff
jmp 0x4aa653
cmp dword [0x4d4480], esi
je 0x4aa653
or edi, 0x20000
and edi, 0xfff600e7
cmp dword [0x4d43b8], esi
mov dword [ebp + 0x10], edi
je 0x4aa6d2
mov eax, dword [0x4d6a20]
cmp eax, esi
je 0x4aa677
push eax
call dword [0x4d4408]
add esp, 4
lea edx, [esp + 0xc]
push edx
mov eax, 0x218
call fcn.00418f60
mov eax, dword [0x4d6a20]
add esp, 4
cmp eax, esi
je 0x4aa69c
push eax
call dword [0x4d4410]
add esp, 4
mov ebx, dword [esp + 0xc]
cmp ebx, esi
je 0x4aa6b3
push 0x218
push esi
push ebx
call sub.ntdll.dll_memset
add esp, 0xc
cmp ebx, esi
mov dword [esp + 0x10], ebx
je 0x4aaab2
cmp dword [esp + 0x14], esi
je 0x4aa70c
cmp byte [0x4d43bc], 0
jne 0x4aa6e8
xor eax, eax
jmp 0x4aa6f3
push 0x218
call dword [0x4d43d8]
mov ebx, eax
add esp, 4
mov dword [esp + 0xc], ebx
jmp 0x4aa6a0
push 1
call dword [0x4d4400]
add esp, 4
cmp eax, esi
mov dword [ebx + 0xc], eax
jne 0x4aa70c
push ebx
call fcn.004191a0
add esp, 4
mov dword [esp + 0x10], esi
jmp 0x4aaab2
mov eax, dword [ebx + 0xc]
cmp eax, esi
je 0x4aa71d
push eax
call dword [0x4d4408]
add esp, 4
and edi, 0x2000000
neg edi
sbb edi, edi
mov word [ebx + 0x134], si
mov dword [ebx + 0x14], 2
mov byte [ebx + 0x61], 0x6d
mov dword [ebx + 0x130], 1
and edi, 0xffffff00
add edi, 0xff
mov dword [ebx + 0x48], edi
lea eax, [ebx + 0x1cc]
mov dword [ebx + 0x10], eax
mov eax, dword [ebx + 0x24]
lea edi, [ebx + 0x78]
mov ecx, 0xc
mov esi, 0x4c6dac
rep movsd dword es:[edi], dword [esi]
xor esi, esi
mov dword [ebx + 0xa4], esi
mov byte [ebx + 0x55], 1
mov byte [ebx + 0x5a], 0xff
mov ecx, dword [0x4d4460]
mov dword [ebx + 0x30], ecx
mov edx, dword [0x4d4464]
or dword [ebx + 0x20], 0xe00480e0
push esi
mov dword [ebx + 0x34], edx
mov dword [ebx + 0x64], esi
mov dword [ebx + 0xb8], 0x4d44d4
mov dword [ebx + 0x24], eax
push fcn.004a7d70
push esi
mov dword [ebx + 0x1b8], esi
mov dword [ebx + 0x1b4], esi
mov dword [ebx + 0x1b0], esi
mov dword [ebx + 0x1bc], esi
push 1
push 0x4c19d4
mov edi, ebx
mov dword [ebx + 0x18c], esi
mov dword [ebx + 0x188], esi
mov dword [ebx + 0x184], esi
mov dword [ebx + 0x190], esi
call fcn.004a9b30
add esp, 0x14
push esi
push fcn.004a7d70
push esi
push 3
push 0x4c19d4
call fcn.004a9b30
add esp, 0x14
push esi
push fcn.004a7d70
push esi
push 2
push 0x4c19d4
call fcn.004a9b30
add esp, 0x14
push esi
push 0x4a7e70
push esi
push 1
push str.NOCASE
call fcn.004a9b30
add esp, 0x14
push esi
push 0x4a7e20
push esi
push 1
push str.RTRIM
call fcn.004a9b30
add esp, 0x14
cmp byte [ebx + 0x57], 0
jne 0x4aaa9f
mov edi, dword [ebp + 0x10]
mov ecx, edi
and ecx, 7
mov edx, 1
shl edx, cl
mov dword [ebx + 0x3c], edi
test dl, 0x46
jne 0x4aa877
mov eax, 0x2b4f5
call fcn.004aae40
mov dword [esp + 0x14], eax
jmp 0x4aa89c
lea eax, [esp + 0x1c]
push eax
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x14]
push ebx
lea edx, [ebp + 0x10]
push edx
push eax
call fcn.004a9d40
mov edi, dword [ebp + 0x10]
add esp, 0x14
mov dword [esp + 0x14], eax
cmp eax, esi
je 0x4aa8d9
cmp eax, 7
jne 0x4aa8b2
push ebx
call fcn.00419a00
mov eax, dword [esp + 0x18]
add esp, 4
mov edi, dword [esp + 0x1c]
mov ecx, edi
neg ecx
sbb ecx, ecx
and ecx, 0x4bebec
push edi
push ecx
mov ecx, ebx
call fcn.0041cab0
push edi
call fcn.004191a0
add esp, 0xc
jmp 0x4aaa9f
mov edx, dword [ebx]
mov ecx, dword [ebx + 0x10]
or edi, 0x100
push edi
push esi
push ebx
push edx
mov edx, dword [esp + 0x28]
add ecx, 4
call fcn.0042f6f0
add esp, 0x10
cmp eax, esi
je 0x4aa92a
cmp eax, 0xc0a
jne 0x4aa907
mov eax, 7
cmp eax, esi
mov dword [ebx + 0x40], eax
jne 0x4aa91a
mov eax, ebx
call fcn.0041ca90
jmp 0x4aaa9f
call fcn.0041ca30
mov ebx, dword [esp + 0xc]
xor esi, esi
jmp 0x4aaa9f
mov eax, dword [ebx + 0x10]
mov eax, dword [eax + 4]
call fcn.0042d680
mov ecx, dword [ebx + 0x10]
mov ecx, dword [ecx + 4]
push ebx
call fcn.00467ee0
mov edx, dword [ebx + 0x10]
add esp, 4
mov dword [edx + 0xc], eax
cmp byte [ebx + 0x57], 0
jne 0x4aa966
mov eax, dword [ebx + 0x10]
mov ecx, dword [eax + 0xc]
mov bl, byte [ecx + 0x4d]
mov esi, dword [esp + 0xc]
call fcn.004678c0
mov ebx, esi
xor esi, esi
mov edx, dword [ebx + 0x10]
mov eax, dword [edx + 4]
call fcn.0042d740
push ebx
xor ecx, ecx
call fcn.00467ee0
mov ecx, dword [ebx + 0x10]
mov dword [ecx + 0x1c], eax
mov edx, dword [ebx + 0x10]
mov dword [edx], str.main
mov eax, dword [ebx + 0x10]
mov byte [eax + 8], 3
mov ecx, dword [ebx + 0x10]
mov dword [ecx + 0x10], str.temp
mov edx, dword [ebx + 0x10]
mov byte [edx + 0x18], 1
add esp, 4
cmp byte [ebx + 0x57], 0
mov byte [ebx + 0x61], 0x76
jne 0x4aaa9f
cmp dword [ebx + 0x124], esi
mov dword [ebx + 0x40], esi
je 0x4aa9cb
xor eax, eax
call fcn.0041ca30
mov ebx, dword [esp + 0xc]
xor esi, esi
jmp 0x4aa9d2
mov dword [ebx + 0x44], 0xffffffff
push 2
push str.MATCH
push ebx
call fcn.004a9240
add esp, 0xc
cmp eax, 7
jne 0x4aa9f0
push ebx
call fcn.00419a00
add esp, 4
push ebx
call fcn.004a9a00
add esp, 4
cmp eax, esi
jne 0x4aaa19
mov edi, 0x4c6c50
cmp edi, 0x4c6c58
jge 0x4aaa29
mov eax, dword [edi]
push ebx
call eax
add esp, 4
add edi, 4
cmp eax, esi
je 0x4aaa02
cmp eax, esi
mov dword [ebx + 0x40], eax
jne 0x4aaa45
mov eax, ebx
call fcn.0041ca90
jmp 0x4aaa50
cmp eax, esi
jne 0x4aaa19
push ebx
call fcn.004748b0
add esp, 4
push ebx
call fcn.004a9a00
add esp, 4
cmp eax, esi
jne 0x4aaa9f
jmp 0x4aaa50
call fcn.0041ca30
mov ebx, dword [esp + 0xc]
xor esi, esi
mov ecx, dword [0x4d43d0]
mov edx, dword [0x4d43cc]
push ecx
push edx
push esi
mov eax, ebx
call fcn.004a7890
mov eax, dword [ebx + 0xc]
add esp, 0xc
cmp eax, esi
je 0x4aaa7a
push eax
call dword [0x4d4408]
add esp, 4
mov eax, dword [ebx + 0xc]
cmp eax, esi
mov dword [ebx + 0x110], 0x4a9550
mov dword [ebx + 0x114], 0x3e8
je 0x4aaa9f
push eax
call dword [0x4d4410]
add esp, 4
mov ebx, dword [ebx + 0xc]
cmp ebx, esi
je 0x4aaab0
push ebx
call dword [0x4d4410]
add esp, 4
xor esi, esi
mov eax, dword [esp + 0x10]
push eax
call fcn.004a9a00
mov ebx, eax
add esp, 4
cmp bl, 7
jne 0x4aaad9
mov eax, dword [esp + 0x10]
push esi
call fcn.004a80e0
add esp, 4
mov dword [esp + 0x10], esi
jmp 0x4aaae5
cmp ebx, esi
je 0x4aaae5
mov ecx, dword [esp + 0x10]
mov byte [ecx + 0x61], 0xba
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0xc]
mov eax, dword [esp + 0x10]
push ecx
mov dword [edx], eax
call fcn.004ab8f0
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret