Function at 0x100fd4e0
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x40
mov eax, dword [edx]
mov esi, dword [edx + 4]
mov ebx, ecx
mov dword [esp + 0xc], eax
movzx eax, word [edx + 8]
mov word [esp + 0xa], ax
mov eax, dword [0x104decd0]
cmp eax, 3
jne 0x100fd73a
mov edi, esi
inc edi
js 0x100fd75f
test edi, edi
mov dword [esp + 4], ebx
je 0x100fd53d
call sub.KERNEL32.dll_GetProcessHeap
push edi
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x100fd766
mov ebx, eax
cmp edi, esi
jb 0x100fd548
jmp 0x100fd5a0
xor edi, edi
mov ebx, 1
cmp edi, esi
jae 0x100fd5a0
lea eax, [edi + edi]
mov ecx, 8
cmp eax, esi
cmovbe eax, esi
cmp eax, 8
cmova ecx, eax
test edi, edi
je 0x100fd57e
test ecx, ecx
js 0x100fd75f
mov edi, ecx
test ebx, ebx
je 0x100fd588
call sub.KERNEL32.dll_GetProcessHeap
push edi
push ebx
push 0
push eax
call sub.KERNEL32.dll_HeapReAlloc
jmp 0x100fd596
test ecx, ecx
mov edi, ecx
js 0x100fd75f
call sub.KERNEL32.dll_GetProcessHeap
push edi
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov ebx, eax
test eax, eax
je 0x100fd766
push esi
push dword [esp + 0x10]
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
cmp esi, 8
jae 0x100fd5d4
test esi, esi
je 0x100fd65b
xor eax, eax
nop dword [eax]
cmp byte [ebx + eax], 0
je 0x100fd6bf
inc eax
cmp esi, eax
jne 0x100fd5c0
jmp 0x100fd65b
mov ecx, ebx
neg ecx
and ecx, 3
je 0x100fd5f8
xor eax, eax
nop
cmp byte [ebx + eax], 0
je 0x100fd6bf
inc eax
cmp ecx, eax
jne 0x100fd5e0
lea eax, [esi - 8]
cmp ecx, eax
jbe 0x100fd5fd
jmp 0x100fd645
lea eax, [esi - 8]
xor ecx, ecx
movdqa xmm0, xmmword [0x103e6560]
movdqa xmm1, xmmword [0x103e6570]
nop dword [eax]
movq xmm2, qword [ebx + ecx]
movdqa xmm3, xmm2
paddd xmm3, xmm0
pandn xmm2, xmm3
pand xmm2, xmm1
pshufd xmm3, xmm2, 0xe5
por xmm3, xmm2
movd edx, xmm3
test edx, edx
jne 0x100fd63d
add ecx, 8
cmp ecx, eax
jbe 0x100fd610
cmp ecx, esi
ja 0x100fd774
mov eax, esi
sub eax, ecx
je 0x100fd65b
add ecx, ebx
xor edx, edx
nop
cmp byte [ecx + edx], 0
je 0x100fd6bf
inc edx
cmp eax, edx
jne 0x100fd650
mov dword [esp + 0x10], ebx
lea ebx, [esp + 0x10]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], esi
mov ecx, ebx
call fcn.100fa1a0
pxor xmm0, xmm0
mov esi, eax
mov edi, edx
mov eax, esp
mov dword [esp], 0
movdqa xmmword [esp + 0x10], xmm0
movdqa xmmword [esp + 0x20], xmm0
mov dword [esp + 0x18], 1
push eax
push ebx
push 0
push esi
call sub.WS2_32.dll_getaddrinfo
test eax, eax
je 0x100fd703
call sub.WS2_32.dll_WSAGetLastError
mov ecx, dword [esp + 4]
mov dword [ecx + 8], eax
mov dword [ecx + 4], 0
mov eax, 1
jmp 0x100fd71b
lea ecx, [esp + 0x10]
mov edx, 0xb
push 0x21
push 0x104228e8
call fcn.100f3d30
add esp, 8
test edi, edi
je 0x100fd6e9
call sub.KERNEL32.dll_GetProcessHeap
push ebx
push 0
push eax
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 4]
mov ecx, dword [esp + 0x14]
mov dword [edx + 8], ecx
mov dword [edx + 4], eax
mov dword [edx], 1
jmp 0x100fd732
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
movzx eax, word [esp + 0xa]
mov word [ecx + 0xc], ax
xor eax, eax
test edi, edi
mov dword [ecx], eax
mov byte [esi], 0
je 0x100fd732
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, esp
mov byte [esp], 1
lea edx, [esp + 0x10]
mov ecx, 0x104decd0
mov dword [esp + 0x10], eax
push 0x10422c5c
call fcn.100fb490
add esp, 4
jmp 0x100fd50e
call fcn.10006550
ud2
mov ecx, edi
mov edx, 1
call fcn.10006540
ud2
mov edx, esi
push 0x103e833c
call fcn.100098e0
add esp, 4
ud2