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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x32c
mov eax, dword [0x411018]
xor eax, esp
mov dword [esp + 0x328], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
jmp 0x404012
push 1
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0x4074a0
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov esi, dword [sym.imp.USER32.dll_LoadStringA]
push 0x64
push 0x4de1a0
push 0x65
push edi
mov dword [0x4de204], eax
call esi
push 0x64
push 0x4de138
push 0x69
push edi
call esi
mov eax, edi
call fcn.00404530
mov eax, dword [ebp + 0x14]
push eax
mov eax, edi
call fcn.004045b0
add esp, 4
test eax, eax
jne 0x404078
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x328]
xor ecx, esp
call fcn.0040a4e0
mov esp, ebp
pop ebp
ret 0x10
push str.STANDBY
push 0x40c554
push 0x12d
lea ecx, [esp + 0x23c]
push str.__PREMIUM___JoinServer__EX_03d__s____s_
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [0x4de130]
add esp, 0x14
lea edx, [esp + 0x230]
push edx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
test byte [0x4dc9d4], 1
jne 0x4040d3
or dword [0x4dc9d4], 1
call fcn.004083e0
push 0x40b9c0
call fcn.0040a590
add esp, 4
mov ecx, dword [0x4de130]
push ecx
mov ecx, 0x4dc9d8
call fcn.00408480
lea edx, [esp + 0x30]
push edx
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x404462
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str..JoinServer.ini
push 0x20
mov byte [esp + 0x218], al
mov dword [esp + 0x219], eax
mov dword [esp + 0x21d], eax
mov dword [esp + 0x221], eax
mov dword [esp + 0x225], eax
mov dword [esp + 0x229], eax
mov dword [esp + 0x22d], eax
mov dword [esp + 0x231], eax
mov word [esp + 0x235], ax
mov byte [esp + 0x237], al
mov byte [esp + 0x1f8], al
mov dword [esp + 0x1f9], eax
mov dword [esp + 0x1fd], eax
mov dword [esp + 0x201], eax
mov dword [esp + 0x205], eax
mov dword [esp + 0x209], eax
mov dword [esp + 0x20d], eax
mov dword [esp + 0x211], eax
mov word [esp + 0x215], ax
mov byte [esp + 0x217], al
mov byte [esp + 0x1d8], al
mov dword [esp + 0x1d9], eax
mov dword [esp + 0x1dd], eax
mov dword [esp + 0x1e1], eax
mov dword [esp + 0x1e5], eax
mov dword [esp + 0x1e9], eax
mov dword [esp + 0x1ed], eax
mov dword [esp + 0x1f1], eax
mov word [esp + 0x1f5], ax
mov byte [esp + 0x1f7], al
lea eax, [esp + 0x218]
push eax
push 0x40c825
push str.JoinServerODBC
push str.JoinServerInfo
call ebx
push str..JoinServer.ini
push 0x20
lea ecx, [esp + 0x1f8]
push ecx
push 0x40c825
push str.JoinServerUSER
push str.JoinServerInfo
call ebx
push str..JoinServer.ini
push 0x20
lea edx, [esp + 0x1d8]
push edx
push 0x40c825
push str.JoinServerPASS
push str.JoinServerInfo
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push str..JoinServer.ini
push 0xdaa2
push str.JoinServerPort
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 0x10
lea ecx, [esp + 0x1c8]
push ecx
movzx eax, ax
push str.127.0.0.1
mov dword [esp + 0x20], eax
xor eax, eax
push str.ConnectServerAddress
push str.JoinServerInfo
mov byte [esp + 0x1d8], 0
mov dword [esp + 0x1d9], eax
mov dword [esp + 0x1dd], eax
mov dword [esp + 0x1e1], eax
mov word [esp + 0x1e5], ax
mov byte [esp + 0x1e7], al
call ebx
push str..JoinServer.ini
push 0xd905
push str.ConnectServerPort
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 0
movzx edx, ax
push str.MaxConnectionPerIP
push str.JoinServerInfo
mov dword [esp + 0x1c], edx
call esi
push str..JoinServer.ini
push 0
push str.MaxConnectionPerHID
push str.JoinServerInfo
mov word [0x4de12c], ax
call esi
push str..JoinServer.ini
push 0
push str.MD5Encryption
push str.JoinServerInfo
mov word [0x4de128], ax
call esi
push str..JoinServer.ini
push 0xb
push 0x4de108
push str.peqH462m
push str.GlobalPassword
push str.JoinServerInfo
mov dword [0x4de124], eax
call ebx
push str..JoinServer.ini
push 0
push str.AutoRegistration
push str.JoinServerInfo
call esi
push str..JoinServer.ini
push 4
push str.AutoRegistrationMinLength
push str.JoinServerInfo
mov dword [0x4de120], eax
call esi
push str..JoinServer.ini
push 0
push str.AutoRegistrationAccountLevel
push str.JoinServerInfo
mov dword [0x4de11c], eax
call esi
push str..JoinServer.ini
push 0x1e
push str.AutoRegistrationAccountLevelDays
push str.JoinServerInfo
mov dword [0x4de118], eax
call esi
test byte [0x411968], 1
mov dword [0x4de114], eax
jne 0x4043ae
or dword [0x411968], 1
call fcn.004075b0
push 0x40b850
call fcn.0040a590
add esp, 4
lea eax, [esp + 0x1d0]
push eax
lea ecx, [esp + 0x1f4]
push ecx
lea eax, [esp + 0x218]
mov ecx, 0x411970
call fcn.004076b0
test al, al
jne 0x4043e7
push str.Could_not_connect_to_database__ODBC_Error_
push 1
call fcn.0040a100
add esp, 8
jmp 0x404478
mov edx, dword [esp + 0x10]
push edx
call fcn.00403f20
mov ecx, eax
call fcn.00408da0
test al, al
jne 0x40440a
call fcn.00401040
mov esi, eax
call fcn.00407740
jmp 0x404478
mov eax, dword [esp + 0xc]
push eax
call fcn.00403f90
lea ebx, [esp + 0x1c4]
call fcn.00409e20
test al, al
jne 0x40443e
call fcn.00403f20
mov esi, eax
call fcn.00408e30
call fcn.00401040
mov esi, eax
call fcn.00407740
jmp 0x404478
call fcn.00403e80
mov ecx, eax
call fcn.00402fa0
mov ecx, dword [0x4de130]
push 0
push 0x3e8
push 0x64
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x404478
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push str.WSAStartup___failed_with_error:__d
push 1
call fcn.0040a100
add esp, 0xc
mov edx, dword [0x4de130]
push 0
push 0x7d0
push 0x65
push edx
call dword [sym.imp.USER32.dll_SetTimer]
push 0x69
push edi
call dword [sym.imp.USER32.dll_LoadAcceleratorsA]
mov edi, dword [sym.imp.USER32.dll_GetMessageA]
push 0
push 0
mov esi, eax
push 0
lea eax, [esp + 0x20]
push eax
call edi
test eax, eax
je 0x4044ee
mov ebx, dword [sym.imp.USER32.dll_TranslateAcceleratorA]
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x14]
push ecx
push esi
push edx
call ebx
test eax, eax
jne 0x4044dd
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea ecx, [esp + 0x14]
push ecx
call dword [sym.imp.USER32.dll_DispatchMessageA]
push 0
push 0
push 0
lea edx, [esp + 0x20]
push edx
call edi
test eax, eax
jne 0x4044b6
mov eax, dword [0x4de204]
push eax
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
jmp 0x40450c
mov ecx, dword [esp + 0x334]
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0040a4e0
mov esp, ebp
pop ebp
ret 0x10