Function at 0x41ec40
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
mov eax, dword [0x4a701c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [edi*4 + 0x4b5420]
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 8]
mov ecx, dword [edx + eax + 2]
lea esi, [eax + 0xf]
mov dword [ebp - 0x74], ecx
add esi, edx
mov ecx, dword [edx + eax + 6]
mov dword [ebp - 0x70], ecx
mov cl, byte [edx + eax + 0xe]
mov edx, 0x17
mov byte [ebp - 0x69], cl
lea ecx, [ebp - 0x1c]
mov eax, ecx
mov byte [ebp - 5], 0
sub esi, eax
mov al, byte [esi + ecx]
dec edx
mov byte [ecx], al
inc ecx
test al, al
je 0x41eca3
test edx, edx
jne 0x41ec92
jmp 0x41ecb3
test edx, edx
je 0x41ecb3
push edx
push 0
push ecx
call fcn.00461440
add esp, 0xc
mov edx, dword [0x4ad1b4]
lea ecx, [ebp - 0x1c]
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ecc0
sub ecx, esi
lea eax, [ebp - 0x1c]
push ecx
push eax
lea eax, [ebp - 0x68]
push eax
test edx, edx
je 0x41ece2
lea eax, [edx + 0x10]
push eax
call dword [sym.imp.libmysql.dll_mysql_real_escape_string]
jmp 0x41ece8
call dword [sym.imp.libmysql.dll_mysql_escape_string]
lea eax, [ebp - 0x1c]
push eax
call fcn.0046d2ec
mov ebx, eax
add esp, 4
cmp ebx, 0x1e8480
jae 0x41ee4f
lea eax, [ebp - 0x68]
push eax
push 0x4aaab4
push str.SELECT__account_id___name___class___base_level___job_level___online__FROM___s__WHERE__name__LIKE__s_LIMIT_10
push dword [0x4ad1b4]
call fcn.0043d8e0
mov esi, dword [sym.imp.libmysql.dll_mysql_num_rows]
add esp, 0x10
cmp eax, 0xffffffff
je 0x41f23c
mov eax, dword [0x4ad1b4]
test eax, eax
je 0x41f2e2
mov ecx, dword [eax + 0x3e0]
test ecx, ecx
je 0x41f241
push ecx
call esi
or eax, edx
je 0x41f23c
mov eax, dword [0x4ad1b4]
test eax, eax
je 0x41ef4c
mov ecx, dword [eax + 0x3e0]
test ecx, ecx
je 0x41ef34
push ecx
call esi
cmp eax, 1
jne 0x41ef2f
test edx, edx
jne 0x41ef2f
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41edcf
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41edcf
push eax
call dword [sym.imp.libmysql.dll_mysql_fetch_row]
mov dword [esi + 0x3e4], eax
test eax, eax
je 0x41edbb
push dword [esi + 0x3e0]
call dword [sym.imp.libmysql.dll_mysql_fetch_lengths]
mov dword [esi + 0x3e8], eax
jmp 0x41edcf
lea eax, [esi + 0x10]
mov dword [esi + 0x3e8], 0
push eax
call dword [sym.imp.libmysql.dll_mysql_errno]
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41ee05
cmp dword [esi + 0x3e4], 0
je 0x41ee05
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41ee01
push eax
call dword [sym.imp.libmysql.dll_mysql_num_fields]
test eax, eax
je 0x41ee01
mov eax, dword [esi + 0x3e4]
mov eax, dword [eax]
jmp 0x41ee0b
xor eax, eax
jmp 0x41ee0b
mov eax, dword [ebp - 0x84]
push eax
call fcn.0046d2ec
mov esi, dword [0x4ad1b4]
add esp, 4
mov ebx, eax
test esi, esi
je 0x41ee4f
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41ee4f
push eax
call dword [sym.imp.libmysql.dll_mysql_free_result]
mov dword [esi + 0x3e0], 0
mov dword [esi + 0x3e4], 0
mov dword [esi + 0x3e8], 0
test ebx, ebx
je 0x41f356
mov edi, dword [0x4a7a90]
lea eax, [edi - 1]
cmp eax, 0xffe
ja 0x41f353
cmp dword [edi*4 + 0x4b5420], 0
je 0x41f353
mov eax, dword [edi*4 + 0x4b5420]
test byte [eax], 1
jne 0x41f353
test edi, edi
je 0x41eebe
mov edx, eax
mov eax, dword [edx + 0x1c]
add eax, 0x13
cmp eax, dword [edx + 0x14]
jbe 0x41eebe
push str.chlogif_req_accinfo
push 0x296
push str.D:_ragnarokbr_rathena_srccharchar_logif.cpp
mov edx, 0x13
mov ecx, edi
call fcn.00440270
mov edi, dword [0x4a7a90]
add esp, 0xc
mov esi, dword [edi*4 + 0x4b5420]
mov edx, 0x2720
mov ecx, dword [esi + 0x1c]
mov eax, dword [esi + 0xc]
mov word [ecx + eax], dx
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov edx, dword [ebp - 0x78]
mov dword [ecx + eax + 2], edx
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov edx, dword [ebp - 0x74]
mov dword [ecx + eax + 6], edx
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov edx, dword [ebp - 0x70]
mov dword [ecx + eax + 0xa], edx
mov edx, 0x13
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov dword [ecx + eax + 0xe], ebx
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
mov bl, byte [ebp - 0x69]
mov byte [ecx + eax + 0x12], bl
mov ecx, edi
call fcn.004403f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045f6f1
mov esp, ebp
pop ebp
ret
mov eax, dword [0x4ad1b4]
test eax, eax
je 0x41ef4c
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x41ef4c
push eax
call esi
mov ecx, eax
mov dword [ebp - 0x7c], edx
jmp 0x41ef57
xorps xmm0, xmm0
movlpd qword [ebp - 0x80], xmm0
mov ecx, dword [ebp - 0x80]
mov eax, dword [0x4cf5c8]
test eax, eax
je 0x41ef65
cmp byte [eax], 0
jne 0x41ef6a
mov eax, 0x49d9fc
mov edx, dword [ebp - 0x70]
push ecx
push eax
push edx
mov edx, dword [ebp - 0x74]
push edx
push edi
call fcn.0041eb00
mov ebx, dword [sym.imp.libmysql.dll_mysql_num_fields]
add esp, 0x14
mov edi, dword [ebp - 0x84]
nop dword [eax]
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41f379
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f1f0
push eax
call dword [sym.imp.libmysql.dll_mysql_fetch_row]
mov dword [esi + 0x3e4], eax
test eax, eax
je 0x41f1d6
push dword [esi + 0x3e0]
call dword [sym.imp.libmysql.dll_mysql_fetch_lengths]
mov dword [esi + 0x3e8], eax
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41f003
cmp dword [esi + 0x3e4], 0
je 0x41f003
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f001
push eax
call ebx
test eax, eax
je 0x41f001
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax]
jmp 0x41f003
xor edi, edi
push edi
call fcn.0046d2ec
mov esi, dword [0x4ad1b4]
add esp, 4
mov dword [ebp - 0x7c], eax
test esi, esi
je 0x41f041
cmp dword [esi + 0x3e4], 0
je 0x41f041
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f03f
push eax
call ebx
cmp eax, 1
jbe 0x41f03f
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax + 4]
jmp 0x41f041
xor edi, edi
lea ecx, [ebp - 0x34]
mov byte [ebp - 0x1d], 0
mov esi, edi
mov eax, ecx
mov edx, 0x17
sub esi, eax
mov al, byte [esi + ecx]
dec edx
mov byte [ecx], al
inc ecx
test al, al
je 0x41f064
test edx, edx
jne 0x41f053
jmp 0x41f074
test edx, edx
je 0x41f074
push edx
push 0
push ecx
call fcn.00461440
add esp, 0xc
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41f0a6
cmp dword [esi + 0x3e4], 0
je 0x41f0a6
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f0a4
push eax
call ebx
cmp eax, 2
jbe 0x41f0a4
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax + 8]
jmp 0x41f0a6
xor edi, edi
push edi
call fcn.0046d2ec
mov esi, dword [0x4ad1b4]
add esp, 4
mov dword [ebp - 0x88], eax
test esi, esi
je 0x41f0e7
cmp dword [esi + 0x3e4], 0
je 0x41f0e7
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f0e5
push eax
call ebx
cmp eax, 3
jbe 0x41f0e5
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax + 0xc]
jmp 0x41f0e7
xor edi, edi
push edi
call fcn.0046d2ec
mov esi, dword [0x4ad1b4]
add esp, 4
movzx eax, ax
mov dword [ebp - 0x90], eax
test esi, esi
je 0x41f12b
cmp dword [esi + 0x3e4], 0
je 0x41f12b
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f129
push eax
call ebx
cmp eax, 4
jbe 0x41f129
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax + 0x10]
jmp 0x41f12b
xor edi, edi
push edi
call fcn.0046d2ec
mov esi, dword [0x4ad1b4]
add esp, 4
movzx eax, ax
mov dword [ebp - 0x8c], eax
test esi, esi
je 0x41f16f
cmp dword [esi + 0x3e4], 0
je 0x41f16f
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f16d
push eax
call ebx
cmp eax, 5
jbe 0x41f16d
mov eax, dword [esi + 0x3e4]
mov edi, dword [eax + 0x14]
jmp 0x41f16f
xor edi, edi
push edi
call fcn.0046d2ec
mov ecx, dword [ebp - 0x88]
add esp, 4
movzx edx, ax
call fcn.0041e6d0
mov ecx, 0xd7
mov esi, eax
call fcn.0040ef20
test dx, dx
mov ecx, str.Online
mov edx, str.Offline
cmove ecx, edx
push ecx
mov ecx, dword [ebp - 0x8c]
movsx ecx, cx
push ecx
mov ecx, dword [ebp - 0x90]
movsx ecx, cx
push ecx
push esi
lea ecx, [ebp - 0x34]
push ecx
push dword [ebp - 0x7c]
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push dword [ebp - 0x78]
call fcn.0041eb00
add esp, 0x28
jmp 0x41ef90
lea eax, [esi + 0x10]
mov dword [esi + 0x3e8], 0
push eax
call dword [sym.imp.libmysql.dll_mysql_errno]
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41f379
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f379
push eax
call dword [sym.imp.libmysql.dll_mysql_free_result]
mov dword [esi + 0x3e0], 0
mov dword [esi + 0x3e4], 0
mov dword [esi + 0x3e8], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045f6f1
mov esp, ebp
pop ebp
ret
mov eax, dword [0x4ad1b4]
test eax, eax
je 0x41f2e2
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x41f2e2
push eax
call esi
or eax, edx
je 0x41f2e2
mov ecx, dword [0x4ad1b4]
test ecx, ecx
jne 0x41f27d
push 0x1fb
push str.D:_ragnarokbr_rathena_srccharinter.cpp
push str.at__s:_lu___self_is_NULL_n
jmp 0x41f2b5
mov edx, dword [ecx + 4]
mov eax, edx
sub eax, dword [ecx]
test eax, eax
jle 0x41f2a6
mov byte [edx], 0
push dword [ecx]
push 0x1fb
push str.D:_ragnarokbr_rathena_srccharinter.cpp
push str.at__s:_lu____s_n
call fcn.004427f0
add esp, 0x10
jmp 0x41f2bd
push 0x1fb
push str.D:_ragnarokbr_rathena_srccharinter.cpp
push str.at__s:_lu_n
call fcn.004427f0
add esp, 0xc
mov eax, dword [0x4cf5c4]
test eax, eax
je 0x41f2cb
cmp byte [eax], 0
jne 0x41f2d0
mov eax, 0x49d9fc
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push edi
call fcn.0041eb00
add esp, 0x10
jmp 0x41f309
mov eax, dword [0x4cf5c0]
test eax, eax
je 0x41f2f0
cmp byte [eax], 0
jne 0x41f2f5
mov eax, 0x49d9fc
lea ecx, [ebp - 0x1c]
push ecx
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push edi
call fcn.0041eb00
add esp, 0x14
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x41f379
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x41f379
push eax
call dword [sym.imp.libmysql.dll_mysql_free_result]
mov dword [esi + 0x3e0], 0
mov dword [esi + 0x3e4], 0
mov dword [esi + 0x3e8], 0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045f6f1
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x78]
mov eax, dword [0x4cf5c4]
test eax, eax
je 0x41f364
cmp byte [eax], 0
jne 0x41f369
mov eax, 0x49d9fc
push eax
push dword [ebp - 0x70]
push dword [ebp - 0x74]
push edi
call fcn.0041eb00
add esp, 0x10
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0045f6f1
mov esp, ebp
pop ebp
ret