Function at 0x405a80
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.0x405aa1.97
movzx eax, byte [eax + 0x405ef8]
jmp dword [eax*4 + 0x405ed0]
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00405f10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00406300
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.004044b0
test al, al
mov eax, 0xffff
je 0x405b2b
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 0x405b97
push str.WZ_WaitFriendDel__s__s
push 0x43ddd8
call fcn.00414560
add esp, 0x10
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x43f5be
call fcn.0041d99e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.004058e0
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.WZ_FriendAdd__s__s
push 0x43ddd8
call fcn.00414560
add esp, 0x10
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x43f5be
call fcn.0041d99e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.004058e0
add esp, 4
cmp byte [ebp - 0x36], 1
jne case.0x405aa1.97
push edi
lea eax, [ebp - 0x3c]
push eax
call fcn.004044b0
test al, al
je case.0x405aa1.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.004044b0
test al, al
mov eax, 0xffff
je 0x405c61
movzx eax, word [ebp - 4]
mov byte [ebp - 0x40], al
mov ecx, dword [ebp - 0x24]
call fcn.00416dd0
test eax, eax
je case.0x405aa1.97
mov ecx, dword [eax + 4]
lea edx, [ebp - 0x5c]
push 0x1e
call fcn.004058e0
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 0x43ddd8
mov word [ebp - 0x3c], 0x1ec1
mov byte [ebp - 0x3a], 0x65
movq qword [ebp - 0x2a], xmm0
mov byte [ebp - 0x20], al
call fcn.00414560
add esp, 0x10
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x43f5be
call fcn.0041d99e
add esp, 4
mov byte [ebp - 0x36], al
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x1e
lea edx, [ebp - 0x3c]
mov ecx, esi
call fcn.004058e0
add esp, 4
cmp byte [ebp - 0x36], 1
jne case.0x405aa1.97
push edi
lea eax, [ebp - 0x3c]
push eax
call fcn.004044b0
test al, al
je case.0x405aa1.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 0x405c64
mov ecx, dword [ebp + 8]
mov edx, esi
call fcn.00406550
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 0x43ddd8
call fcn.00414560
add esp, 0xc
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push str.GUID
call fcn.004147b0
cmp eax, 0xffffffff
jne 0x405ddc
or edi, eax
jmp 0x405def
shl eax, 0xd
add eax, 0x43f5be
push eax
call fcn.0041d99e
add esp, 4
mov edi, eax
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43dde4]
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.00406d80
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.00406990
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 0x43ddd8
mov word [ebp - 0x14], dx
movq qword [ebp - 0x10], xmm0
mov byte [ebp - 6], al
call fcn.00414560
add esp, 0x10
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFetch]
push 0x43f5be
call fcn.0041d99e
add esp, 4
mov byte [ebp - 0x15], al
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLCloseCursor]
push 2
push dword [0x43dde4]
call dword [sym.imp.ODBC32.dll_SQLFreeStmt]
push 0x14
lea edx, [ebp - 0x18]
mov ecx, esi
call fcn.004058e0
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret