Function at 0x404370
Capabilities:
Get hostname
Initialize winsock library
Resolve dns

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x628
push ebx
push esi
push edi
call fcn.00435de0
call fcn.00402bd0
test eax, eax
je 0x4043a3
push str.D___Xjoepxt__TztXPX75__Tfuvq__qbmfuuf_bdu
push 0x5d933c
push 0x603b8c
call fcn.005b5240
add esp, 0xc
jmp 0x4043ba
push str.D___XJOEPXT__tztufn43__Tfuvq__qbmfuuf_bdu
push 0x5d933c
push 0x603b8c
call fcn.005b5240
add esp, 0xc
push 0x5d96c8
push str.noip.txt
call fcn.005b4540
add esp, 8
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 0
je 0x40449c
mov eax, dword [ebp - 0x1b4]
mov ecx, dword [eax + 0xc]
and ecx, 0x10
test ecx, ecx
jne 0x40448d
mov byte [ebp - 0x218], 0
mov edx, dword [ebp - 0x1b4]
push edx
push 0x64
lea eax, [ebp - 0x218]
push eax
call fcn.005b6170
add esp, 0xc
lea ecx, [ebp - 0x218]
push ecx
call fcn.005b3b30
add esp, 4
mov dword [ebp - 0x21c], eax
cmp dword [ebp - 0x21c], 7
jge 0x404432
jmp 0x40448d
mov edx, dword [ebp - 0x21c]
movsx eax, byte [ebp + edx - 0x219]
cmp eax, 0xa
jne 0x404453
mov ecx, dword [ebp - 0x21c]
mov byte [ebp + ecx - 0x219], 0
lea edx, [ebp - 0x5e4]
push edx
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.004012c0
lea ecx, [ebp - 0x5e0]
push ecx
mov ecx, 0x6d8130
call fcn.0040c790
lea ecx, [ebp - 0x5e0]
call fcn.00401320
jmp 0x4043df
mov edx, dword [ebp - 0x1b4]
push edx
call fcn.005b40e0
add esp, 4
mov word [ebp - 0x20], 0x202
lea eax, [ebp - 0x1b0]
push eax
mov cx, word [ebp - 0x20]
push ecx
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x404501
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.WSAStartup_Error_d
push 0xff
lea edx, [ebp - 0x31c]
push edx
call fcn.005b6070
add esp, 0x10
mov byte [ebp - 0x21d], 0
push 0
push str.WARNING
lea eax, [ebp - 0x31c]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x404af2
push 0x100
lea ecx, [ebp - 0x31c]
push ecx
call dword [sym.imp.WS2_32.dll_gethostname]
cmp eax, 0xffffffff
jne 0x404561
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.Running_Error__gethostname_Your_Ini_File__d_
push 0xff
lea edx, [ebp - 0x31c]
push edx
call fcn.005b6070
add esp, 0x10
mov byte [ebp - 0x21d], 0
push 0
push str.WARNING
lea eax, [ebp - 0x31c]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x404af2
mov dword [ebp - 0x320], 0
lea ecx, [ebp - 0x31c]
push ecx
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov dword [ebp - 0x320], eax
cmp dword [ebp - 0x320], 0
jne 0x4045d0
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.Running_Error__Check_Your_Ini_gethostbyname__d_
push 0xff
lea edx, [ebp - 0x31c]
push edx
call fcn.005b6070
add esp, 0x10
mov byte [ebp - 0x21d], 0
push 0
push str.WARNING
lea eax, [ebp - 0x31c]
push eax
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x404af2
mov ecx, dword [ebp - 0x320]
movsx edx, word [ecx + 0xa]
cmp edx, 4
je 0x4045ff
push 0
push str.WARNING
push str.Running_Error__Your_Ip_Addr_Is_Not_32Bit
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x404af2
mov dword [ebp - 0x33c], 0
mov eax, dword [ebp - 0x320]
movsx ecx, word [eax + 0xa]
push ecx
mov edx, dword [ebp - 0x320]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x32c]
push edx
call fcn.005b4f00
add esp, 0xc
movzx ax, byte [ebp - 0x32c]
mov word [ebp - 0x338], ax
movzx cx, byte [ebp - 0x32b]
mov word [ebp - 0x336], cx
movzx dx, byte [ebp - 0x32a]
mov word [ebp - 0x334], dx
movzx ax, byte [ebp - 0x329]
mov word [ebp - 0x332], ax
mov dword [ebp - 0x340], 0
cmp dword [ebp - 0x340], 2
jge 0x40471f
mov edx, dword [ebp - 0x340]
xor eax, eax
mov ax, word [edx*8 + 0x5f1360]
and eax, 0xff
mov ecx, dword [ebp - 0x338]
and ecx, 0xffff
and ecx, 0xff
cmp eax, ecx
jne 0x404715
mov edx, dword [ebp - 0x340]
xor eax, eax
mov ax, word [edx*8 + 0x5f1362]
and eax, 0xff
mov ecx, dword [ebp - 0x336]
and ecx, 0xffff
and ecx, 0xff
cmp eax, ecx
jne 0x404715
mov edx, dword [ebp - 0x340]
xor eax, eax
mov ax, word [edx*8 + 0x5f1364]
and eax, 0xff
mov ecx, dword [ebp - 0x334]
and ecx, 0xffff
and ecx, 0xff
cmp eax, ecx
jne 0x404715
xor edx, edx
test edx, edx
jne 0x404715
mov dword [ebp - 0x33c], 1
jmp 0x40471f
mov dword [ebp - 0x33c], 1
cmp dword [ebp - 0x33c], 0
jne 0x40476c
push 0xffffffffffffffff
push str.Running_Error__Check_Your_Ini_File__bCanRunTheHost___d_
push 0xff
lea eax, [ebp - 0x31c]
push eax
call fcn.005b6070
add esp, 0x10
mov byte [ebp - 0x21d], 0
push 0
push str.WARNING
lea ecx, [ebp - 0x31c]
push ecx
call dword [sym.imp.USER32.dll_GetActiveWindow]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
xor eax, eax
jmp 0x404af2
push 0x402ab0
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
push 0x7a
push str.BFServer_vc
call fcn.0059e3b0
add esp, 8
push 0x7a
push 0
push 0
push 0x5d95b8
push 0x63
push 0x6047b4
call fcn.005b6070
add esp, 0x18
mov byte [0x604817], 0
push 0x64
push 0x604750
push 0x6d
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.USER32.dll_LoadStringA]
push str.ChildWindow
push 0x63
push 0x6046ec
call fcn.005b6070
add esp, 0xc
mov byte [0x60474f], 0
mov eax, dword [ebp + 8]
push eax
call fcn.00404b30
add esp, 4
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00404bc0
add esp, 8
test eax, eax
jne 0x404808
mov eax, dword [0x604818]
push eax
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
xor eax, eax
jmp 0x404af2
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0xddd5
mov edx, dword [0x60481c]
push edx
push 0x14
push 0x50
push 0x244
push 0x140
push 0x50000003
push 0x5d95a8
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x603d20], eax
push 0
mov eax, dword [ebp + 8]
push eax
push 0xddd6
mov ecx, dword [0x60481c]
push ecx
push 0x14
push 0x64
push 0x244
push 0xd2
push 0x50000001
push str.Run_Gs
push str.BUTTON
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x603d1c], eax
mov dword [0x603c90], 0x20
mov dword [0x603c94], 0x6bc788
mov dword [0x603c98], 0x402c20
mov dword [0x603c9c], 0x402c60
mov dword [0x603ca0], 0x402dc0
mov dword [0x603ca4], 0x402e10
mov dword [0x603ca8], 0x4030f0
mov dword [0x603cac], 0x403010
mov dword [0x603cb0], 0x402eb0
mov dword [0x603cb4], 0x402f80
mov dword [0x603cb8], 0x402fc0
push 0x603c90
call dword [0x60e854]
mov dword [0x603c90], eax
push 8
mov edx, dword [0x603c90]
push edx
push 0x603c94
call fcn.005b4f00
add esp, 0xc
push 0x5d93ac
push str.bfaddr.txt
call fcn.005b4540
add esp, 8
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 0
je 0x4049d4
mov eax, dword [0x603c98]
push eax
mov ecx, dword [0x603c94]
push ecx
push 0x402d50
push 0x5f1378
push 0x4042c0
push fcn.00404090
push 0x404230
push 0x404140
push 0x60f8be
push fcn.00496730
push fcn.004966b0
push fcn.004965d0
push fcn.00496560
push 0x6bc770
push 0x6bc76c
push 0x6bc768
push 0x402c60
push 0x402c20
push 0x6bc788
push str._d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d_n_d
lea edx, [ebp - 0x440]
push edx
call fcn.005b5240
add esp, 0x54
mov eax, dword [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x440]
push ecx
call fcn.005b5fa0
add esp, 8
mov edx, dword [ebp - 0x1b4]
push edx
call fcn.005b40e0
add esp, 4
mov eax, 1
test eax, eax
je 0x404a3a
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x1c]
push ecx
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x404a33
push 0
push 0
push 0
lea edx, [ebp - 0x1c]
push edx
call dword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
jne 0x404a09
jmp 0x404a3a
lea eax, [ebp - 0x1c]
push eax
push 0
mov ecx, dword [ebp - 0x1c]
push ecx
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
test eax, eax
jne 0x404a31
lea edx, [ebp - 0x1c]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
jmp 0x404a38
call fcn.004703a0
jmp 0x4049d4
push str.noip.txt
lea ecx, [ebp - 0x540]
push ecx
call fcn.005b3a40
add esp, 8
push 1
push 0x12
lea edx, [ebp - 0x540]
push edx
lea ecx, [ebp - 0x5cc]
call fcn.0040c7f0
mov ecx, 0x6d8130
call fcn.004b0950
mov dword [ebp - 0x5d0], eax
jmp 0x404a85
mov eax, dword [ebp - 0x5d0]
add eax, 0x10
mov dword [ebp - 0x5d0], eax
mov ecx, 0x6d8130
call fcn.0054a860
cmp dword [ebp - 0x5d0], eax
je 0x404ac3
cmp dword [ebp - 0x5d0], 0
je 0x404ac1
push 0xa
mov ecx, dword [ebp - 0x5d0]
push ecx
lea edx, [ebp - 0x5cc]
push edx
call fcn.00412380
add esp, 8
push eax
call fcn.004123b0
add esp, 8
jmp 0x404a76
mov ecx, 0x6d8130
call fcn.0040c7c0
lea ecx, [ebp - 0x5cc]
call fcn.0040d9b0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x5e8], eax
lea ecx, [ebp - 0x5cc]
call fcn.00404b00
mov eax, dword [ebp - 0x5e8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10