Function at 0x4298d0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
push edx
push ecx
push 0x4ac8b4
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
push str.SELECT__class____mode____hp____sp____max_hp____max_sp____atk1____atk2____matk____aspd___def____mdef____flee____hit____life_time__FROM___s__WHERE__ele_id____d_AND__char_id____d
push dword [0x4ad1b4]
mov dword [edi], ecx
mov dword [edi + 4], edx
call fcn.0043d8e0
add esp, 0x14
cmp eax, 0xffffffff
jne 0x4299d3
mov ecx, dword [0x4ad1b4]
test ecx, ecx
jne 0x429989
push 0x37
push str.D:_ragnarokbr_rathena_srccharint_elemental.cpp
push str.at__s:_lu___self_is_NULL_n
call fcn.004427f0
add esp, 0xc
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ecx + 4]
mov eax, edx
sub eax, dword [ecx]
test eax, eax
jle 0x4299b6
mov byte [edx], 0
push dword [ecx]
push 0x37
push str.D:_ragnarokbr_rathena_srccharint_elemental.cpp
push str.at__s:_lu____s_n
call fcn.004427f0
add esp, 0x10
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x37
push str.D:_ragnarokbr_rathena_srccharint_elemental.cpp
push str.at__s:_lu_n
call fcn.004427f0
add esp, 0xc
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x429ec3
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x429e90
push eax
call dword [sym.imp.libmysql.dll_mysql_fetch_row]
mov dword [esi + 0x3e4], eax
test eax, eax
je 0x429e76
push dword [esi + 0x3e0]
call dword [sym.imp.libmysql.dll_mysql_fetch_lengths]
mov ebx, dword [sym.imp.libmysql.dll_mysql_num_fields]
mov dword [esi + 0x3e8], eax
mov esi, dword [0x4ad1b4]
test esi, esi
je 0x429a4e
cmp dword [esi + 0x3e4], 0
je 0x429a4e
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x429a4a
push eax
call ebx
test eax, eax
je 0x429a4a
mov eax, dword [esi + 0x3e4]
mov esi, dword [eax]
jmp 0x429a51
xor esi, esi
jmp 0x429a51
mov esi, dword [ebp - 4]
push esi
call fcn.0046d2ec
mov word [edi + 8], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429a95
cmp dword [eax + 0x3e4], 0
je 0x429a95
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429a93
push eax
call ebx
cmp eax, 1
jbe 0x429a93
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 4]
jmp 0x429a95
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0xc], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429ad8
cmp dword [eax + 0x3e4], 0
je 0x429ad8
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429ad6
push eax
call ebx
cmp eax, 2
jbe 0x429ad6
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 8]
jmp 0x429ad8
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x10], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429b1b
cmp dword [eax + 0x3e4], 0
je 0x429b1b
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429b19
push eax
call ebx
cmp eax, 3
jbe 0x429b19
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0xc]
jmp 0x429b1b
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x14], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429b5e
cmp dword [eax + 0x3e4], 0
je 0x429b5e
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429b5c
push eax
call ebx
cmp eax, 4
jbe 0x429b5c
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x10]
jmp 0x429b5e
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x18], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429ba1
cmp dword [eax + 0x3e4], 0
je 0x429ba1
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429b9f
push eax
call ebx
cmp eax, 5
jbe 0x429b9f
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x14]
jmp 0x429ba1
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x1c], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429be4
cmp dword [eax + 0x3e4], 0
je 0x429be4
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429be2
push eax
call ebx
cmp eax, 6
jbe 0x429be2
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x18]
jmp 0x429be4
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x24], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429c27
cmp dword [eax + 0x3e4], 0
je 0x429c27
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429c25
push eax
call ebx
cmp eax, 7
jbe 0x429c25
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x1c]
jmp 0x429c27
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x28], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429c6a
cmp dword [eax + 0x3e4], 0
je 0x429c6a
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429c68
push eax
call ebx
cmp eax, 8
jbe 0x429c68
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x20]
jmp 0x429c6a
xor esi, esi
push esi
call fcn.0046d2ec
mov dword [edi + 0x20], eax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429cad
cmp dword [eax + 0x3e4], 0
je 0x429cad
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429cab
push eax
call ebx
cmp eax, 9
jbe 0x429cab
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x24]
jmp 0x429cad
xor esi, esi
push esi
call fcn.0046d2ec
mov word [edi + 0x30], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429cf1
cmp dword [eax + 0x3e4], 0
je 0x429cf1
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429cef
push eax
call ebx
cmp eax, 0xa
jbe 0x429cef
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x28]
jmp 0x429cf1
xor esi, esi
push esi
call fcn.0046d2ec
mov word [edi + 0x32], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429d35
cmp dword [eax + 0x3e4], 0
je 0x429d35
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429d33
push eax
call ebx
cmp eax, 0xb
jbe 0x429d33
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x2c]
jmp 0x429d35
xor esi, esi
push esi
call fcn.0046d2ec
mov word [edi + 0x34], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429d79
cmp dword [eax + 0x3e4], 0
je 0x429d79
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429d77
push eax
call ebx
cmp eax, 0xc
jbe 0x429d77
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x30]
jmp 0x429d79
xor esi, esi
push esi
call fcn.0046d2ec
mov word [edi + 0x2e], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429dbd
cmp dword [eax + 0x3e4], 0
je 0x429dbd
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429dbb
push eax
call ebx
cmp eax, 0xd
jbe 0x429dbb
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x34]
jmp 0x429dbd
xor esi, esi
push esi
call fcn.0046d2ec
mov word [edi + 0x2c], ax
add esp, 4
mov eax, dword [0x4ad1b4]
mov dword [ebp + 8], eax
test eax, eax
je 0x429e01
cmp dword [eax + 0x3e4], 0
je 0x429e01
mov eax, dword [eax + 0x3e0]
test eax, eax
je 0x429dff
push eax
call ebx
cmp eax, 0xe
jbe 0x429dff
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3e4]
mov esi, dword [eax + 0x38]
jmp 0x429e01
xor esi, esi
push 0xa
push 0
push esi
call fcn.0046a545
mov esi, dword [0x4ad1b4]
add esp, 0xc
mov dword [edi + 0x38], eax
mov dword [edi + 0x3c], edx
test esi, esi
je 0x429e4d
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x429e4d
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
cmp dword [0x4a9e18], 0
je 0x429e6d
push dword [edi + 4]
movsx eax, word [edi + 8]
push eax
push dword [edi]
push str.Elemental_loaded__ID:__d___Class:__d___CID:__d_._n
call fcn.00442790
add esp, 0x10
mov al, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
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 0x429ec3
mov eax, dword [esi + 0x3e0]
test eax, eax
je 0x429ec3
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
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret