Function at 0x403fe0
Capabilities:
Initialize winsock library
Read .ini file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x22c
mov eax, dword [0x4275f0]
xor eax, esp
mov dword [esp + 0x228], eax
push ebx
push esi
push edi
push 1
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0x406ae0
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
xor ebx, ebx
push ebx
mov dword [0x42b7d0], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x42b7c8], eax
call fcn.004043d0
test ax, ax
jne 0x404058
push 0x10
push str.Register_Class
push str.Failed_to_register_window_class.
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x228]
xor ecx, esp
call fcn.0040aeaf
mov esp, ebp
pop ebp
ret
call fcn.00404450
test al, al
jne 0x40408c
push 0x10
push str.Window_Instance
push str.Failed_to_initiaize_window_instance.
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x228]
xor ecx, esp
call fcn.0040aeaf
mov esp, ebp
pop ebp
ret
mov eax, dword [0x42b7c4]
mov ecx, 0x423940
mov dword [0x4f4b90], eax
call fcn.004051f0
mov ecx, str.LOG_ACCOUNT
call fcn.004051f0
lea ecx, [esp + 0x30]
push ecx
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x404353
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str..JoinServer.ini
push 0x20
lea edx, [esp + 0x1fc]
push edx
push 0x42238d
push str.JoinServerODBC
push str.JoinServerInfo
mov byte [esp + 0x20c], bl
mov dword [esp + 0x20d], eax
mov dword [esp + 0x211], eax
mov dword [esp + 0x215], eax
mov dword [esp + 0x219], eax
mov dword [esp + 0x21d], eax
mov dword [esp + 0x221], eax
mov dword [esp + 0x225], eax
mov word [esp + 0x229], ax
mov byte [esp + 0x22b], al
mov byte [esp + 0x22c], bl
mov dword [esp + 0x22d], eax
mov dword [esp + 0x231], eax
mov dword [esp + 0x235], eax
mov dword [esp + 0x239], eax
mov dword [esp + 0x23d], eax
mov dword [esp + 0x241], eax
mov dword [esp + 0x245], eax
mov word [esp + 0x249], ax
mov byte [esp + 0x24b], al
mov byte [esp + 0x1ec], bl
mov dword [esp + 0x1ed], eax
mov dword [esp + 0x1f1], eax
mov dword [esp + 0x1f5], eax
mov dword [esp + 0x1f9], eax
mov dword [esp + 0x1fd], eax
mov dword [esp + 0x201], eax
mov dword [esp + 0x205], eax
mov word [esp + 0x209], ax
mov byte [esp + 0x20b], al
call esi
push str..JoinServer.ini
push 0x20
lea eax, [esp + 0x21c]
push eax
push 0x42238d
push str.JoinServerUSER
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 0x20
lea ecx, [esp + 0x1dc]
push ecx
push 0x42238d
push str.JoinServerPASS
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 0xb
push 0x42b7b0
push str.XwefDastoD
push str.GlobalPassword
push str.JoinServerInfo
call esi
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str..JoinServer.ini
push 0xdaa2
push str.JoinServerPort
push str.JoinServerInfo
call edi
movzx edx, ax
xor eax, eax
push str..JoinServer.ini
mov dword [esp + 0x1c9], eax
mov dword [esp + 0x1cd], eax
mov dword [esp + 0x1d1], eax
mov word [esp + 0x1d5], ax
mov byte [esp + 0x1d7], al
push 0x10
lea eax, [esp + 0x1cc]
mov dword [esp + 0x18], edx
mov byte [esp + 0x1cc], bl
push eax
push str.127.0.0.1
push str.ConnectServerAddress
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 0xd905
push str.ConnectServerPort
push str.JoinServerInfo
call edi
push str..JoinServer.ini
push ebx
push str.CaseSensitive
push str.JoinServerInfo
movzx esi, ax
call edi
push str..JoinServer.ini
push ebx
push str.MD5Encryption
push str.JoinServerInfo
mov dword [0x42b7c0], eax
call edi
lea ecx, [esp + 0x1d4]
push ecx
lea edx, [esp + 0x218]
mov dword [0x42b7bc], eax
push edx
lea eax, [esp + 0x1fc]
mov ecx, 0x42bc40
call fcn.00406c80
test al, al
jne 0x404307
push str.Could_not_connect_to_database
push 1
call fcn.004091a0
add esp, 8
jmp 0x404369
mov eax, dword [esp + 0x10]
call fcn.00407cd0
test al, al
jne 0x40431b
call fcn.00406d10
jmp 0x404369
push esi
lea esi, [esp + 0x1c8]
call fcn.00408ee0
test al, al
jne 0x404338
call fcn.00407d30
call fcn.00406d10
jmp 0x404369
call fcn.00402980
mov eax, dword [0x42b7c4]
push ebx
push 0x3e8
push 0x64
push eax
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x404369
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.WSAStartup___failed_with_error:__d
push 1
call fcn.004091a0
add esp, 0xc
mov esi, dword [sym.imp.USER32.dll_GetMessageA]
push ebx
push ebx
push ebx
lea ecx, [esp + 0x20]
push ecx
call esi
test eax, eax
je 0x4043a3
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
lea edx, [esp + 0x14]
push edx
call edi
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push ebx
push ebx
push ebx
lea ecx, [esp + 0x20]
push ecx
call esi
test eax, eax
jne 0x404383
mov edx, dword [0x42b7d0]
push edx
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov ecx, dword [esp + 0x234]
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0040aeaf
mov esp, ebp
pop ebp
ret