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

Disassembly:
sub esp, 0xd8
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0xec]
lea eax, [esp + 0x4c]
push 0x4c
push 0
push eax
mov esi, dword [edi]
mov ebx, dword [edi + 0x84]
mov ebp, dword [edi + 8]
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], ebx
call sub.MSVCRT.dll_memset
push 0x50
lea eax, [esp + 0xa8]
push 0
push eax
call sub.MSVCRT.dll_memset
push 0
push dword [ebx + 4]
push esi
call fcn.004f0840
mov dword [esp + 0x8c], eax
lea eax, [esp + 0xbc]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x118]
mov dword [esp + 0xd4], eax
lea eax, [esp + 0x70]
push 0
push eax
push edi
mov dword [esp + 0xc8], 1
mov dword [esp + 0xfc], 0xffffffff
call fcn.0050cdb0
add esp, 0x30
cmp dword [edi + 0x24], 0
jne 0x4a967b
lea eax, [esp + 0x4c]
push eax
push edi
call fcn.004f86a0
add esp, 8
mov eax, dword [esp + 0x68]
test eax, eax
je 0x4a968d
push eax
push esi
call fcn.004b0f30
add esp, 8
push dword [esp + 0xf4]
push dword [ebx + 4]
push edi
call fcn.004ebd10
mov esi, eax
add esp, 0xc
mov eax, dword [esp + 0x18]
mov dword [esp + 0x14], esi
cmp byte [eax + 0x57], 0
jne 0x4a98c1
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
cmp dword [ebx + 0x60], eax
jne 0x4a96e9
mov eax, dword [esi]
mov dword [ebx + 0x60], eax
mov eax, dword [edi + 0x28]
mov dword [ebx + 0x5c], eax
inc dword [edi + 0x28]
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xf0]
push esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x48], 0x400
mov al, byte [eax + 8]
mov byte [edi + 0x94], al
mov eax, dword [esp + 0xf8]
mov dword [edi + 0x78], eax
lea eax, [esp + 0x30]
push eax
call fcn.00508950
add esp, 8
test eax, eax
mov eax, dword [esp + 0x18]
jne 0x4a98c1
cmp byte [eax + 0x57], 0
jne 0x4a98c1
mov eax, dword [edi + 0x2c]
mov ecx, dword [esi]
mov dword [esp + 0x10], ecx
lea edx, [eax + 1]
add eax, 2
add eax, ecx
mov dword [esp + 0x1c], edx
mov dword [edi + 0x2c], eax
xor eax, eax
mov dword [ebx + 0x64], edx
mov dword [esp + 0x24], eax
test ecx, ecx
jle 0x4a97b5
lea eax, [esi + 8]
mov dword [esp + 0x24], ecx
mov ebx, edx
mov dword [esp + 0x28], eax
mov esi, dword [eax]
push ebx
push esi
push edi
call fcn.004ecae0
push esi
call fcn.004ec1e0
add esp, 0x10
cmp al, 0x45
jne 0x4a9793
push ebx
push 0x56
push ebp
call fcn.00512ce0
add esp, 0xc
mov eax, dword [esp + 0x28]
inc ebx
add eax, 0x14
dec dword [esp + 0x10]
mov dword [esp + 0x28], eax
jne 0x4a9770
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
mov ecx, dword [ebp + 0x74]
add edx, eax
mov dword [esp + 0x10], edx
cmp dword [ebp + 0x78], ecx
jg 0x4a97da
push edx
push eax
push dword [esp + 0x24]
push 0x60
push ebp
call fcn.004c7840
mov edx, dword [esp + 0x24]
add esp, 0x14
jmp 0x4a980d
mov esi, dword [esp + 0x1c]
lea eax, [ecx + 1]
mov dword [ebp + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp + 0x70]
mov dword [eax + ecx*4 + 4], esi
mov esi, dword [esp + 0x24]
mov dword [eax + ecx*4 + 8], esi
mov esi, dword [esp + 0x14]
mov dword [eax + ecx*4], 0x60
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [ebx + 0x5c]
lea eax, [edx + 1]
mov dword [esp + 0x14], ecx
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x20], eax
cmp dword [ebp + 0x78], ecx
jg 0x4a983b
push 0
push eax
push dword [esp + 0x1c]
push 0x7e
push ebp
call fcn.004c7840
mov edx, dword [esp + 0x24]
add esp, 0x14
jmp 0x4a9874
mov edi, dword [esp + 0x14]
lea eax, [ecx + 1]
mov dword [ebp + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp + 0x70]
mov dword [eax + ecx*4 + 4], edi
lea edi, [edx + 1]
mov dword [eax + ecx*4 + 8], edi
mov edi, dword [esp + 0xec]
mov dword [eax + ecx*4], 0x7e
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [ebp + 0x74]
mov ebx, dword [ebx + 0x5c]
cmp dword [ebp + 0x78], ecx
jg 0x4a9892
lea eax, [edx + 1]
push eax
push edx
push ebx
push 0x7f
push ebp
call fcn.004c7840
add esp, 0x14
jmp 0x4a98bd
lea eax, [ecx + 1]
mov dword [ebp + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp + 0x70]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x20]
mov dword [eax + ecx*4], 0x7f
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x18]
test esi, esi
je 0x4a98cf
push esi
push eax
call fcn.004b0f30
add esp, 8
mov dword [edi + 0x78], 0
mov byte [edi + 0x94], 0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xd8
ret