Function at 0x4261a0
Capabilities:
Resolve dns

Disassembly:
sub esp, 0x134
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov dword [esp + 0x20], esi
call fcn.0041c2de
xor ecx, ecx
lea edx, [esp + 0x24]
cmp ax, 0x17
push 0
sete cl
mov dword [esp + 0x20], ecx
mov ecx, esi
push 7
call fcn.0041bce7
test al, al
je 0x4261f3
xor ebx, ebx
inc ebx
jmp 0x4261e1
cmp byte [esp + 0x13], 0
je 0x426200
push 0
push ebx
lea edx, [esp + 0x1b]
mov ecx, esi
call fcn.0041bce7
test al, al
jne 0x4261da
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x134
ret
mov ecx, dword [esp + 0x27]
mov edx, ecx
push 0x5a
pop eax
mov dword [esp + 0x2c], eax
and edx, 0xff0000
mov byte [esp + 0x14], al
mov eax, ecx
shr eax, 0x10
or edx, eax
mov eax, ecx
and eax, 0xff00
shl ecx, 0x10
or eax, ecx
shr edx, 8
shl eax, 8
or edx, eax
push 2
pop ebp
jbe 0x4262d0
cmp edx, 0x100
jae 0x4262d0
xor edi, edi
push 0
push ebx
lea edx, [esp + 0x1b]
mov ecx, esi
call fcn.0041bce7
test al, al
je 0x4261f3
mov al, byte [esp + 0x13]
mov byte [esp + edi + 0x40], al
test al, al
je 0x426272
inc edi
cmp edi, 0xff
jle 0x426249
jmp 0x4261f3
xor ecx, ecx
lea eax, [esp + 0x18]
push eax
push ecx
push ecx
lea eax, [esp + 0x4c]
mov dword [esp + 0x24], ecx
push eax
call dword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x426298
mov byte [esp + 0x14], 0x5b
jmp 0x42640f
mov eax, dword [esp + 0x18]
mov edi, eax
jmp 0x4262a8
cmp dword [edi + 4], ebp
je 0x4262ae
mov edi, dword [edi + 0x1c]
test edi, edi
jne 0x4262a0
jmp 0x4262c5
mov eax, dword [edi + 0x18]
push 4
add eax, 4
push eax
lea eax, [esp + 0x2f]
push eax
call fcn.0041863c
mov eax, dword [esp + 0x18]
push eax
call dword [sym.imp.WS2_32.dll_freeaddrinfo]
test edi, edi
je 0x42628e
push 0x10
push 0
lea eax, [esp + 0x38]
push eax
call fcn.0041869b
movzx eax, byte [esp + 0x24]
mov word [esp + 0x30], bp
sub eax, 1
je 0x42639d
sub eax, 1
jne 0x42628e
mov edx, ebx
lea ecx, [esp + 0x30]
call fcn.0041be4c
mov ebp, eax
mov dword [esp + 0x18], ebp
cmp ebp, 0xffffffff
je 0x42628e
push dword [esp + 0x1c]
mov edx, ebp
mov ecx, esi
push 0x5a
call fcn.00426120
mov edi, eax
cmp edi, ebx
jne 0x42637e
push ecx
lea eax, [esp + 0x24]
push eax
sub esp, 0xc
lea ecx, [esp + 0x2c]
call fcn.0041c0de
mov ecx, dword [esp + 0x18]
mov ebp, eax
call fcn.0041c10a
cmp ebp, 0xffffffff
jne 0x426351
mov esi, dword [esp + 0x20]
mov byte [esp + 0x14], 0x5b
jmp 0x42640f
mov ecx, ebp
call fcn.0041c165
mov eax, dword [esp + 0x1c]
mov edx, ebp
mov esi, dword [esp + 0x20]
or eax, 2
push eax
push 0x5a
mov ecx, esi
call fcn.00426120
mov edi, eax
cmp edi, ebx
jne 0x42637e
mov edx, ebp
mov ecx, esi
call fcn.0041bf5d
mov ecx, ebp
call fcn.0041c10a
cmp edi, 0xffffffff
je 0x42628e
cmp edi, ebx
je 0x426426
xor bl, bl
jmp 0x426426
mov ax, word [esp + 0x25]
lea ecx, [esp + 0x30]
mov word [esp + 0x32], ax
mov eax, dword [esp + 0x27]
mov dword [esp + 0x34], eax
call fcn.0041bd61
mov edi, eax
cmp edi, 0xffffffff
je 0x42628e
mov ecx, edi
call fcn.0041c165
push dword [esp + 0x1c]
mov edx, edi
mov ecx, esi
push 0x5a
call fcn.00426120
cmp eax, ebx
jne 0x4263e8
mov edx, edi
mov ecx, esi
call fcn.0041bf5d
jmp 0x4263fc
cmp eax, 0xffffffff
jne 0x4263fa
push 0x5b
pop eax
mov dword [esp + 0x2c], eax
mov byte [esp + 0x14], al
jmp 0x4263fc
xor bl, bl
mov ecx, edi
call fcn.0041c10a
cmp bl, 1
jne 0x426426
cmp byte [esp + 0x2c], 0x5a
je 0x426426
push dword [esp + 0x1c]
or edx, 0xffffffff
mov ecx, esi
push dword [esp + 0x18]
call fcn.00426120
test eax, eax
setne bl
mov al, bl
jmp 0x4261f5