Function at 0x402ad0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8ec
mov eax, dword [0x44000c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
movq xmm0, qword [ebx + 6]
lea ecx, [ebx + 6]
push esi
push edi
movzx eax, word [ebx + 4]
mov word [ebp - 0x8e2], ax
movzx eax, word [ecx + 8]
mov word [ebp - 0x8d8], ax
mov al, byte [ecx + 0xa]
mov byte [ebp - 0x8d6], al
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x8d4], eax
mov al, byte [ebx + 0x18]
mov byte [ebp - 0x8d0], al
movzx eax, al
push eax
push ecx
push str.SELECT__FROM_CashShopInventory_WHERE_AccountID_s_AND_InventoryType_d
push 0x440e30
mov dword [ebp - 0x8e8], 0x18e008c2
mov byte [ebp - 0x8e4], 3
movq qword [ebp - 0x8e0], xmm0
mov byte [ebp - 0x8d5], 0
mov dword [ebp - 0x8cc], 0
mov dword [ebp - 0x8c8], 0
call fcn.00416550
add esp, 0x10
push dword [0x440e3c]
test al, al
jne 0x402b97
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x440e3c]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
mov byte [ebp - 0x8d5], 1
jmp 0x402e27
mov edi, dword [sym.imp.ODBC32.dll_SQLFetch]
call edi
cmp ax, 0x64
je 0x402e0d
nop dword [eax]
mov ecx, dword [ebp - 0x8cc]
mov eax, 0x38e38e39
mul ecx
inc ecx
shr edx, 1
inc edx
mov dword [ebp - 0x8cc], ecx
cmp edx, dword [ebx + 0x14]
jne 0x402dfb
push str.BaseItemCode
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402be3
or eax, eax
jmp 0x402bf4
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
push str.MainItemCode
mov dword [ebp + ecx - 0x8c0], eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402c18
or eax, eax
jmp 0x402c29
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
push str.PackageMainIndex
mov dword [ebp + ecx - 0x8bc], eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402c4d
or eax, eax
jmp 0x402c5e
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
push str.ProductBaseIndex
mov dword [ebp + ecx - 0x8b8], eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402c82
or eax, eax
jmp 0x402c93
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
push str.ProductMainIndex
mov dword [ebp + ecx - 0x8b4], eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402cb7
or eax, eax
jmp 0x402cc8
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
push str.CoinValue
mov dword [ebp + ecx - 0x8b0], eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402cf2
movss xmm0, dword [0x43cb4c]
jmp 0x402d11
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.0042286a
fstp dword [ebp - 0x8ec]
movss xmm0, dword [ebp - 0x8ec]
add esp, 4
imul eax, dword [ebp - 0x8c8], 0xf8
cvtps2pd xmm0, xmm0
push str.ProductType
movsd qword [ebp + eax - 0x8a8], xmm0
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402d3a
or eax, eax
jmp 0x402d4b
shl eax, 0xe
add eax, 0x441a62
push eax
call fcn.00422137
add esp, 4
imul ecx, dword [ebp - 0x8c8], 0xf8
lea esi, [ebp - 0x89f]
push str.GiftName
mov byte [ebp + ecx - 0x8a0], al
imul eax, dword [ebp - 0x8c8], 0xf8
add esi, eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402d90
xorps xmm0, xmm0
movq qword [esi], xmm0
mov word [esi + 8], 0
mov byte [esi + 0xa], 0
jmp 0x402da6
shl eax, 0xe
push 0xa
add eax, 0x441a62
push eax
push 0xb
push esi
call fcn.00422930
add esp, 0x10
imul eax, dword [ebp - 0x8c8], 0xf8
lea esi, [ebp - 0x894]
push str.GiftText
add esi, eax
call fcn.004167c0
cmp eax, 0xffffffff
jne 0x402dd9
push 0xc8
push 0
push esi
call fcn.0041b490
add esp, 0xc
jmp 0x402df5
shl eax, 0xe
push 0xc7
add eax, 0x441a62
push eax
push 0xc8
push esi
call fcn.00422930
add esp, 0x10
inc dword [ebp - 0x8c8]
push dword [0x440e3c]
call edi
cmp ax, 0x64
jne 0x402bb0
push dword [0x440e3c]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x440e3c]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x8e0
lea eax, [ebp - 0x8e8]
push eax
push dword [ebp + 0xc]
call fcn.00418230
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004197fb
mov esp, ebp
pop ebp
ret 8