Function at 0x40e4c9
Capabilities:
Get hostname
Resolve dns

Disassembly:
push ebp
mov eax, 0x812c
lea ebp, [esp - 0x78]
call fcn.00420250
push ebx
xor eax, eax
push esi
push edi
xor ebx, ebx
mov byte [ebp - 0x80b4], bl
mov ecx, 0x1fff
lea edi, [ebp - 0x80b3]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
xor eax, eax
mov byte [ebp + 0x5c], bl
lea edi, [ebp + 0x5d]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x1f
mov byte [ebp - 0x24], bl
xor eax, eax
pop ecx
lea edi, [ebp - 0x23]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp + 0x6f], bl
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push eax
call fcn.004201d8
pop ecx
mov byte [ebp + 0x77], bl
mov edi, 0x7ff8
mov al, byte [ebp + 0x6f]
inc byte [ebp + 0x6f]
cmp al, 0x14
ja 0x40eaa2
call fcn.004201e2
cdq
push 5
pop ecx
idiv ecx
movzx eax, dl
cmp eax, 4
jg 0x40e848
je 0x40e7b7
sub eax, ebx
je 0x40e726
dec eax
je 0x40e695
dec eax
je 0x40e604
dec eax
jne 0x40ea8e
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e098
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e0b8
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x19
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e5e3
cmp cl, 0x39
jbe 0x40e5ec
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e5d7
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e034
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x40
lea eax, [ebp - 0x24]
push eax
push 0x42e058
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x34
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e674
cmp cl, 0x39
jbe 0x40e67d
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e668
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42dff4
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e014
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x13
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e705
cmp cl, 0x39
jbe 0x40e70e
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e6f9
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42dfb4
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42dfd4
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x14
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e796
cmp cl, 0x39
jbe 0x40e79f
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e78a
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e0d8
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e0f8
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x11
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e827
cmp cl, 0x39
jbe 0x40e830
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e81b
sub eax, 5
je 0x40e9fd
dec eax
je 0x40e96c
dec eax
je 0x40e8d9
sub eax, 0x17
jne 0x40ea8e
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push str.asdf
mov dword [ebp + 0x70], edi
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
lea eax, [ebp - 0x80b4]
push str.IP:
push eax
call fcn.00412098
cmp eax, ebx
pop ecx
pop ecx
je 0x40ea8e
add eax, 4
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e8b8
cmp cl, 0x39
jbe 0x40e8c1
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e8ac
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e1a0
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x28
lea eax, [ebp - 0x24]
push eax
push 0x42e1c0
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0xa9
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e94b
cmp cl, 0x39
jbe 0x40e954
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e93f
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e158
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x28
lea eax, [ebp - 0x24]
push eax
push 0x42e178
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x22
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40e9dc
cmp cl, 0x39
jbe 0x40e9e5
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40e9d0
push ebx
push ebx
lea eax, [ebp + 0x70]
push eax
lea eax, [ebp - 0x80b4]
push eax
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e118
mov dword [ebp + 0x70], edi
call fcn.00411e19
add esp, 0xc
push eax
call fcn.0040e121
add esp, 0x14
test al, al
je 0x40ea8e
push 0x20
lea eax, [ebp - 0x24]
push eax
push 0x42e138
call fcn.00411e19
push eax
lea eax, [ebp - 0x80b4]
push eax
call fcn.00412098
add esp, 0x14
cmp eax, ebx
je 0x40ea8e
add eax, 0x14
lea edx, [ebp + 0x5c]
xor esi, esi
mov cl, byte [eax]
cmp cl, 0x30
jb 0x40ea65
cmp cl, 0x39
jbe 0x40ea6a
cmp cl, 0x2e
jne 0x40ea7a
cmp cl, bl
je 0x40ea7a
cmp esi, 0xf
jg 0x40ea7a
mov byte [edx], cl
inc edx
inc eax
inc esi
jmp 0x40ea59
lea eax, [ebp + 0x5c]
push eax
mov byte [edx], bl
call fcn.00412e18
test al, al
pop ecx
je 0x40ea8e
mov byte [ebp + 0x77], 1
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [ebp + 0x77], bl
je 0x40e52b
cmp byte [ebp + 0x77], bl
je 0x40eb50
lea eax, [ebp + 0x5c]
push eax
call fcn.00412d20
mov dword [esp], 0x455c88
push eax
mov dword [0x4564d0], eax
call fcn.00412cef
pop ecx
pop ecx
push 0x1f
pop ecx
xor eax, eax
mov byte [ebp - 0xb4], bl
lea edi, [ebp - 0xb3]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 0x80
lea eax, [ebp - 0xb4]
push eax
call dword [sym.imp.WS2_32.dll_gethostname]
lea eax, [ebp - 0xb4]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov esi, eax
cmp esi, ebx
mov byte [0x4564d4], bl
je 0x40eb49
mov eax, dword [esi + 0xc]
cmp dword [eax], ebx
je 0x40eb49
xor edi, edi
cmp edi, 0x28
jge 0x40eb49
movsx ecx, word [esi + 0xa]
push ecx
push dword [edi + eax]
lea eax, [ebp - 0x30]
push eax
call fcn.0041fd80
mov eax, dword [0x4564d0]
add esp, 0xc
cmp eax, dword [ebp - 0x30]
je 0x40eb42
mov eax, dword [esi + 0xc]
add edi, 4
cmp dword [edi + eax], ebx
jne 0x40eb12
jmp 0x40eb49
mov byte [0x4564d4], 1
mov eax, dword [0x4564d0]
jmp 0x40eb68
push 0x10
push ebx
push 0x455c88
mov dword [0x4564d0], ebx
call fcn.004200c0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
add ebp, 0x78
leave
ret