Function at 0x414348
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffff464
push ebx
push esi
push edi
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov eax, 0x4dea06
call fcn.004d08c0
xor esi, esi
xor eax, eax
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x2c], eax
mov word [ebp - 0x14], 8
test ebx, ebx
jne 0x41438f
mov dword [ebp - 0x28], 0xffffffec
jmp 0x4146b3
test edi, edi
je 0x4143a8
mov dl, byte [edi]
test dl, dl
jne 0x4143a8
mov byte [ebx], 0
mov dword [ebp - 0x28], 0xffffffe2
jmp 0x4146b3
test edi, edi
je 0x414451
push 4
push 0x5ccf37
push edi
call fcn.004ce208
add esp, 0xc
test eax, eax
jne 0x4143f0
push edi
lea ecx, [edi + 4]
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
lea esi, [ebp - 0x1b9c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x414415
xor eax, eax
push edi
or ecx, 0xffffffff
lea esi, [ebp - 0x1b9c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
xchg edi, esi
shr ecx, 2
mov eax, edi
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
xor esi, esi
mov al, byte [ebp + esi - 0x1b9c]
test al, al
jne 0x414426
xor esi, esi
jmp 0x414451
movsx eax, byte [ebp + esi - 0x1b9c]
cmp eax, 0x3a
jne 0x41444e
mov byte [ebp + esi - 0x1b9c], 0
lea edx, [ebp - 0x1b9b]
add esi, edx
push esi
call fcn.004cd988
pop ecx
mov esi, eax
jmp 0x414451
inc esi
jmp 0x414417
call fcn.00411814
test al, al
jne 0x4144a9
xor eax, eax
push esi
lea edi, [ebp - 0x1b9c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, ebx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
test esi, esi
je 0x41449d
push esi
push 0x5ccf3c
push ebx
call fcn.004cdfec
pop ecx
add ebx, eax
push ebx
call fcn.004d26c8
add esp, 0xc
mov dword [ebp - 0x28], 0xffffffd8
jmp 0x4146b3
mov byte [ebx], 0
test edi, edi
jne 0x4144cd
lea eax, [ebp - 0x1b9c]
push eax
call fcn.0041472c
pop ecx
test al, al
jne 0x4144cd
mov dword [ebp - 0x28], 0xffffffce
jmp 0x4146b3
lea edx, [ebp - 0x1b9c]
push edx
call sub.WSOCK32.dll_inet_addr
cmp eax, 0xffffffff
je 0x41452d
xor eax, eax
push esi
lea edi, [ebp - 0x1b9c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, ebx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
test esi, esi
je 0x414521
push esi
push 0x5ccf40
push ebx
call fcn.004cdfec
pop ecx
add ebx, eax
push ebx
call fcn.004d26c8
add esp, 0xc
mov dword [ebp - 0x28], 1
jmp 0x4146b3
push ebx
lea eax, [ebp - 0x1b9c]
push eax
call fcn.00414294
add esp, 8
cmp al, 1
jne 0x41454d
mov dword [ebp - 0x28], 1
jmp 0x4146b3
call fcn.00401270
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0x64
mov byte [ebx], 0
lea edx, [ebp - 0x1b9c]
push edx
call sub.WSOCK32.dll_gethostbyname
mov edi, eax
test edi, edi
jne 0x41457d
mov dword [ebp - 0x28], 0xffffffba
jmp 0x4146b3
mov eax, dword [edi + 0xc]
mov edx, dword [eax]
mov eax, dword [edx]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x4145b1
xor edx, edx
mov dl, byte [ebp - 0x3d]
push edx
xor ecx, ecx
mov cl, byte [ebp - 0x3e]
push ecx
xor eax, eax
mov al, byte [ebp - 0x3f]
push eax
xor edx, edx
mov dl, byte [ebp - 0x40]
push edx
push 0x5ccf44
push ebx
call fcn.004d26c8
add esp, 0x18
movsx ecx, byte [ebx]
cmp ecx, 0x30
jne 0x4145c5
movsx eax, byte [ebx + 1]
cmp eax, 0x2e
jne 0x4145c5
mov byte [ebx], 0
mov dl, byte [ebx]
test dl, dl
jne 0x414600
mov ecx, dword [edi + 0xc]
mov eax, dword [ecx + 4]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x414600
xor edx, edx
mov dl, byte [ebp - 0x3d]
push edx
xor ecx, ecx
mov cl, byte [ebp - 0x3e]
push ecx
xor eax, eax
mov al, byte [ebp - 0x3f]
push eax
xor edx, edx
mov dl, byte [ebp - 0x40]
push edx
push 0x5ccf50
push ebx
call fcn.004d26c8
add esp, 0x18
push ebx
call fcn.00414320
pop ecx
test al, al
jne 0x414616
push ebx
call fcn.0041430c
pop ecx
test al, al
je 0x414690
call fcn.00401270
mov ecx, dword [ebp - 0x30]
sub eax, ecx
cmp eax, 0x249f0
jbe 0x41467e
push ebx
call fcn.00414320
pop ecx
cmp al, 1
je 0x414690
xor eax, eax
push esi
lea edi, [ebp - 0x1b9c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, ebx
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
test esi, esi
je 0x414675
push esi
push 0x5ccf5c
push ebx
call fcn.004cdfec
pop ecx
add ebx, eax
push ebx
call fcn.004d26c8
add esp, 0xc
mov dword [ebp - 0x28], 0xffffffb0
jmp 0x4146b3
mov eax, dword [ebp - 0x34]
push eax
call sub.KERNEL32.dll_Sleep
add dword [ebp - 0x34], 0x64
jmp 0x41455c
test esi, esi
je 0x4146ac
push esi
push 0x5ccf60
push ebx
call fcn.004cdfec
pop ecx
add ebx, eax
push ebx
call fcn.004d26c8
add esp, 0xc
mov dword [ebp - 0x28], 1
mov word [ebp - 0x14], 0
jmp 0x4146de
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword fs:[0], edx
mov esp, ebp
mov edi, dword [ebp - 0x1ba8]
mov esi, dword [ebp - 0x1ba4]
mov ebx, dword [ebp - 0x1ba0]
pop ebp
ret