Function at 0x469f10
Capabilities:
Reference sql statements

Disassembly:
sub esp, 0x418
push ebx
push ebp
mov ebp, dword [esp + 0x424]
push esi
push edi
xor ebx, ebx
mov eax, 1
push 0x3ff
mov dword [ebp + 0x25c], eax
mov dword [ebp + 0x260], eax
lea eax, [esp + 0x2d]
push ebx
push eax
xor esi, esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], ebx
mov byte [esp + 0x34], bl
call sub.msvcrt.dll_memset
mov edx, dword [esp + 0x43c]
add esp, 0xc
push ebx
push ebx
push 0x3ff
lea ecx, [esp + 0x34]
push ecx
push 0xffffffffffffffff
push edx
push ebx
push 0xfde9
call dword [sym.imp.KERNEL32.DLL_WideCharToMultiByte]
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x2c]
push ecx
mov dword [esp + 0x20], ebx
call fcn.0044d4d0
mov edi, dword [esp + 0x20]
add esp, 8
cmp edi, ebx
je 0x46a552
lea edx, [esp + 0x14]
push edx
push ebx
push ebx
push 0xffffffffffffffff
push str.SELECT_item1_item2_FROM_metadata_WHERE_id__password
lea esi, [esp + 0x24]
mov eax, edi
mov dword [esp + 0x24], ebx
call fcn.00451ad0
mov esi, dword [esp + 0x24]
add esp, 0x14
cmp esi, ebx
je 0x46a214
mov eax, esi
call fcn.00455f80
cmp eax, 0x64
jne 0x46a209
xor eax, eax
call fcn.00427120
mov dword [esp + 0x14], eax
lea eax, [ebx + 1]
call fcn.00427120
xor edi, edi
mov ebx, esi
mov dword [esp + 0x24], eax
call fcn.00424a90
mov edi, 1
mov esi, eax
call fcn.00424a90
test esi, esi
mov ebx, eax
je 0x46a205
test ebx, ebx
je 0x46a205
cmp dword [esp + 0x24], 0x20
jle 0x46a205
mov eax, dword [esp + 0x14]
cmp eax, 0x100
mov dword [ebp + 0x240], eax
jbe 0x46a035
mov dword [ebp + 0x240], eax
push eax
lea eax, [ebp + 0x13f]
push esi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, 6
mov ecx, 0x489a24
mov edx, ebx
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x46a06a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x46a052
test eax, eax
je 0x46a0c7
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a0b9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a0c7
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a0b9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a0c7
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a0b9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a0c7
movzx edi, byte [edx]
movzx ecx, byte [ecx]
sub edi, ecx
je 0x46a0c7
test edi, edi
mov eax, 1
jg 0x46a0c9
or eax, 0xffffffff
jmp 0x46a0c9
xor eax, eax
test eax, eax
jne 0x46a132
cmp dword [esp + 0x24], 0x80
jle 0x46a205
mov dword [ebp + 0x25c], 2
movzx eax, byte [ebx + 0x22]
push eax
lea edx, [ebx + 0x23]
mov dword [ebp + 0x10], eax
push edx
lea eax, [ebp + 0x14]
push eax
call sub.msvcrt.dll_memcpy
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + ebx + 0x42]
lea eax, [ecx + ebx + 0x42]
mov dword [ebp + 0x12f], edx
mov ecx, dword [eax + 4]
mov dword [ebp + 0x133], ecx
mov edx, dword [eax + 8]
mov ecx, dword [ebp + 0x10]
mov dword [ebp + 0x137], edx
mov eax, dword [eax + 0xc]
mov dword [ebp + 0x13b], eax
lea eax, [ecx + ebx + 0x54]
jmp 0x46a1d7
mov eax, 6
mov ecx, str.0_0_
mov edx, ebx
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x46a158
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x46a140
test eax, eax
je 0x46a1b5
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a1a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a1b5
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a1a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a1b5
movzx edi, byte [edx]
movzx esi, byte [ecx]
sub edi, esi
jne 0x46a1a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a1b5
movzx edi, byte [edx]
movzx ecx, byte [ecx]
sub edi, ecx
je 0x46a1b5
test edi, edi
mov eax, 1
jg 0x46a1b7
or eax, 0xffffffff
jmp 0x46a1b7
xor eax, eax
test eax, eax
jne 0x46a205
movzx eax, byte [ebx + 0x14]
push eax
lea edx, [ebx + 0x15]
mov dword [ebp + 0x10], eax
push edx
lea eax, [ebp + 0x14]
push eax
call sub.msvcrt.dll_memcpy
mov ecx, dword [ebp + 0x10]
lea eax, [ecx + ebx + 0x1a]
mov edx, dword [eax]
mov dword [ebp + 0x11f], edx
mov ecx, dword [eax + 4]
mov dword [ebp + 0x123], ecx
mov edx, dword [eax + 8]
mov dword [ebp + 0x127], edx
mov eax, dword [eax + 0xc]
mov dword [esp + 0x2c], 1
mov dword [ebp + 0x12b], eax
add esp, 0xc
mov esi, dword [esp + 0x10]
mov eax, esi
call fcn.00451a10
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x14]
push ecx
push 0
push 0
push 0xffffffffffffffff
push str.SELECT_a11_a102_FROM_nssPrivate
lea esi, [esp + 0x24]
mov eax, edi
mov dword [esp + 0x24], 0
call fcn.00451ad0
mov ebx, dword [esp + 0x24]
add esp, 0x14
test ebx, ebx
je 0x46a512
mov eax, ebx
call fcn.00455f80
cmp eax, 0x64
jne 0x46a507
xor eax, eax
mov esi, ebx
call fcn.00427120
mov edi, eax
mov eax, 1
mov dword [esp + 0x14], edi
call fcn.00427120
test edi, edi
jle 0x46a278
cmp eax, 0x10
je 0x46a289
mov eax, ebx
call fcn.00455f80
cmp eax, 0x64
je 0x46a256
jmp 0x46a507
xor edi, edi
call fcn.00424a90
mov edi, 1
mov esi, eax
call fcn.00424a90
test esi, esi
je 0x46a507
test eax, eax
je 0x46a507
lea ecx, [edi + 0xf]
mov edx, 0x488ed0
mov edi, dword [eax]
cmp edi, dword [edx]
jne 0x46a2cc
sub ecx, 4
add edx, 4
add eax, 4
cmp ecx, 4
jae 0x46a2b4
test ecx, ecx
je 0x46a331
movzx edi, byte [eax]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x46a31b
sub ecx, 1
add edx, 1
add eax, 1
test ecx, ecx
je 0x46a32d
movzx edi, byte [eax]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x46a31b
sub ecx, 1
add edx, 1
add eax, 1
test ecx, ecx
je 0x46a32d
movzx edi, byte [eax]
movzx ebx, byte [edx]
sub edi, ebx
jne 0x46a31b
sub ecx, 1
add edx, 1
add eax, 1
test ecx, ecx
je 0x46a32d
movzx edi, byte [eax]
movzx edx, byte [edx]
sub edi, edx
je 0x46a32d
test edi, edi
mov ebx, dword [esp + 0x10]
mov eax, 1
jg 0x46a333
or eax, 0xffffffff
jmp 0x46a333
mov ebx, dword [esp + 0x10]
xor eax, eax
test eax, eax
jne 0x46a507
mov eax, 6
mov ecx, 0x489a34
mov edx, esi
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x46a35f
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x46a347
test eax, eax
je 0x46a3c4
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a3ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a3c0
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a3ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a3c0
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a3ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a3c0
movzx edi, byte [edx]
movzx eax, byte [ecx]
sub edi, eax
je 0x46a3c0
test edi, edi
mov ebx, dword [esp + 0x10]
mov eax, 1
jg 0x46a3c6
or eax, 0xffffffff
jmp 0x46a3c6
mov ebx, dword [esp + 0x10]
xor eax, eax
test eax, eax
jne 0x46a43b
cmp dword [esp + 0x14], 0x80
jle 0x46a507
mov dword [ebp + 0x260], 2
movzx eax, byte [esi + 0x22]
push eax
lea ecx, [esi + 0x23]
push ecx
lea edx, [ebp + 0x268]
push edx
mov dword [ebp + 0x264], eax
call sub.msvcrt.dll_memcpy
mov eax, dword [ebp + 0x264]
mov ecx, dword [eax + esi + 0x42]
lea eax, [eax + esi + 0x42]
mov dword [ebp + 0x3c8], ecx
mov edx, dword [eax + 4]
mov dword [ebp + 0x3cc], edx
mov ecx, dword [eax + 8]
mov dword [ebp + 0x3d0], ecx
mov edx, dword [eax + 0xc]
mov eax, dword [ebp + 0x264]
mov dword [ebp + 0x3d4], edx
lea esi, [eax + esi + 0x54]
jmp 0x46a4ef
mov eax, 6
mov ecx, str.0L0_
mov edx, esi
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x46a45f
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x46a447
test eax, eax
je 0x46a4c4
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a4ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a4c0
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a4ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a4c0
movzx edi, byte [edx]
movzx ebx, byte [ecx]
sub edi, ebx
jne 0x46a4ae
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x46a4c0
movzx edi, byte [edx]
movzx ecx, byte [ecx]
sub edi, ecx
je 0x46a4c0
test edi, edi
mov ebx, dword [esp + 0x10]
mov eax, 1
jg 0x46a4c6
or eax, 0xffffffff
jmp 0x46a4c6
mov ebx, dword [esp + 0x10]
xor eax, eax
test eax, eax
jne 0x46a507
movzx eax, byte [esi + 0x14]
push eax
lea edx, [esi + 0x15]
mov dword [ebp + 0x264], eax
push edx
lea eax, [ebp + 0x268]
push eax
call sub.msvcrt.dll_memcpy
mov ecx, dword [ebp + 0x264]
lea esi, [ecx + esi + 0x1a]
mov ecx, 8
lea edi, [ebp + 0x368]
mov dword [esp + 0x28], 1
rep movsd dword es:[edi], dword [esi]
add esp, 0xc
mov eax, ebx
call fcn.00451a10
mov edi, dword [esp + 0x18]
mov eax, edi
call fcn.0044c290
cmp dword [esp + 0x20], 0
je 0x46a543
cmp dword [esp + 0x1c], 0
je 0x46a543
mov edx, dword [esp + 0x434]
push edx
mov eax, ebp
call fcn.00469ce0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x418
ret 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x418
ret 0xc
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x418
ret 0xc