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

Disassembly:
sub esp, 0x34
mov eax, dword [0x100b2040]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
mov ebx, dword [esp + 0x44]
push ebp
push esi
mov esi, dword [esp + 0x44]
push edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x1c], edi
push dword [esi + 0x70]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], 0
mov byte [esp + 0x16], 0
call fcn.1001fe00
push dword [esi + 0x70]
mov dword [esp + 0x30], eax
call fcn.1001fe20
mov byte [ebx], 0
add esp, 8
mov dword [edi], 0
cmp dword [esi + 0xc80], 0
mov dword [esp + 0x2c], eax
jne 0x1002c24a
mov edi, 3
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.1006cacc
add esp, 0x34
ret
push esi
call fcn.1002bc00
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x1002c273
mov edi, 0x1b
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.1006cacc
add esp, 0x34
ret
push ebx
push esi
mov dword [edi], ebx
call fcn.1002dd60
mov edi, eax
add esp, 8
test edi, edi
jne 0x1002c9a8
mov eax, dword [esi + 0x618]
test eax, eax
je 0x1002c2a7
push eax
call dword [0x100b200c]
add esp, 4
mov dword [ebx + 0xf8], eax
test eax, eax
je 0x1002c259
mov eax, dword [esi + 0x600]
test eax, eax
je 0x1002c2c5
push eax
call dword [0x100b200c]
add esp, 4
mov dword [ebx + 0xfc], eax
test eax, eax
je 0x1002c259
mov eax, dword [esi + 0x604]
test eax, eax
je 0x1002c2f3
push eax
call dword [0x100b200c]
add esp, 4
mov dword [ebx + 0x4d0], eax
test eax, eax
je 0x1002c259
mov al, byte [esi + 0x6f3]
mov byte [ebx + 0x25c], al
push ebx
push esi
call fcn.1002caf0
mov edi, eax
add esp, 8
test edi, edi
jne 0x1002c9a8
mov eax, dword [ebx + 0x284]
test byte [eax + 0x4c], 1
je 0x1002c323
cmp byte [ebx + 0x240], 0
je 0x1002c323
mov byte [ebx + 0x243], 1
movzx eax, word [esi + 0x164]
test ax, ax
je 0x1002c36f
cmp byte [esi + 0xd10], 0
je 0x1002c36f
push eax
push 0x100976ec
mov dword [ebx + 0x4f0], eax
lea eax, [esp + 0x38]
push 0x10
push eax
call fcn.100341e0
push 0
lea eax, [esp + 0x44]
push eax
push 6
push dword [esi + 0xc58]
call fcn.10059fa0
add esp, 0x20
test eax, eax
jne 0x1002c259
push ebx
push esi
call fcn.1002d140
mov edi, eax
add esp, 8
test edi, edi
jne 0x1002c9a8
mov eax, dword [ebx + 0x280]
mov ecx, str.anonymous
mov ebp, str.ftp_example.com
test byte [eax + 0x4c], 0x20
je 0x1002c3a1
cmp dword [esi + 0xcfc], edi
je 0x1002c3a8
mov ecx, 0x100aa599
mov ebp, ecx
cmp dword [ebx + 0xec], edi
jne 0x1002c3c8
push ecx
call dword [0x100b200c]
add esp, 4
mov dword [ebx + 0xec], eax
test eax, eax
je 0x1002c259
cmp dword [ebx + 0xf0], edi
jne 0x1002c3ea
push ebp
call dword [0x100b200c]
add esp, 4
mov dword [ebx + 0xf0], eax
test eax, eax
mov ecx, 0x1b
cmove edi, ecx
test edi, edi
jne 0x1002c9a8
push dword [esi + 0x3d0]
push ebx
push esi
call fcn.1002d5a0
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1002c9a8
cmp byte [ebx + 0x249], al
je 0x1002c42d
push dword [ebx + 0x5c]
push dword [ebx + 0x74]
call fcn.10035610
add esp, 8
test eax, eax
je 0x1002c42d
mov byte [ebx + 0x249], 0
mov cl, byte [ebx + 0x24a]
test cl, cl
je 0x1002c44e
mov eax, dword [ebx + 0x4f4]
cmp eax, dword [ebx + 0x4f0]
jne 0x1002c44e
mov byte [ebx + 0x24a], 0
xor cl, cl
cmp byte [ebx + 0x249], 0
jne 0x1002c45b
test cl, cl
je 0x1002c46b
cmp byte [ebx + 0x240], 0
je 0x1002c46b
mov byte [ebx + 0x243], 1
mov eax, dword [ebx + 0x280]
mov edx, eax
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x1002c493
push ebx
push esi
call ecx
mov edi, eax
add esp, 8
test edi, edi
jne 0x1002c9a8
mov eax, dword [ebx + 0x280]
mov edx, eax
cmp dword [ebx + 0x4ec], 0
jge 0x1002c4a5
mov eax, dword [eax + 0x40]
mov dword [ebx + 0x4ec], eax
mov dword [ebx + 0x148], 0x1002fab0
mov dword [ebx + 0x150], 0x1002fc00
mov dword [ebx + 0x14c], 0x1002fab0
mov dword [ebx + 0x154], 0x1002fc00
mov al, byte [esi + 0x6eb]
mov byte [ebx + 0x259], al
test byte [edx + 0x4c], 0x10
je 0x1002c57e
push 0xffffffffffffffff
push 0
push ebx
push esi
call fcn.10030e60
mov eax, dword [ebx + 0x280]
lea ecx, [esp + 0x22]
push ecx
push esi
mov eax, dword [eax + 0x14]
call eax
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x1002c55f
push ebx
push esi
mov byte [ebx + 0x23c], 1
call fcn.1001f8c0
push esi
call fcn.10027d70
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1002c9a8
push esi
call fcn.1002e960
mov edi, eax
add esp, 4
test edi, edi
je 0x1002c54c
mov eax, dword [ebx + 0x280]
push 0
push edi
push esi
mov eax, dword [eax + 0xc]
call eax
jmp 0x1002c9a5
push 0xffffffffffffffff
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push esi
call fcn.10037f60
add esp, 0x18
push ebx
push esi
call fcn.1002b420
add esp, 8
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.1006cacc
add esp, 0x34
ret
mov eax, dword [esi + 0x568]
mov dword [esi + 0x3ec], eax
mov eax, dword [esi + 0x570]
mov dword [esi + 0x3f0], eax
mov eax, dword [esi + 0x59c]
mov dword [esi + 0x3f4], eax
mov eax, dword [esi + 0x64c]
mov dword [esi + 0x414], eax
mov eax, dword [esi + 0x580]
mov dword [esi + 0x3fc], eax
mov eax, dword [esi + 0x588]
mov dword [esi + 0x400], eax
mov eax, dword [esi + 0x578]
mov dword [esi + 0x404], eax
mov eax, dword [esi + 0x63c]
mov dword [esi + 0x40c], eax
mov eax, dword [esi + 0x654]
mov dword [esi + 0x410], eax
mov eax, dword [esi + 0x62c]
mov dword [esi + 0x418], eax
mov eax, dword [esi + 0x56c]
mov dword [esi + 0x454], eax
mov eax, dword [esi + 0x574]
mov dword [esi + 0x458], eax
mov eax, dword [esi + 0x584]
mov dword [esi + 0x464], eax
mov eax, dword [esi + 0x58c]
mov dword [esi + 0x468], eax
mov eax, dword [esi + 0x57c]
mov dword [esi + 0x46c], eax
mov eax, dword [esi + 0x640]
mov dword [esi + 0x474], eax
mov eax, dword [esi + 0x658]
mov dword [esi + 0x478], eax
mov eax, dword [esi + 0x5a0]
mov dword [esi + 0x45c], eax
mov eax, dword [esi + 0x650]
mov dword [esi + 0x47c], eax
mov eax, dword [esi + 0x598]
mov dword [esi + 0x470], eax
mov eax, dword [esi + 0x50c]
mov dword [esi + 0x498], eax
mov eax, dword [esi + 0x538]
mov dword [esi + 0x49c], eax
mov eax, dword [esi + 0x548]
mov dword [esi + 0x4a4], eax
mov eax, dword [esi + 0x540]
mov dword [esi + 0x4a8], eax
mov eax, dword [esi + 0x504]
mov dword [esi + 0x460], eax
mov eax, dword [esi + 0x648]
mov dword [esi + 0x4a0], eax
mov eax, dword [esi + 0x594]
mov dword [esi + 0x408], eax
mov eax, dword [esi + 0x508]
mov dword [esi + 0x430], eax
mov eax, dword [esi + 0x534]
mov dword [esi + 0x434], eax
mov eax, dword [esi + 0x544]
mov dword [esi + 0x43c], eax
mov eax, dword [esi + 0x53c]
mov dword [esi + 0x440], eax
mov eax, dword [esi + 0x500]
mov dword [esi + 0x3f8], eax
mov eax, dword [esi + 0x644]
mov dword [esi + 0x438], eax
lea eax, [ebx + 0x1bc]
push eax
lea eax, [esi + 0x3e4]
push eax
call fcn.10028af0
add esp, 8
test al, al
je 0x1002c259
lea eax, [ebx + 0x1fc]
push eax
lea eax, [esi + 0x44c]
push eax
call fcn.10028af0
add esp, 8
test al, al
je 0x1002c259
lea eax, [esp + 0x30]
push eax
call fcn.10038de0
add esp, 4
cmp dword [esi + 0x78], 0
movups xmm0, xmmword [eax]
movups xmmword [esp + 0x30], xmm0
je 0x1002c76e
push 2
push 5
push esi
call fcn.10035cf0
add esp, 0xc
mov ecx, dword [esi + 0x898]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esp + 0x50]
movups xmmword [eax], xmm0
call fcn.10038e90
add esp, 0x20
mov ebp, eax
cmp dword [esi + 0x78], 0
mov edi, edx
je 0x1002c7aa
push 5
push esi
call fcn.10035d30
add esp, 8
test edi, edi
jl 0x1002c858
jg 0x1002c7c0
cmp ebp, 0x3e8
jb 0x1002c858
push 0x1002bf00
lea eax, [esp + 0x24]
mov dword [esp + 0x24], esi
push eax
push dword [esi + 0x898]
mov dword [esp + 0x30], 0
push esi
call fcn.10028360
add esp, 0x10
test al, al
je 0x1002c825
nop dword [eax]
push 1
push dword [esp + 0x28]
push esi
call fcn.10028480
push 1
push dword [esp + 0x34]
push esi
call fcn.1002b0e0
push 0x1002bf00
lea eax, [esp + 0x3c]
push eax
push dword [esi + 0x898]
push esi
call fcn.10028360
add esp, 0x28
test al, al
jne 0x1002c7f0
cmp dword [esi + 0x78], 0
je 0x1002c838
push 2
push 5
push esi
call fcn.10035cf0
add esp, 0xc
mov eax, dword [esi + 0x898]
movups xmm0, xmmword [esp + 0x30]
movups xmmword [eax + 0x20], xmm0
cmp dword [esi + 0x78], 0
je 0x1002c858
push 5
push esi
call fcn.10035d30
add esp, 8
cmp byte [esi + 0x6e1], 0
je 0x1002c86e
cmp byte [esi + 0xd0d], 0
je 0x1002c900
cmp byte [esi + 0x6c1], 0
jne 0x1002c900
lea eax, [esp + 0x12]
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x1c]
push eax
push ebx
push esi
call fcn.1002a280
add esp, 0x14
test al, al
je 0x1002c900
mov edi, dword [esp + 0x14]
push edi
push ebx
push esi
call fcn.1002e700
mov eax, dword [esp + 0x28]
mov ebx, edi
add esp, 0xc
mov dword [eax], edi
cmp dword [ebx + 0x84], 0
je 0x1002c8c0
mov eax, dword [ebx + 0x88]
jmp 0x1002c8d4
cmp dword [ebx + 0xa4], 0
je 0x1002c8d1
mov eax, dword [ebx + 0xa8]
jmp 0x1002c8d4
mov eax, dword [ebx + 0x60]
cmp byte [ebx + 0x245], 0
mov ecx, str.host
push eax
mov eax, str.proxy
cmove eax, ecx
push eax
push dword [ebx + 0x40]
push str.Re_using_existing_connection__ld_with__s__s
push esi
call fcn.1002f920
add esp, 0x14
jmp 0x1002ca73
mov eax, dword [ebx + 0x280]
test dword [eax + 0x4c], 0x100
je 0x1002c91f
cmp byte [esi + 0x6ec], 0
je 0x1002c91f
mov byte [ebx + 0x25a], 1
cmp byte [esp + 0x12], 0
jne 0x1002c985
push dword [esi + 0x898]
push ebx
push esi
call fcn.100282b0
mov ebp, dword [esp + 0x34]
add esp, 0xc
test ebp, ebp
je 0x1002c9bd
test eax, eax
je 0x1002c9bd
cmp dword [eax + 4], ebp
jb 0x1002c9bd
push eax
push esi
call fcn.100280c0
add esp, 8
mov edi, eax
cmp dword [esi + 0x78], 0
je 0x1002c964
push 5
push esi
call fcn.10035d30
add esp, 8
test edi, edi
je 0x1002c976
push 0
push edi
push esi
call fcn.1002b0e0
add esp, 0xc
jmp 0x1002c9ce
push ebp
push str.No_more_connections_allowed_to_host:__zu
push esi
call fcn.1002f920
add esp, 0xc
push str.No_connections_available.
push esi
call fcn.1002f920
push ebx
call fcn.1002bf30
mov eax, dword [esp + 0x28]
mov edi, 0x59
mov dword [eax], 0
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x30]
xor ecx, esp
call fcn.1006cacc
add esp, 0x34
ret
cmp dword [esi + 0x78], 0
je 0x1002c9ce
push 5
push esi
call fcn.10035d30
add esp, 8
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x1002ca00
push esi
call fcn.10028730
add esp, 4
cmp eax, edi
jb 0x1002ca00
push esi
call fcn.10028170
add esp, 4
test eax, eax
je 0x1002caca
push 0
push eax
push esi
call fcn.1002b0e0
add esp, 0xc
push ebx
push esi
call fcn.1001f8c0
push esi
call fcn.10027d70
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1002c9a8
test byte [esi + 0x970], 0x28
je 0x1002ca42
cmp byte [esi + 0x978], al
je 0x1002ca42
push str.NTLM_picked_AND_auth_done_set__clear_picked
push esi
call fcn.1002f920
add esp, 8
mov dword [esi + 0x970], edi
mov byte [esi + 0x978], 0
test byte [esi + 0x980], 0x28
je 0x1002ca73
cmp byte [esi + 0x988], 0
je 0x1002ca73
push str.NTLM_proxy_picked_AND_auth_done_set__clear_picked
push esi
call fcn.1002f920
add esp, 8
mov dword [esi + 0x980], 0
mov byte [esi + 0x988], 0
push ebx
push esi
call fcn.1002b420
push esi
call fcn.1002e960
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x1002c9a8
cmp byte [ebx + 0x247], 0
mov eax, dword [esi + 0x17c]
mov dword [ebx + 0x2e4], eax
mov eax, dword [esi + 0x1d0]
mov dword [ebx + 0x2e8], eax
mov eax, dword [esp + 0x18]
je 0x1002cadd
mov ecx, dword [esp + 0x40]
mov byte [eax], 0
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1006cacc
add esp, 0x34
ret
push str.No_connections_available_in_cache
push esi
call fcn.1002f920
add esp, 8
jmp 0x1002c985
push eax
push ebx
push esi
call fcn.1002e440
mov edi, eax
jmp 0x1002c9a5