Function at 0x52aa40
Capabilities:
Reference sql statements

Disassembly:
sub esp, 8
push ebx
mov ebx, dword [esp + 0x14]
push ebp
push esi
mov eax, dword [ebx + 8]
push edi
mov ecx, eax
or ah, 8
mov dword [ebx + 8], eax
mov al, byte [ebx + 0x11]
and ecx, 0x800
mov dword [esp + 0x10], 0
test al, al
mov dword [esp + 0x14], ecx
jne 0x52aa8d
mov eax, dword [esp + 0x1c]
push 0
push 0x5cb1d8
push eax
call fcn.005149b0
add esp, 0xc
mov esi, 1
jmp 0x52ad09
mov ecx, dword [ebx + 4]
mov eax, dword [ecx + 4]
push eax
mov dword [esp + 0x20], eax
call fcn.00526180
mov esi, eax
add esp, 4
cmp byte [esi], 0
jne 0x52aab1
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 8
ret
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
lea edx, [ebp + 0x64]
push edx
call fcn.00514840
mov edx, eax
add esp, 4
test edx, edx
mov dword [esp + 0x10], edx
jne 0x52aadf
mov esi, 7
jmp 0x52ad09
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [edx + ebp + 1]
push esi
mov byte [edx + ebp], 0x2d
call fcn.0052ad70
mov ecx, dword [esp + 0x14]
push ecx
call fcn.0051c5a0
mov edx, dword [esp + 0x18]
add esp, 8
test eax, eax
jne 0x52ab02
push edx
push 0x5cb1bc
call fcn.00529220
mov edi, eax
add esp, 8
test edi, edi
jne 0x52ab3f
mov esi, 7
jmp 0x52ad09
push edi
push ebx
call fcn.0052adb0
push edi
mov esi, eax
call fcn.005148c0
add esp, 0xc
test esi, esi
jne 0x52ad09
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
mov ebp, dword [esp + 0x1c]
lea ecx, [eax*8]
push ebp
sub ecx, eax
shl ecx, 4
mov edi, dword [ecx + edx - 0x6c]
mov dword [esp + 0x24], edi
call fcn.00520f30
add esp, 4
push eax
push ebp
call fcn.00520f20
add esp, 4
push eax
push edi
call fcn.00520eb0
push 0x5cb198
push ebx
call fcn.0052adb0
push ebp
call fcn.00520f70
push eax
push edi
call fcn.00520f50
push 0x5cb190
push ebx
call fcn.0052adb0
mov esi, eax
add esp, 0x28
test esi, esi
jne 0x52ad09
push 0x5cb10c
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5cb098
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5cb018
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5cafb4
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5caf14
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5caea0
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5cae08
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push 0x5cada0
push ebx
call fcn.0052ae10
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push edi
call fcn.005262f0
add esp, 4
test eax, eax
je 0x52ad09
push 1
push ebp
call fcn.00520f80
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
xor edi, edi
xor ecx, ecx
lea eax, [esp + 0x1c]
mov cl, byte [edi + 0x599d58]
push eax
push ecx
push ebp
call fcn.00525620
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x52ad09
mov eax, dword [esp + 0x1c]
xor edx, edx
mov dl, byte [edi + 0x599d59]
mov ecx, dword [esp + 0x20]
add edx, eax
xor eax, eax
mov al, byte [edi + 0x599d58]
push edx
push eax
push ecx
call fcn.00525670
add edi, 2
add esp, 0xc
cmp edi, 8
jb 0x52aca0
mov edx, dword [esp + 0x20]
push edx
push ebp
call fcn.005261b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x52ad09
push ebp
call fcn.00521450
add esp, 4
mov esi, eax
mov eax, dword [ebx + 8]
mov ecx, dword [esp + 0x14]
and ah, 0xf7
push 0x5cad8c
or eax, ecx
mov byte [ebx + 0x11], 1
test esi, esi
mov dword [ebx + 8], eax
push ebx
jne 0x52ad32
call fcn.0052adb0
add esp, 8
mov esi, eax
jmp 0x52ad3a
call fcn.0052adb0
add esp, 8
mov edi, dword [esp + 0x10]
test edi, edi
je 0x52ad51
push edi
call fcn.0051c590
push edi
call fcn.005148c0
add esp, 8
push 0
push ebx
call fcn.0051d7b0
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret