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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x134
mov eax, dword [0x5c9040]
xor eax, esp
mov dword [esp + 0x130], eax
and dword [esp], 0
push ebx
mov ebx, ecx
mov dword [esp + 0x14], edx
push esi
push edi
mov edi, dword [ebx + 0x18]
mov esi, dword [ebx + 0x8bc]
add esi, 4
push dword [edi + 0x2dc]
call dword [0x5c9b0c]
and dword [edi + 0x2dc], 0
mov eax, dword [edi + 0x308]
pop ecx
test eax, eax
jne 0x4a76ec
cmp dword [esp + 0x1c], 0xe5
jne 0x4a76de
push 0x28
push esi
call fcn.0051c170
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4a76d7
inc esi
mov al, byte [esi]
mov byte [esp + 0x13], al
cmp byte [esi + 1], al
jne 0x4a76d7
cmp byte [esi + 2], al
jne 0x4a76d7
lea ecx, [esi + 3]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4a76d7
push 0xa
lea eax, [esp + 0x1c]
push eax
push ecx
call fcn.0052d289
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov dl, byte [esp + 0x13]
cmp byte [ecx], dl
jne 0x4a76d7
cmp eax, 0xffff
jbe 0x4a76ab
push str.Illegal_port_number_in_EPSV_reply
push ebx
call fcn.0048c1c7
pop ecx
pop ecx
jmp 0x4a7a2b
mov ecx, edi
mov word [edi + 0x314], ax
call fcn.004a75cb
push eax
call dword [0x5c9b38]
mov dword [edi + 0x2dc], eax
pop ecx
test eax, eax
je 0x4a7a07
test esi, esi
jne 0x4a77e0
push str.Weirdly_formatted_EPSV_reply
jmp 0x4a769e
mov edx, edi
mov ecx, ebx
call fcn.004a7535
jmp 0x4a7a2e
cmp eax, 1
mov eax, dword [esp + 0x1c]
jne 0x4a7a1c
cmp eax, 0xe3
jne 0x4a7a1c
cmp byte [esi], 0
je 0x4a7a0b
xor eax, eax
mov ecx, esi
mov dword [esp + 0x14], eax
test eax, eax
je 0x4a771f
cmp byte [ecx], 0x2c
jne 0x4a7759
inc ecx
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4a7759
push 0xa
lea eax, [esp + 0x1c]
push eax
push ecx
call fcn.0052d289
mov ecx, eax
add esp, 0xc
cmp ecx, 0xff
ja 0x4a7759
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x20], ecx
inc eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], eax
cmp eax, 6
jl 0x4a7715
jmp 0x4a775f
inc esi
cmp byte [esi], 0
jne 0x4a770d
cmp byte [esi], 0
je 0x4a7a0b
cmp byte [ebx + 0x6bf], 0
je 0x4a77a3
push dword [edi + 0x6c]
push dword [esp + 0x30]
push dword [esp + 0x30]
push dword [esp + 0x30]
push dword [esp + 0x30]
push str.Skip__u._u._u._u_for_data_connection__reuse__s_instead
push ebx
call fcn.0048c275
add esp, 0x1c
mov ecx, edi
call fcn.004a75cb
push eax
call dword [0x5c9b38]
pop ecx
jmp 0x4a77c0
push dword [esp + 0x2c]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
push str._u._u._u._u
call fcn.00480d01
add esp, 0x14
mov dword [edi + 0x2dc], eax
test eax, eax
je 0x4a7a07
mov eax, dword [esp + 0x30]
shl eax, 8
add eax, dword [esp + 0x34]
mov word [edi + 0x314], ax
cmp byte [edi + 0x1e5], 0
je 0x4a7863
cmp byte [edi + 0x1e1], 0
je 0x4a77fa
mov eax, dword [edi + 0x94]
jmp 0x4a7800
mov eax, dword [edi + 0xb4]
lea ecx, [esp + 0xc]
mov dword [esp + 0x14], eax
push ecx
push 0
push dword [edi + 0x334]
mov edx, eax
mov ecx, ebx
call fcn.0048f2ec
add esp, 0xc
cmp eax, 1
jne 0x4a782f
push eax
lea edx, [esp + 0x10]
mov ecx, ebx
call fcn.0048d271
pop ecx
movzx eax, word [edi + 0x334]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x18], eax
test esi, esi
jne 0x4a7929
movzx eax, ax
push eax
push dword [esp + 0x18]
push str.Cant_resolve_proxy_host__s:_hu
push ebx
call fcn.0048c1c7
add esp, 0x10
push 5
jmp 0x4a7a2d
cmp byte [edi + 0x1f8], 0
je 0x4a78c6
cmp byte [edi + 0x1e7], 0
jne 0x4a78c6
mov eax, dword [edi + 0x2dc]
cmp byte [eax], 0
jne 0x4a78c6
push ecx
push 0
push 0x100
push 1
mov edx, ebx
mov ecx, edi
call fcn.00486752
push dword [edi + 0x2dc]
call dword [0x5c9b0c]
and dword [edi + 0x2dc], 0
add esp, 0x14
mov ecx, edi
call fcn.004a75cb
push eax
call dword [0x5c9b38]
mov dword [edi + 0x2dc], eax
pop ecx
test eax, eax
je 0x4a7a07
mov edx, dword [edi + 0x2dc]
lea eax, [esp + 0xc]
push eax
movzx eax, word [edi + 0x314]
mov ecx, ebx
push 0
push eax
call fcn.0048f2ec
add esp, 0xc
cmp eax, 1
jne 0x4a78f7
push eax
lea edx, [esp + 0x10]
mov ecx, ebx
call fcn.0048d271
pop ecx
movzx eax, word [edi + 0x314]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x18], eax
test esi, esi
jne 0x4a7929
movzx eax, ax
push eax
push dword [edi + 0x2dc]
push str.Cant_resolve_new_host__s:_hu
push ebx
call fcn.0048c1c7
add esp, 0x10
push 0xf
jmp 0x4a7a2d
xor eax, eax
mov edx, edi
cmp byte [edi + 0x1f3], al
mov ecx, ebx
setne al
push eax
push esi
push 1
call fcn.00484604
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
je 0x4a7975
mov edx, esi
mov ecx, ebx
call fcn.0048f618
cmp dword [edi + 0x308], 0
jne 0x4a796c
cmp dword [esp + 0x1c], 0xe5
je 0x4a76de
mov eax, dword [esp + 0x14]
jmp 0x4a7a2e
cmp byte [ebx + 0x6cb], 0
je 0x4a79b9
mov ecx, dword [esp + 0xc]
lea edx, [esp + 0x38]
mov esi, dword [edi + 0x2dc]
push 0x100
mov ecx, dword [ecx]
call fcn.0048eb3c
mov eax, dword [esp + 0x1c]
pop ecx
movzx eax, ax
push eax
lea eax, [esp + 0x3c]
push eax
push esi
push str.Connecting_to__s___s__port__d
push ebx
call fcn.0048c275
mov esi, dword [esp + 0x20]
add esp, 0x14
mov edx, esi
mov ecx, ebx
call fcn.0048f618
push dword [edi + 0x78]
call dword [0x5c9b0c]
and dword [edi + 0x78], 0
mov ax, word [edi + 0x314]
pop ecx
mov word [edi + 0x346], ax
push dword [edi + 0x2dc]
call dword [0x5c9b38]
mov dword [edi + 0x78], eax
pop ecx
test eax, eax
je 0x4a7a07
mov byte [edi + 0x1ed], 1
mov eax, dword [ebx + 0x18]
mov byte [eax + 0x316], 0
xor eax, eax
jmp 0x4a7a2e
push 0x1b
jmp 0x4a7a2d
push str.Couldnt_interpret_the_227_response
push ebx
call fcn.0048c1c7
pop ecx
pop ecx
push 0xe
jmp 0x4a7a2d
push eax
push str.Bad_PASV_EPSV_response:__03d
push ebx
call fcn.0048c1c7
add esp, 0xc
push 0xd
pop eax
mov ecx, dword [esp + 0x13c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0051b034
mov esp, ebp
pop ebp
ret