Function at 0x4095a0
Capabilities:
Reference sql statements

Disassembly:
push 0xffffffffffffffff
push 0x419377
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb0
push ebp
mov ebp, ecx
mov dword [esp + 4], ebp
lea ecx, [ebp + 0x238]
mov dword [esp + 0x10], ecx
call fcn.00403400
test eax, eax
mov dword [esp + 0xc], eax
jne 0x4095f1
xor al, al
pop ebp
mov ecx, dword [esp + 0xb0]
mov dword fs:[0], ecx
add esp, 0xbc
ret
push ebx
push esi
push edi
mov ecx, eax
call fcn.0040c780
mov ebx, eax
lea eax, [ebp + 0x40c]
mov dword [esp + 0x14], eax
push eax
lea eax, [esp + 0x60]
push str.SELECT__FROM_TBL_PUBIPS_WHERE_FLD_GAMETYPEN_s
push eax
call fcn.0040e96f
add esp, 0xc
lea ecx, [esp + 0x5c]
push ecx
mov ecx, ebx
call fcn.0040cb30
test al, al
je 0x409709
mov ecx, ebx
call fcn.0040d050
test al, al
je 0x409709
push 0x25
call fcn.0040e8b3
mov ebp, eax
mov ecx, 9
xor eax, eax
mov edi, ebp
rep stosd dword es:[edi], eax
add esp, 4
mov ecx, ebx
stosb byte es:[edi], al
push str.FLD_PUBIP
call fcn.0040d0c0
push eax
lea ecx, [esp + 0x54]
call fcn.0040d660
mov edx, dword [esp + 0x54]
mov dword [esp + 0xc8], 0
push edx
call fcn.0040daa0
mov edi, dword [esp + 0x58]
or ecx, 0xffffffff
xor eax, eax
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.FLD_DESCRIPTION
mov eax, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebx
call fcn.0040d0c0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp + 0x10]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push ebp
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x14]
add ecx, 0x2a8
mov edx, dword [ecx]
call dword [edx + 4]
lea ecx, [esp + 0x50]
mov dword [esp + 0xc8], 0xffffffff
call fcn.0040d6f0
mov ecx, ebx
call fcn.0040d050
test al, al
jne 0x40963d
mov ebp, dword [esp + 0x10]
mov edi, dword [esp + 0x18]
push ebx
mov ecx, edi
call fcn.0040c870
mov ecx, edi
call fcn.0040c780
mov esi, eax
mov eax, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
push str.SELECT__FROM_TBL_USERSTATUS_WHERE_FLD_GAMETYPEN_s
push ecx
call fcn.0040e96f
add esp, 0xc
lea edx, [esp + 0x5c]
mov ecx, esi
push edx
call fcn.0040cb30
test al, al
je 0x409791
mov ecx, esi
call fcn.0040d050
test al, al
je 0x409791
push str.FLD_GOOD
mov ecx, esi
call fcn.0040d0c0
push eax
call fcn.0040eb35
add esp, 4
mov ecx, esi
mov dword [ebp + 0x418], eax
push str.FLD_FULL
call fcn.0040d0c0
push eax
call fcn.0040eb35
add esp, 4
mov ecx, esi
mov dword [ebp + 0x41c], eax
call fcn.0040d050
test al, al
jne 0x409750
mov ecx, edi
call fcn.0040c780
mov ebx, eax
mov eax, dword [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
push str.SELECT__FROM_TBL_GMIP_WHERE_FLD_GAMETYPEN_s
push ecx
call fcn.0040e96f
add esp, 0xc
lea edx, [esp + 0x5c]
mov ecx, ebx
push edx
call fcn.0040cb30
test al, al
je 0x40988f
xor esi, esi
mov ecx, ebx
mov dword [esp + 0x10], esi
call fcn.0040d050
test al, al
je 0x40988f
test esi, esi
jne 0x4097f2
push str.FLD_IP
mov ecx, ebx
call fcn.0040d0c0
lea edx, [ebp + 0x420]
jmp 0x409854
cmp esi, 1
jne 0x40980b
push str.FLD_IP
mov ecx, ebx
call fcn.0040d0c0
lea edx, [ebp + 0x434]
jmp 0x409854
cmp esi, 2
jne 0x409824
push str.FLD_IP
mov ecx, ebx
call fcn.0040d0c0
lea edx, [ebp + 0x448]
jmp 0x409854
cmp esi, 3
jne 0x40983d
push str.FLD_IP
mov ecx, ebx
call fcn.0040d0c0
lea edx, [ebp + 0x45c]
jmp 0x409854
cmp esi, 4
jne 0x409873
push str.FLD_IP
mov ecx, ebx
call fcn.0040d0c0
lea edx, [ebp + 0x470]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x10]
mov ecx, ebx
inc esi
mov dword [esp + 0x10], esi
call fcn.0040d050
test al, al
jne 0x4097da
mov edi, dword [esp + 0x18]
push ebx
mov ecx, edi
call fcn.0040c870
mov ecx, edi
call fcn.0040c780
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x5c]
push ecx
mov ebx, eax
push str.SELECT__FROM_TBL_SERVERINFO_WHERE_FLD_GAMETYPEN_s
push edx
mov dword [esp + 0x34], ebx
call fcn.0040e96f
add esp, 0xc
lea eax, [esp + 0x5c]
mov ecx, ebx
push eax
call fcn.0040cb30
test al, al
je 0x409b51
mov ecx, ebx
call fcn.0040d050
test al, al
je 0x409b51
add ebp, 0x2c0
mov dword [esp + 0x24], ebp
push 0x60
call fcn.0040e8b3
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov dword [esp + 0xc8], 1
je 0x409910
mov ecx, eax
call fcn.004082f0
mov ebp, eax
jmp 0x409912
xor ebp, ebp
push str.FLD_SERVERNAME
mov ecx, ebx
mov dword [esp + 0xcc], 0xffffffff
call fcn.0040d0c0
push eax
lea ecx, [esp + 0x48]
call fcn.0040d660
mov ecx, dword [esp + 0x48]
mov dword [esp + 0xc8], 2
push ecx
call fcn.0040daa0
mov edi, dword [esp + 0x4c]
or ecx, 0xffffffff
xor eax, eax
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.FLD_FREEMODE
mov edx, ecx
mov esi, edi
mov edi, ebp
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebx
call fcn.0040d0c0
push eax
call fcn.0040eb35
add esp, 4
mov ecx, ebx
mov dword [ebp + 0x20], eax
push str.FLD_MAXUSERCOUNT
call fcn.0040d0c0
push eax
call fcn.0040eb35
mov ecx, dword [esp + 0x28]
mov dword [ebp + 0x1c], eax
xor eax, eax
add esp, 4
mov dword [ebp + 0x24], eax
mov dword [ebp + 0x28], eax
mov eax, dword [ecx]
push ebp
call dword [eax + 4]
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x5c]
push ecx
push ebp
push str.SELECT__FROM_TBL_SELECTGATEIPS_WHERE_FLD_NAME__N_s_AND_FLD_GAMETYPEN_s
push edx
call fcn.0040e96f
mov ecx, dword [esp + 0x2c]
add esp, 0x10
call fcn.00403400
mov edi, eax
mov ecx, edi
mov dword [esp + 0x20], edi
call fcn.0040c780
mov esi, eax
lea eax, [esp + 0x5c]
push eax
mov ecx, esi
mov dword [esp + 0x14], esi
call fcn.0040cb30
test al, al
je 0x409b1c
mov ecx, esi
call fcn.0040d050
test al, al
je 0x409b1c
mov ecx, dword [ebp + 0x24]
push 0x2c
inc ecx
mov dword [ebp + 0x24], ecx
call fcn.0040e8b3
mov ebx, eax
mov ecx, 0xb
xor eax, eax
mov edi, ebx
add esp, 4
rep stosd dword es:[edi], eax
push str.FLD_PORT
mov ecx, esi
call fcn.0040d0c0
push eax
call fcn.0040eb35
add esp, 4
mov ecx, esi
mov dword [ebx + 0x28], eax
push str.FLD_NAME
call fcn.0040d0c0
push eax
lea ecx, [esp + 0x3c]
call fcn.0040d660
push str.FLD_IP
mov ecx, esi
mov byte [esp + 0xcc], 3
call fcn.0040d0c0
push eax
lea ecx, [esp + 0x30]
call fcn.0040d660
mov ecx, dword [esp + 0x3c]
mov byte [esp + 0xc8], 4
push ecx
call fcn.0040daa0
mov edx, dword [esp + 0x34]
push edx
call fcn.0040daa0
mov edi, dword [esp + 0x38]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + 0x15]
mov eax, ecx
mov esi, edi
mov edi, edx
push ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0x40]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp + 0x2c]
lea ecx, [ebp + 0x2c]
call dword [eax + 4]
lea ecx, [esp + 0x2c]
mov byte [esp + 0xc8], 3
call fcn.0040d6f0
lea ecx, [esp + 0x38]
mov byte [esp + 0xc8], 2
call fcn.0040d6f0
mov ecx, dword [esp + 0x10]
call fcn.0040d050
mov esi, dword [esp + 0x10]
test al, al
jne 0x409a05
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x28]
push esi
mov ecx, edi
call fcn.0040c870
mov ecx, dword [esp + 0x1c]
push edi
call fcn.00403450
lea ecx, [esp + 0x44]
mov dword [esp + 0xc8], 0xffffffff
call fcn.0040d6f0
mov ecx, ebx
call fcn.0040d050
test al, al
jne 0x4098e8
mov esi, dword [esp + 0x18]
push ebx
mov ecx, esi
call fcn.0040c870
mov ecx, dword [esp + 0x1c]
push esi
call fcn.00403450
mov ecx, dword [esp + 0xc0]
pop edi
pop esi
pop ebx
mov al, 1
pop ebp
mov dword fs:[0], ecx
add esp, 0xbc
ret