Function at 0x4141b8
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, 0x4dd9c6
call fcn.004cfcb8
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 0x4141ff
mov dword [ebp - 0x28], 0xffffffec
jmp 0x41450d
test edi, edi
je 0x414218
mov dl, byte [edi]
test dl, dl
jne 0x414218
mov byte [ebx], 0
mov dword [ebp - 0x28], 0xffffffe2
jmp 0x41450d
test edi, edi
je 0x4142c1
push 4
push 0x5cb977
push edi
call fcn.004cd600
add esp, 0xc
test eax, eax
jne 0x414260
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 0x414285
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 0x414296
xor esi, esi
jmp 0x4142c1
movsx eax, byte [ebp + esi - 0x1b9c]
cmp eax, 0x3a
jne 0x4142be
mov byte [ebp + esi - 0x1b9c], 0
lea edx, [ebp - 0x1b9b]
add esi, edx
push esi
call fcn.004ccd80
pop ecx
mov esi, eax
jmp 0x4142c1
inc esi
jmp 0x414287
call fcn.00411564
test al, al
jne 0x414319
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 0x41430d
push esi
push 0x5cb97c
push ebx
call fcn.004cd3e4
pop ecx
add ebx, eax
push ebx
call fcn.004d1ac0
add esp, 0xc
mov dword [ebp - 0x28], 0xffffffd8
jmp 0x41450d
mov byte [ebx], 0
test edi, edi
jne 0x41433d
lea eax, [ebp - 0x1b9c]
push eax
call fcn.00414584
pop ecx
test al, al
jne 0x41433d
mov dword [ebp - 0x28], 0xffffffce
jmp 0x41450d
lea edx, [ebp - 0x1b9c]
push edx
call sub.WSOCK32.dll_inet_addr
cmp eax, 0xffffffff
je 0x41439d
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 0x414391
push esi
push 0x5cb980
push ebx
call fcn.004cd3e4
pop ecx
add ebx, eax
push ebx
call fcn.004d1ac0
add esp, 0xc
mov dword [ebp - 0x28], 1
jmp 0x41450d
push ebx
lea eax, [ebp - 0x1b9c]
push eax
call fcn.00414104
add esp, 8
cmp al, 1
jne 0x4143bd
mov dword [ebp - 0x28], 1
jmp 0x41450d
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 0x4143ed
mov dword [ebp - 0x28], 0xffffffba
jmp 0x41450d
mov eax, dword [edi + 0xc]
mov edx, dword [eax]
mov eax, dword [edx]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x414421
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 0x5cb984
push ebx
call fcn.004d1ac0
add esp, 0x18
movsx ecx, byte [ebx]
cmp ecx, 0x30
jne 0x414435
movsx eax, byte [ebx + 1]
cmp eax, 0x2e
jne 0x414435
mov byte [ebx], 0
mov dl, byte [ebx]
test dl, dl
jne 0x414470
mov ecx, dword [edi + 0xc]
mov eax, dword [ecx + 4]
mov eax, dword [eax]
mov dword [ebp - 0x40], eax
test eax, eax
je 0x414470
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 0x5cb990
push ebx
call fcn.004d1ac0
add esp, 0x18
push ebx
call fcn.0041417c
pop ecx
test al, al
je 0x4144ea
call fcn.00401270
mov ecx, dword [ebp - 0x30]
sub eax, ecx
cmp eax, 0x249f0
jbe 0x4144d8
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 0x4144cf
push esi
push 0x5cb99c
push ebx
call fcn.004cd3e4
pop ecx
add ebx, eax
push ebx
call fcn.004d1ac0
add esp, 0xc
mov dword [ebp - 0x28], 0xffffffb0
jmp 0x41450d
mov eax, dword [ebp - 0x34]
push eax
call sub.KERNEL32.dll_Sleep
add dword [ebp - 0x34], 0x64
jmp 0x4143cc
test esi, esi
je 0x414506
push esi
push 0x5cb9a0
push ebx
call fcn.004cd3e4
pop ecx
add ebx, eax
push ebx
call fcn.004d1ac0
add esp, 0xc
mov dword [ebp - 0x28], 1
mov word [ebp - 0x14], 0
jmp 0x414538
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