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

Disassembly:
push ebp
push edi
mov ebp, edx
push esi
push ebx
sub esp, 0x5c
mov dword [esp + 0x1c], eax
mov eax, dword [edx]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x74]
lea edx, [eax + 1]
test ecx, ecx
mov dword [ebp], edx
je 0x494584
cmp byte [eax + 1], 0x7a
je 0x4944f0
mov eax, ebp
call fcn.00492ca0
test eax, eax
mov ebx, eax
mov dword [esp + 0x34], eax
jle 0x494730
mov edx, dword [ebp]
mov dword [esp], edx
mov dword [esp + 0x24], edx
call sub.msvcrt.dll_strlen
cmp ebx, eax
jg 0x494730
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
test byte [eax], 4
je 0x4948d0
mov edi, 0x4dec62
mov ecx, 8
mov esi, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x4948d0
mov ecx, dword [esp + 0x70]
test ecx, ecx
jne 0x494a17
add ebx, edx
mov dword [ebp], ebx
lea edx, [esp + 0x34]
mov eax, ebp
call fcn.00492880
test eax, eax
je 0x494730
mov edx, dword [esp + 0x34]
test edx, edx
jle 0x494ad5
mov dword [esp + 0x2c], 1
jmp 0x4945c5
lea edx, [eax + 2]
mov dword [ebp], edx
cmp byte [eax + 2], 0
je 0x494730
add eax, 3
mov dword [ebp], eax
mov eax, ebp
call fcn.00492d50
cmp eax, 0xffffffff
mov ebx, eax
je 0x494730
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0x40]
test edx, edx
je 0x49452c
cmp ebx, dword [eax + 0x44]
jge 0x494730
mov eax, ebp
call fcn.00492d50
cmp eax, 0xffffffff
je 0x494730
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x40]
test eax, eax
je 0x494aa2
mov edx, dword [eax + ebx*4]
test edx, edx
je 0x494584
cmp byte [edx], 0
je 0x494584
mov eax, dword [esp + 0x20]
call fcn.00493050
mov edi, dword [esp + 0x70]
test edi, edi
je 0x494584
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0x40]
mov edx, dword [eax + ebx*4]
test edx, edx
je 0x494584
cmp byte [edx], 0
je 0x494584
mov eax, dword [esp + 0x70]
call fcn.00493050
mov eax, dword [esp + 0x20]
mov edx, 0x4dec6b
call fcn.00493050
lea edx, [esp + 0x34]
mov eax, ebp
call fcn.00492880
test eax, eax
je 0x494730
mov ecx, dword [esp + 0x74]
test ecx, ecx
je 0x494951
mov eax, dword [esp + 0x34]
test eax, eax
jle 0x494a9b
mov dword [esp + 0x2c], 0
mov edx, dword [esp + 0x74]
lea eax, [esp + 0x44]
test edx, edx
cmovne eax, dword [esp + 0x20]
xor ebx, ebx
mov edi, eax
jmp 0x49467e
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x38]
mov edx, ebp
call fcn.00494fa0
mov esi, eax
mov eax, dword [esp + 0x38]
test eax, eax
je 0x494619
mov dword [esp], eax
call fcn.004abfa8
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
test esi, esi
je 0x494930
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x494641
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x44], 0
mov eax, dword [esp + 0x1c]
mov dword [esp], esi
mov ecx, edi
mov edx, ebp
call fcn.00493d70
test eax, eax
mov esi, eax
je 0x494900
mov eax, dword [esp + 0x74]
test eax, eax
je 0x494750
add ebx, 1
cmp dword [esp + 0x34], ebx
jle 0x4946b5
mov eax, dword [esp + 0x20]
mov edx, 0x4dec6d
call fcn.00493050
mov eax, dword [ebp]
movzx edx, byte [eax]
cmp dl, 0x5a
je 0x4947e3
cmp dl, 0x7a
jne 0x4945e0
add eax, 1
mov ecx, dword [esp + 0x20]
mov edx, ebp
mov dword [ebp], eax
mov eax, dword [esp + 0x1c]
call fcn.00496880
test eax, eax
mov esi, eax
jne 0x494840
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x49493e
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 4]
cmp byte [eax - 1], 0x3e
je 0x494a04
mov eax, dword [esp + 0x20]
mov edx, 0x4dec73
call fcn.00493050
mov ebp, dword [esp + 0x74]
test ebp, ebp
je 0x494740
mov edi, dword [esp + 0x78]
test edi, edi
je 0x494740
mov edi, dword [esp + 0x1c]
mov eax, edi
call fcn.00492a90
mov ebx, eax
mov eax, dword [esp + 0x20]
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp], ebx
mov ecx, eax
sub ecx, edx
cmp edx, eax
mov eax, 0
cmove ecx, eax
mov eax, edi
add eax, 0xc
call fcn.00492ed0
add esp, 0x5c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
add esp, 0x5c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
add esp, 0x5c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x1c]
mov edx, dword [edi + 4]
sub edx, dword [edi]
mov eax, dword [eax + 0x40]
mov dword [esp + 0x24], edx
lea ecx, [eax + ebx*4]
lea eax, [edx + 1]
mov dword [esp], eax
mov dword [esp + 0x28], ecx
call fcn.004a91f0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov byte [eax + edx], 0
mov eax, dword [esp + 0x20]
mov edx, edi
mov ecx, dword [edi + 4]
call fcn.00493180
mov eax, dword [edi]
test eax, eax
je 0x494667
mov dword [esp], eax
call fcn.004abfa8
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [edi], 0
jmp 0x494667
add eax, 1
lea ecx, [esp + 0x38]
mov edx, ebp
mov dword [ebp], eax
mov eax, dword [esp + 0x1c]
call fcn.00494fa0
test eax, eax
mov esi, eax
jne 0x4948a0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x4946b5
mov dword [esp], eax
call fcn.004abfa8
test esi, esi
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x38], 0
jne 0x494667
jmp 0x4946b5
mov eax, ebp
call fcn.00492ca0
test eax, eax
mov dword [esp + 0x24], eax
jle 0x494667
mov eax, dword [ebp]
mov dword [esp], eax
call sub.msvcrt.dll_strlen
cmp dword [esp + 0x24], eax
jg 0x494667
mov eax, dword [esp + 0x20]
mov edx, 0x4dec5e
call fcn.00493050
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, dword [ebp]
call fcn.00492fa0
mov eax, dword [esp + 0x74]
test eax, eax
je 0x494a40
mov eax, dword [esp + 0x24]
add dword [ebp], eax
jmp 0x494667
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x38]
call fcn.00493180
mov eax, dword [esp + 0x74]
test eax, eax
je 0x4949a0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x494667
jmp 0x49480e
mov eax, dword [esp + 0x20]
mov ecx, ebx
call fcn.00492fa0
mov ebx, dword [esp + 0x70]
test ebx, ebx
je 0x494ac9
mov ebx, dword [esp + 0x34]
xor esi, esi
mov edx, dword [ebp]
test ebx, ebx
jne 0x494a1c
mov dword [ebp], edx
jmp 0x494584
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x494930
mov eax, dword [edi]
test eax, eax
je 0x494930
mov dword [esp], eax
call fcn.004abfa8
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [edi], 0
lea esi, [esi]
mov eax, dword [esp + 0x2c]
xor esi, esi
test eax, eax
je 0x4946c1
mov eax, dword [esp + 0x20]
mov edx, 0x4dec70
call fcn.00493050
jmp 0x4946e0
mov eax, dword [esp + 0x34]
shl eax, 2
mov dword [esp], eax
call fcn.004a91f0
mov ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x1c]
test ecx, ecx
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], ecx
jle 0x494a9b
xor edx, edx
mov ebx, edi
jmp 0x494983
mov eax, dword [ebx + 0x40]
mov dword [eax + edx*4], 0
add edx, 1
cmp ecx, edx
jne 0x494980
jmp 0x4945bd
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x3c]
sub edx, dword [esp + 0x38]
mov eax, dword [eax + 0x40]
mov dword [esp + 0x24], edx
lea ecx, [eax + ebx*4]
lea eax, [edx + 1]
mov dword [esp], eax
mov dword [esp + 0x28], ecx
call fcn.004a91f0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x38]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov byte [eax + edx], 0
jmp 0x4948bd
mov eax, dword [esp + 0x20]
mov edx, 0x4dec5e
call fcn.00493050
jmp 0x4946d2
mov esi, 1
mov eax, dword [esp + 0x70]
mov ecx, ebx
call fcn.00492fa0
mov eax, dword [esp + 0x34]
add dword [ebp], eax
test esi, esi
jne 0x4944c1
jmp 0x494584
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
lea edx, [eax + ebx*4]
lea eax, [ecx + 1]
mov dword [esp], eax
mov dword [esp + 0x28], edx
call fcn.004a91f0
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
mov dword [edx], eax
mov eax, dword [esp + 0x1c]
mov edx, dword [ebp]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + ebx*4]
mov byte [eax + ecx], 0
jmp 0x494892
xor esi, esi
jmp 0x4946c1
mov eax, dword [esp + 0x20]
mov edx, ebx
call fcn.00493090
mov esi, dword [esp + 0x70]
test esi, esi
je 0x494584
mov eax, dword [esp + 0x70]
mov edx, ebx
call fcn.00493090
jmp 0x494584
mov eax, dword [esp + 0x34]
add dword [ebp], eax
jmp 0x494584
xor esi, esi
jmp 0x49493e