Function at 0x4027c0
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x12c
mov eax, dword [0x43e040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
movq xmm0, qword [esi + 8]
lea ecx, [esi + 8]
push edi
push 0x5d08e0
movzx eax, word [esi + 6]
lea edx, [esi + 0x2d]
mov word [ebp - 0x122], ax
lea edi, [ebp - 0xf0]
movzx eax, word [ecx + 8]
mov word [ebp - 0x118], ax
mov al, byte [ecx + 0xa]
mov byte [ebp - 0x116], al
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x114], eax
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x110], eax
mov eax, dword [esi + 0x1c]
push 0
mov dword [ebp - 0x10c], eax
mov eax, dword [esi + 0x20]
push edx
mov dword [ebp - 0x108], eax
movzx eax, word [esi + 0x24]
push 0
mov word [ebp - 0x104], ax
mov eax, dword [esi + 0x28]
push 0xb
mov dword [ebp - 0x100], eax
mov al, byte [esi + 0x2c]
add esi, 0x38
push 0xc
mov byte [ebp - 0xfc], al
movzx eax, word [edx + 8]
push 1
push 1
movq qword [ebp - 0x120], xmm0
movq xmm0, qword [edx]
mov word [ebp - 0xf3], ax
mov al, byte [edx + 0xa]
mov dword [ebp - 0x12c], ecx
mov ecx, 0x32
push 1
push dword [0x43ede4]
mov dword [ebp - 0x128], 0x181c01c2
mov byte [ebp - 0x124], 2
mov byte [ebp - 0x115], 0
movq qword [ebp - 0xfb], xmm0
mov byte [ebp - 0xf1], al
rep movsd dword es:[edi], dword [esi]
mov dword [0x5d08e0], 0xfffffffd
call dword [sym.imp.ODBC32.dll_SQLBindParameter]
push str.SELECT_AccountID_FROM_Character_WHERE_Name_
push 0x43edd8
call fcn.00414960
add esp, 8
test al, al
je 0x402a6b
push dword [0x43ede4]
mov ebx, dword [sym.imp.ODBC32.dll_SQLFetch]
call ebx
cmp ax, 0x64
je 0x402a6b
push str.AccountID
call fcn.00414bb0
cmp eax, 0xffffffff
jne 0x402919
xorps xmm0, xmm0
mov word [ebp - 0x20], 0
movq qword [ebp - 0x28], xmm0
mov byte [ebp - 0x1e], 0
jmp 0x402932
shl eax, 0xd
push 0xa
add eax, 0x4405be
push eax
lea eax, [ebp - 0x28]
push 0xb
push eax
call fcn.004211ed
add esp, 0x10
push dword [0x43ede4]
mov esi, dword [sym.imp.ODBC32.dll_SQLCloseCursor]
call esi
mov edi, dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 2
push dword [0x43ede4]
call edi
push dword [ebp - 0x12c]
push str.SELECT__FROM_CashShopData_WHERE_AccountID_s
push 0x43edd8
call fcn.00414960
add esp, 0xc
test al, al
je 0x402a57
push dword [0x43ede4]
call ebx
cmp ax, 0x64
je 0x402a57
push str.WCoinC
call fcn.00414bb0
cmp eax, 0xffffffff
jne 0x402995
or eax, eax
jmp 0x4029a6
shl eax, 0xd
add eax, 0x4405be
push eax
call fcn.0041de3e
add esp, 4
push str.WCoinP
mov dword [ebp - 0x1c], eax
call fcn.00414bb0
cmp eax, 0xffffffff
jne 0x4029bc
or eax, eax
jmp 0x4029cd
shl eax, 0xd
add eax, 0x4405be
push eax
call fcn.0041de3e
add esp, 4
push str.GoblinPoint
mov dword [ebp - 0x18], eax
call fcn.00414bb0
cmp eax, 0xffffffff
jne 0x4029e3
or eax, eax
jmp 0x4029f4
shl eax, 0xd
add eax, 0x4405be
push eax
call fcn.0041de3e
add esp, 4
push dword [0x43ede4]
mov dword [ebp - 0x14], eax
call esi
push 2
push dword [0x43ede4]
call edi
push 0x47
lea eax, [ebp - 0x28]
push eax
push str.SELECT_count___FROM_CashShopInventory_WHERE_AccountID_s_AND_InventoryType_d
push 0x43edd8
call fcn.00414960
add esp, 0x10
test al, al
je 0x402a57
push dword [0x43ede4]
call ebx
cmp ax, 0x64
je 0x402a57
push 0x4405be
call fcn.0041de3e
add esp, 4
mov dword [ebp - 0x10], eax
push dword [0x43ede4]
call esi
push 2
push dword [0x43ede4]
call edi
jmp 0x402a8c
push dword [0x43ede4]
call esi
push 2
push dword [0x43ede4]
call edi
jmp 0x402a85
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
mov byte [ebp - 0x115], 1
push 0x11c
lea eax, [ebp - 0x128]
push eax
push dword [ebp + 0xc]
call fcn.00416260
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004178c7
mov esp, ebp
pop ebp
ret 8