Function at 0x46aa20
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push ebx
push edi
xor edi, edi
cmp byte [esi + 0x43], 0
jne 0x46aa4c
mov eax, dword [ebp + 8]
push eax
mov ebx, 0x4b7c2c
mov eax, esi
call fcn.004047b0
add esp, 4
lea eax, [edi + 1]
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0x9c], 1
jle 0x46aa73
mov ecx, dword [ebp + 8]
push ecx
mov ebx, 0x4b7c54
mov eax, esi
call fcn.004047b0
add esp, 4
mov eax, 1
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x58]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x28], edx
mov edx, dword [esi + 0x5c]
and ecx, 0xfff5ff7f
or ecx, 0x10202800
mov dword [esi + 0x18], ecx
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x2c], edx
mov dl, byte [esi + 0x4c]
shl eax, 4
mov byte [esi + 0x4c], 0
mov byte [ebp - 1], dl
mov edx, dword [eax + ecx]
mov dword [ebp - 0x1c], eax
mov eax, dword [eax + ecx + 4]
mov dword [ebp - 8], eax
mov eax, dword [eax + 4]
mov ecx, dword [eax]
mov eax, dword [esi + 0x14]
mov dword [ebp - 0xc], edx
movzx edx, byte [ecx + 0xd]
mov ecx, dword [ebp + 8]
push 0x4b7c80
push ecx
push esi
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x14], eax
call fcn.0046a7c0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad2c
mov eax, dword [ebp - 0x14]
shl eax, 4
add eax, dword [esi + 0x10]
mov edi, dword [eax + 4]
mov dword [ebp - 0x10], eax
mov eax, edi
call fcn.0041a5b0
mov ebx, dword [ebp - 8]
mov eax, ebx
call fcn.004193e0
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edx + eax + 0xc]
mov eax, dword [ecx + 0x50]
push edi
call fcn.00419180
add esp, 4
push 0
mov eax, ebx
call fcn.00419210
add esp, 4
push eax
mov eax, edi
call fcn.00419210
add esp, 4
push 0x21
mov eax, edi
call fcn.004192c0
mov edx, dword [ebp + 8]
add esp, 4
push 0x4b6e30
push edx
push esi
call fcn.0046a7c0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad29
mov eax, dword [ebp - 8]
push 2
push eax
call fcn.00419900
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x46ad29
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 4]
mov edx, dword [ecx]
cmp byte [edx + 5], 5
jne 0x46ab83
mov dword [esi + 0x50], ebx
mov eax, dword [eax + 4]
mov ebx, dword [ebp - 0x18]
mov eax, dword [eax + 0x20]
push 0
push ebx
mov ecx, edi
call fcn.00419310
add esp, 8
test eax, eax
jne 0x46ad24
cmp dword [ebp - 0x20], eax
jne 0x46abbd
push eax
mov eax, dword [esi + 0x50]
push ebx
mov ecx, edi
call fcn.00419310
add esp, 8
test eax, eax
jne 0x46ad24
cmp byte [esi + 0x45], 0
jne 0x46ad24
mov al, byte [esi + 0x48]
test al, al
js 0x46abd3
movsx eax, al
jmp 0x46abdb
mov eax, dword [ebp - 8]
call fcn.00419550
push eax
mov eax, edi
call fcn.004194d0
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
mov cl, byte [ebp - 0x14]
add esp, 4
push edx
push 0x4b7c98
push eax
mov eax, esi
mov byte [esi + 0x98], cl
call fcn.0046a880
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad29
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp + 8]
push ecx
push 0x4b7d08
push edx
mov eax, esi
call fcn.0046a880
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad29
mov ecx, dword [ebp + 8]
mov byte [esi + 0x98], al
mov eax, dword [ebp - 0xc]
push eax
push 0x4b7d58
push ecx
mov eax, esi
call fcn.0046a880
and dword [esi + 0x18], 0xefffffff
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad29
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp + 8]
push edx
push 0x4b7df0
push eax
mov eax, esi
call fcn.0046a880
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x46ad29
mov dword [ebp - 0xc], ebx
jmp 0x46ac93
mov ebx, dword [ebp - 0xc]
movzx edx, byte [ebx + 0x4b255c]
mov eax, dword [ebp - 8]
lea ecx, [ebp - 0x20]
push ecx
push edx
call fcn.0041ff00
movzx eax, byte [ebx + 0x4b255d]
add eax, dword [ebp - 0x20]
movzx ecx, byte [ebx + 0x4b255c]
push eax
push ecx
mov eax, edi
call fcn.0041ff60
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x46ad29
mov eax, dword [ebp - 0xc]
add eax, 2
mov dword [ebp - 0xc], eax
cmp eax, 0xa
jl 0x46ac90
mov ebx, dword [ebp - 8]
mov eax, edi
call fcn.004224a0
mov ebx, eax
test ebx, ebx
jne 0x46ad29
mov eax, edi
call fcn.0041a5b0
mov ebx, eax
test ebx, ebx
jne 0x46ad29
mov eax, edi
call fcn.00419550
mov ebx, dword [ebp - 8]
push eax
mov eax, ebx
call fcn.004194d0
mov ecx, dword [ebp - 0x18]
mov edx, dword [edi + 4]
mov eax, dword [edx + 0x20]
add esp, 4
push 1
push ecx
mov ecx, ebx
call fcn.00419310
add esp, 8
mov ebx, eax
jmp 0x46ad29
mov ebx, 7
mov edi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c]
mov dword [esi + 0x18], edx
mov dl, byte [ebp - 1]
mov dword [esi + 0x58], eax
mov dword [esi + 0x5c], ecx
mov ecx, dword [ebp - 8]
push 1
push 0xffffffffffffffff
or eax, 0xffffffff
mov byte [esi + 0x98], 0
mov byte [esi + 0x4c], dl
call fcn.00419310
add esp, 8
mov byte [esi + 0x43], 1
test edi, edi
je 0x46ad75
mov eax, dword [edi + 4]
call fcn.004190a0
xor eax, eax
mov dword [edi + 4], eax
mov dword [edi + 0xc], eax
mov eax, esi
call fcn.004435a0
pop edi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret