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

Disassembly:
sub esp, 0x1c
mov eax, dword [ecx + 0x3c]
push ebx
push ebp
push esi
cmp eax, 1
push edi
mov dword [esp + 0x28], ecx
je 0x4a4c8f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
push 0
lea eax, [esp + 0x28]
push 0
push eax
lea edx, [esp + 0x2c]
push 0
lea eax, [esp + 0x20]
push edx
mov edx, dword [ecx + 0x74]
push eax
push 0
push 0
push edx
call fcn.0047e860
cmp eax, 0xd
je 0x4a4cc2
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0xc8]
test eax, eax
jne 0x4a4cd8
xor edx, edx
mov dword [esp + 0x14], edx
jmp 0x4a4ce4
mov eax, dword [ecx + 0xc0]
mov dword [esp + 0x14], eax
mov edx, eax
mov ebp, dword [ecx + 0xc8]
mov eax, dword [ecx + 0x64]
add ebp, edx
test eax, eax
jne 0x4a4cf7
xor eax, eax
jmp 0x4a4cfa
mov eax, dword [ecx + 0x5c]
mov esi, dword [esp + 0x20]
mov edi, dword [eax + esi*4]
lea esi, [edi + edx]
push esi
call fcn.004cd260
cmp eax, 1
je 0x4a4d1b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
mov eax, dword [esp + 0x30]
mov bl, byte [esi]
cmp eax, 0xffffffff
mov dword [esp + 0x18], 1
mov byte [esp + 0x1c], bl
jne 0x4a508a
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x78]
test eax, eax
jne 0x4a4d45
xor ecx, ecx
jmp 0x4a4d48
mov ecx, dword [edx + 0x70]
mov eax, 0x38e38e39
mul dword [edx + 0x78]
mov ebp, edx
shr ebp, 1
cmp bl, 0x71
jne 0x4a4d9b
mov edx, dword [esp + 0x38]
mov eax, 1
cmp edx, eax
je 0x4a5256
xor eax, eax
test ebp, ebp
jle 0x4a4d87
cmp byte [ecx], 3
jne 0x4a4d7a
cmp dword [ecx + 5], edi
je 0x4a4d84
add ecx, 9
inc eax
cmp eax, ebp
jl 0x4a4d70
jmp 0x4a4d87
mov edi, dword [ecx + 1]
cmp eax, ebp
jne 0x4a520b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
cmp bl, 0x6e
jne 0x4a4e58
mov edx, dword [esp + 0x38]
mov eax, 1
cmp edx, eax
je 0x4a5256
xor edx, edx
mov dword [esp + 0x30], 0xffffffff
test ebp, ebp
mov dword [esp + 0x38], edx
jle 0x4a4e3a
cmp byte [ecx], 4
jne 0x4a4dd6
cmp edi, dword [ecx + 1]
jle 0x4a4dd6
cmp edi, dword [ecx + 5]
jl 0x4a4de4
add ecx, 9
inc edx
cmp edx, ebp
jl 0x4a4dc7
mov dword [esp + 0x38], edx
jmp 0x4a4e3a
mov ecx, dword [ecx + 1]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], edx
lea esi, [ecx + eax + 1]
mov al, byte [ecx + eax + 1]
cmp al, 0x6e
jne 0x4a4e42
mov ebx, dword [esp + 0x14]
mov eax, esi
sub eax, ebx
cmp eax, edi
je 0x4a4e2c
inc esi
mov dword [esp + 0x30], eax
mov ecx, esi
call fcn.004ca4e0
mov ecx, dword [esp + 0x10]
add esi, eax
push 0
push esi
call fcn.004ccb60
mov edx, dword [esp + 0x38]
add esi, eax
cmp byte [esi], 0x6e
je 0x4a4dff
cmp byte [esi], 0x6e
jne 0x4a4e42
mov edi, dword [esp + 0x30]
cmp edi, 0xffffffff
je 0x4a4e42
cmp edx, ebp
jne 0x4a520b
pop edi
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x14]
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0xc
test edi, edi
jle case.0x4a4ea9.85
mov al, byte [esi - 1]
dec esi
cmp al, 0x6d
mov byte [esp + 0x1c], al
mov edx, 1
jne 0x4a4e84
cmp edi, edx
jle 0x4a4e7f
mov al, byte [esi - 1]
dec esi
mov byte [esp + 0x1c], al
jmp 0x4a4e84
mov byte [esp + 0x1c], 0
mov eax, dword [esp + 0x14]
sub esi, eax
mov eax, dword [esp + 0x1c]
and eax, 0xff
mov edi, esi
add eax, 0xffffffb0
cmp eax, 0x24
ja case.0x4a4ea9.85
xor ebx, ebx
mov bl, byte [eax + 0x4a5278]
jmp dword [ebx*4 + 0x4a5260]
cmp dword [esp + 0x38], edx
jne 0x4a4ec2
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x1c
ret 0xc
xor eax, eax
test ebp, ebp
jle 0x4a4d87
cmp byte [ecx], 2
jne 0x4a4eda
cmp dword [ecx + 5], edi
je 0x4a4d84
add ecx, 9
inc eax
cmp eax, ebp
jl 0x4a4ecc
jmp 0x4a4d87
cmp dword [esp + 0x38], edx
jne 0x4a4ef9
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x1c
ret 0xc
xor ebx, ebx
test ebp, ebp
jle 0x4a4f39
cmp byte [ecx], 1
jne 0x4a4f09
cmp dword [ecx + 5], edi
je 0x4a4f13
add ecx, 9
inc ebx
cmp ebx, ebp
jl 0x4a4eff
jmp 0x4a4f39
mov ecx, dword [ecx + 1]
mov edx, dword [esp + 0x14]
lea esi, [ecx + edx + 1]
mov ecx, esi
call fcn.004ca4e0
mov ecx, dword [esp + 0x10]
add esi, eax
push esi
call fcn.004ccea0
mov edi, eax
mov eax, dword [esp + 0x14]
sub edi, eax
cmp ebx, ebp
jne 0x4a520b
pop edi
mov dword [esp + 0x14], 0
mov eax, dword [esp + 0x14]
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0xc
cmp dword [esp + 0x38], edx
jne 0x4a4f69
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x1c
ret 0xc
xor ebx, ebx
test ebp, ebp
jle 0x4a4fa9
cmp byte [ecx], 4
jne 0x4a4f79
cmp dword [ecx + 5], edi
je 0x4a4f83
add ecx, 9
inc ebx
cmp ebx, ebp
jl 0x4a4f6f
jmp 0x4a4fa9
mov eax, dword [ecx + 1]
mov ecx, dword [esp + 0x14]
lea esi, [eax + ecx + 2]
mov ecx, esi
call fcn.004ca4e0
mov ecx, dword [esp + 0x10]
add esi, eax
push esi
call fcn.004ccea0
mov edi, eax
mov eax, dword [esp + 0x14]
sub edi, eax
cmp ebx, ebp
jne 0x4a520b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
cmp dword [esp + 0x38], edx
jne 0x4a4fcf
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x1c
ret 0xc
xor eax, eax
test ebp, ebp
jle 0x4a4d87
cmp byte [ecx], 1
jne 0x4a4fec
cmp edi, dword [ecx + 1]
jle 0x4a4fec
cmp edi, dword [ecx + 5]
jl 0x4a4d84
add ecx, 9
inc eax
cmp eax, ebp
jl 0x4a4fd9
jmp 0x4a4d87
cmp dword [esp + 0x38], edx
jne 0x4a500b
pop edi
pop esi
pop ebp
mov eax, edx
pop ebx
add esp, 0x1c
ret 0xc
xor eax, eax
test ebp, ebp
mov dword [esp + 0x38], eax
jle 0x4a5076
cmp byte [ecx], 4
jne 0x4a5024
cmp edi, dword [ecx + 1]
jle 0x4a5024
cmp edi, dword [ecx + 5]
jl 0x4a5032
add ecx, 9
inc eax
cmp eax, ebp
jl 0x4a5015
mov dword [esp + 0x38], eax
jmp 0x4a5076
mov edx, dword [ecx + 1]
mov ecx, dword [esp + 0x14]
or edi, 0xffffffff
mov dword [esp + 0x38], eax
lea esi, [edx + ecx + 1]
mov cl, byte [edx + ecx + 1]
cmp cl, 0x6e
jne 0x4a5076
mov ebx, dword [esp + 0x14]
mov edi, esi
sub edi, ebx
inc esi
mov ecx, esi
call fcn.004ca4e0
mov ecx, dword [esp + 0x10]
add esi, eax
push 0
push esi
call fcn.004ccb60
add esi, eax
cmp byte [esi], 0x6e
je 0x4a5051
mov eax, dword [esp + 0x38]
cmp eax, ebp
jne 0x4a520b
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1c
ret 0xc
inc esi
mov ecx, esi
call fcn.004ca4e0
mov edx, dword [esp + 0x1c]
add esi, eax
and edx, 0xff
lea eax, [edx - 0x6b]
cmp eax, 5
ja case.0x4a50aa.109
jmp dword [eax*4 + 0x4a52a0]
mov ecx, dword [esp + 0x38]
mov eax, 1
cmp ecx, eax
je 0x4a5256
mov ecx, dword [esp + 0x10]
push 0
push esi
call fcn.004ccb60
add esi, eax
jmp 0x4a5205
mov ecx, dword [esp + 0x38]
mov eax, 1
cmp ecx, eax
je 0x4a5256
mov ecx, dword [esp + 0x10]
push 0
push esi
call fcn.004ccb60
lea esi, [esi + eax + 1]
cmp byte [esi], 0x6d
jne 0x4a5205
inc esi
jmp 0x4a5205
mov ecx, dword [esp + 0x38]
mov eax, 1
cmp ecx, eax
je 0x4a5256
mov ecx, dword [esp + 0x10]
push 0
push esi
call fcn.004ccb60
add esi, eax
cmp byte [esi], 0x6d
jne 0x4a5205
inc esi
jmp 0x4a5205
mov ecx, dword [esp + 0x38]
mov eax, 1
cmp ecx, eax
je 0x4a5256
mov ecx, dword [esp + 0x10]
push 0
push esi
call fcn.004ccb60
add esi, eax
cmp byte [esi], 0x6f
jne 0x4a5205
inc esi
jmp 0x4a5205
xor eax, eax
cmp esi, ebp
jae 0x4a5256
mov cl, byte [esi]
cmp cl, 0x50
jne 0x4a51a3
mov eax, dword [esp + 0x38]
mov edi, 1
cmp eax, edi
jne 0x4a518b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0xc
mov ecx, dword [esp + 0x10]
inc esi
push 0
push esi
call fcn.004ccb60
lea esi, [esi + eax + 1]
cmp byte [esi], 0x6d
jne 0x4a5201
jmp 0x4a5200
cmp cl, 0x53
jne 0x4a5256
mov eax, dword [esp + 0x38]
mov edi, 1
cmp eax, edi
jne 0x4a51c5
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0xc
mov al, byte [esi + 1]
inc esi
cmp al, 0x6e
jne 0x4a51ea
inc esi
mov ecx, esi
call fcn.004ca4e0
mov ecx, dword [esp + 0x10]
add esi, eax
push 0
push esi
call fcn.004ccb60
add esi, eax
cmp byte [esi], 0x6e
je 0x4a51cd
mov ecx, dword [esp + 0x10]
inc esi
push 0
push esi
call fcn.004ccb60
lea esi, [esi + eax + 1]
cmp byte [esi], 0x6d
jne 0x4a5201
inc esi
mov dword [esp + 0x18], edi
sub esi, dword [esp + 0x14]
mov edi, esi
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x64]
test eax, eax
jne 0x4a521a
xor eax, eax
jmp 0x4a521d
mov eax, dword [ecx + 0x5c]
mov ecx, dword [ecx + 0x64]
push edi
shr ecx, 2
push ecx
push eax
call fcn.004742c0
add esp, 0xc
cmp eax, 0xffffffff
mov dword [esp + 0x20], eax
je 0x4a5252
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
push 0
push 1
push edx
add eax, ecx
mov ecx, dword [esp + 0x34]
push 0
push eax
call fcn.004a5a10
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 0xc