Function at 0x405a10
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
movzx eax, dl
add eax, 0xffffffa0
push ebx
push esi
mov esi, ecx
push edi
cmp eax, 0x13
ja case.0x405a31.97
movzx eax, byte [eax + 0x405e88]
jmp dword [eax*4 + 0x405e60]
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00405ea0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00406290
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
movq xmm0, qword [ecx + 6]
lea ebx, [ecx + 6]
lea edi, [ecx + 0x11]
movq qword [ebp - 0x35], xmm0
movq xmm0, qword [edi]
movzx eax, word [ecx + 4]
mov word [ebp - 0x38], ax
movzx eax, word [ebx + 8]
mov word [ebp - 0x2d], ax
mov al, byte [ebx + 0xa]
mov byte [ebp - 0x2b], al
movzx eax, word [edi + 8]
mov word [ebp - 0x22], ax
mov al, byte [edi + 0xa]
mov byte [ebp - 0x20], al
lea eax, [ebp - 0x1c]
push edi
push eax
mov word [ebp - 0x3c], 0x1ec1
mov byte [ebp - 0x3a], 0x64
movq qword [ebp - 0x2a], xmm0
call fcn.004044f0
test al, al
mov eax, 0xffff
je 0x405abb
movzx eax, word [ebp - 4]
mov byte [ebp - 0x1f], al
mov eax, dword [ebp + 8]
push edi
push ebx
cmp byte [eax + 3], 0
jne 0x405b27
push str.WZ_WaitFriendDel__s__s
push 0x43edd8
call fcn.00414960
add esp, 0x10
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x4405be
call fcn.0041de3e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.00405870
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.WZ_FriendAdd__s__s
push 0x43edd8
call fcn.00414960
add esp, 0x10
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x4405be
call fcn.0041de3e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.00405870
add esp, 4
cmp byte [ebp - 0x36], 1
jne case.0x405a31.97
push edi
lea eax, [ebp - 0x3c]
push eax
call fcn.004044f0
test al, al
je case.0x405a31.97
movzx eax, word [ebp - 0x26]
movq xmm0, qword [edi]
mov word [ebp - 0x58], ax
movzx eax, word [edi + 8]
mov word [ebp - 0x4e], ax
mov al, byte [edi + 0xa]
mov byte [ebp - 0x4c], al
movzx eax, word [ebx + 8]
mov word [ebp - 0x43], ax
mov al, byte [ebx + 0xa]
mov byte [ebp - 0x41], al
lea eax, [ebp - 0x1c]
movq qword [ebp - 0x56], xmm0
movq xmm0, qword [ebx]
push edi
push eax
mov word [ebp - 0x5c], 0x1ec1
mov byte [ebp - 0x5a], 0x62
movq qword [ebp - 0x4b], xmm0
call fcn.004044f0
test al, al
mov eax, 0xffff
je 0x405bf1
movzx eax, word [ebp - 4]
mov byte [ebp - 0x40], al
mov ecx, dword [ebp - 0x24]
call fcn.00417270
test eax, eax
je case.0x405a31.97
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x5c]
push 0x1e
call fcn.00405870
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
movq xmm0, qword [ecx + 6]
lea ebx, [ecx + 6]
lea edi, [ecx + 0x11]
movq qword [ebp - 0x35], xmm0
movq xmm0, qword [edi]
movzx eax, word [ecx + 4]
mov word [ebp - 0x38], ax
movzx eax, word [ebx + 8]
mov word [ebp - 0x2d], ax
mov al, byte [ebx + 0xa]
push edi
mov byte [ebp - 0x2b], al
movzx eax, word [edi + 8]
push ebx
mov word [ebp - 0x22], ax
mov al, byte [edi + 0xa]
push str.WZ_FriendDel__s__s
push 0x43edd8
mov word [ebp - 0x3c], 0x1ec1
mov byte [ebp - 0x3a], 0x65
movq qword [ebp - 0x2a], xmm0
mov byte [ebp - 0x20], al
call fcn.00414960
add esp, 0x10
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x4405be
call fcn.0041de3e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.00405870
add esp, 4
cmp byte [ebp - 0x36], 1
jne case.0x405a31.97
push edi
lea eax, [ebp - 0x3c]
push eax
call fcn.004044f0
test al, al
je case.0x405a31.97
movzx eax, word [ebp - 0x26]
movq xmm0, qword [edi]
mov word [ebp - 0x58], ax
movzx eax, word [edi + 8]
mov word [ebp - 0x4e], ax
mov al, byte [edi + 0xa]
mov byte [ebp - 0x4c], al
movzx eax, word [ebx + 8]
movq qword [ebp - 0x56], xmm0
movq xmm0, qword [ebx]
mov word [ebp - 0x43], ax
mov al, byte [ebx + 0xa]
mov word [ebp - 0x5c], 0x1ec1
mov byte [ebp - 0x5a], 0x62
movq qword [ebp - 0x4b], xmm0
mov byte [ebp - 0x41], al
mov byte [ebp - 0x40], 0xff
jmp 0x405bf4
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.004064e0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 8]
lea eax, [ebx + 6]
push eax
push str.SELECT_GUID_FROM_T_FriendMain_WHERE_Name_s
push 0x43edd8
call fcn.00414960
add esp, 0xc
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push str.GUID
call fcn.00414bb0
cmp eax, 0xffffffff
jne 0x405d6c
or edi, eax
jmp 0x405d7f
shl eax, 0xd
add eax, 0x4405be
push eax
call fcn.0041de3e
add esp, 4
mov edi, eax
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
lea eax, [ebx + 6]
mov edx, edi
push eax
movzx eax, word [ebx + 4]
mov ecx, esi
push eax
call fcn.00406d10
add esp, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00406920
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov word [ebp - 0x18], 0x14c1
mov byte [ebp - 0x16], 0x73
movzx edx, word [ecx + 6]
movzx eax, word [ecx + 4]
add ecx, 8
push edx
mov word [ebp - 0x12], ax
push ecx
movzx eax, word [ecx + 8]
movq xmm0, qword [ecx]
mov word [ebp - 8], ax
mov al, byte [ecx + 0xa]
push str.WZ_DelMail__s__d
push 0x43edd8
mov word [ebp - 0x14], dx
movq qword [ebp - 0x10], xmm0
mov byte [ebp - 6], al
call fcn.00414960
add esp, 0x10
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x4405be
call fcn.0041de3e
add esp, 4
mov byte [ebp - 0x15], al
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43ede4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x14
lea edx, [ebp - 0x18]
mov ecx, esi
call fcn.00405870
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret