Function at 0x40c4a0
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x28
mov ebx, dword [esp + 0x3c]
mov dword [esp], 0
mov dword [esp + 0x14], 0xffffffff
mov edi, edx
mov esi, ecx
mov eax, dword [ecx]
test ebx, ebx
mov dword [esp + 8], eax
je 0x40c4ce
mov dword [ebx], 0
mov eax, dword [esi + 0x5ac]
test eax, eax
je 0x40c501
push ebx
push edi
push eax
call fcn.00403240
add esp, 0xc
xor edx, edx
test eax, eax
mov ecx, esi
setne dl
push ebx
call fcn.00413800
add esp, 4
mov ebp, eax
mov eax, ebp
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
ret
cmp byte [edi], 0
je 0x40ca94
mov dword [esp + 0xc], esi
mov esi, dword [esp + 8]
nop word cs:[eax + eax]
nop dword [eax]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 4]
push eax
push 0xffffffffffffffff
push edi
push esi
call fcn.0042cf00
add esp, 0x14
test eax, eax
je 0x40c5a0
mov ebp, eax
test ebx, ebx
je 0x40c4f7
push esi
call fcn.0042cf50
add esp, 4
lea ebx, [eax - 1]
nop dword [eax]
cmp byte [ebx + 1], 0
lea ebx, [ebx + 1]
jne 0x40c550
sub ebx, eax
and ebx, 0x3fffffff
inc ebx
push 0
push ebx
call fcn.0041c1f0
add esp, 8
mov esi, eax
test eax, eax
je 0x40c58a
push dword [esp + 8]
call fcn.0042cf50
add esp, 4
push ebx
push eax
push esi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
mov ebx, dword [esp + 0x3c]
mov dword [ebx], esi
mov esi, dword [esp + 8]
jmp 0x40ca7e
mov eax, dword [esp]
test eax, eax
je 0x40c7d1
push eax
call fcn.00429530
add esp, 4
mov ebp, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
mov esi, eax
test eax, eax
mov eax, 0x501917
cmove esi, eax
nop word cs:[eax + eax]
mov dword [0x51e7d4], esi
movzx eax, byte [esi]
push eax
call ebp
add esp, 4
inc esi
test eax, eax
jne 0x40c5d0
mov eax, dword [esp]
mov ebp, dword [esp + 0xc]
mov dword [ebp + 0x52c], eax
mov dword [ebp + 0x18], 0
test byte [ebp + 0x5c], 0x40
je 0x40c610
dec esi
push esi
push 0x50188d
push dword [ebp + 0x28]
call fcn.004014c0
add esp, 0xc
cmp byte [ebp + 5], 0
mov dword [esp + 0x10], 0
je 0x40c90d
push dword [esp]
call fcn.00429410
add esp, 4
mov esi, dword [esp + 8]
test eax, eax
jne 0x40c911
lea eax, [esp + 0x1c]
mov dword [esp + 4], 0xffffffff
mov dword [esp + 0x1c], 0
push eax
push 0xffffffffffffffff
push 0x3f0
push esi
call fcn.004300f0
add esp, 0x10
cmp byte [ebp + 5], 2
jb 0x40c676
push 0
push 1
push 0x3f0
push esi
call fcn.004300f0
add esp, 0x10
push dword [0x51e7d4]
push str.EXPLAIN_QUERY_PLAN__s
call fcn.0041ef10
add esp, 8
mov ecx, eax
push 0
lea eax, [esp + 8]
push eax
push 0xffffffffffffffff
mov dword [esp + 0x2c], ecx
push ecx
push esi
call fcn.0042cf00
add esp, 0x14
test eax, eax
mov dword [esp + 0x10], eax
jne 0x40c6c6
push dword [esp + 4]
call fcn.00426830
add esp, 4
cmp eax, 0x64
je 0x40c829
mov ecx, ebp
call fcn.004192f0
push dword [esp + 4]
call fcn.00425440
add esp, 4
push dword [esp + 0x20]
call fcn.0041c220
add esp, 4
mov al, byte [ebp + 5]
cmp al, 3
jb 0x40c780
push dword [0x51e7d4]
push str.EXPLAIN__s
call fcn.0041ef10
add esp, 8
mov ecx, esi
mov esi, eax
push 0
lea eax, [esp + 8]
push eax
push 0xffffffffffffffff
push esi
push ecx
call fcn.0042cf00
add esp, 0x14
test eax, eax
mov dword [esp + 0x10], eax
jne 0x40c764
mov dword [ebp + 0x3c], 9
mov ecx, ebp
mov edx, dword [esp + 4]
call fcn.00419450
mov edx, dword [esp + 4]
mov ecx, ebp
call fcn.004198d0
push dword [ebp + 0x534]
call fcn.0041c220
add esp, 4
mov dword [ebp + 0x534], 0
mov dword [ebp + 0x538], 0
mov dword [ebp + 0x53c], 0
push dword [esp + 4]
call fcn.00425440
add esp, 4
push esi
call fcn.0041c220
add esp, 4
mov al, byte [ebp + 5]
mov esi, dword [esp + 8]
cmp al, 2
jb 0x40c911
cmp dword [esp + 0x1c], 0
jne 0x40c911
push 0
push 0
push 0x3f0
push esi
call fcn.004300f0
add esp, 0x10
push dword [esp]
call fcn.00425440
add esp, 4
push 0
lea eax, [esp + 4]
push eax
push 0xffffffffffffffff
push edi
push esi
call fcn.0042cf00
add esp, 0x14
mov eax, dword [esp]
mov dword [ebp + 0x52c], eax
jmp 0x40c911
mov edi, dword [esp + 0x14]
mov ebp, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
dec edi
nop dword [eax]
movzx eax, byte [edi + 1]
inc edi
push eax
call ebp
add esp, 4
test eax, eax
jne 0x40c7e0
xor ebp, ebp
jmp 0x40ca7e
mov dword [ebp + 0x540], ebx
mov esi, dword [esp + 8]
mov dword [ebp + 0x544], ebx
push dword [esp + 4]
call fcn.00426830
add esp, 4
mov ebx, dword [esp + 0x3c]
cmp eax, 0x64
jne 0x40c6bf
push 3
push dword [esp + 8]
call fcn.00428220
add esp, 8
mov ebp, eax
push 0
push dword [esp + 8]
call fcn.00428070
add esp, 8
mov ebx, eax
push 1
push dword [esp + 8]
call fcn.00428070
add esp, 8
test ebp, ebp
mov ecx, 0x501917
mov dword [esp + 0x18], eax
cmove ebp, ecx
cmp byte [ebp], 0x2d
jne 0x40c874
mov ecx, dword [esp + 0xc]
call fcn.004192f0
lea esi, [ebp - 1]
nop word [eax + eax]
cmp byte [esi + 1], 0
lea esi, [esi + 1]
jne 0x40c880
mov eax, dword [esp + 0xc]
sub esi, ebp
and esi, 0x3fffffff
cmp byte [eax + 6], 0
je 0x40c8b1
push ebp
push dword [esp + 0x1c]
push ebx
push str._d__d__s_n
push dword [eax + 0x28]
call fcn.004014c0
add esp, 0x14
mov dword [esp + 0x24], ebp
mov ebp, ebx
lea eax, [esi + 0x10]
push 0
push eax
call fcn.0041c1f0
add esp, 8
test eax, eax
je 0x40ca9b
mov ebx, eax
mov dword [eax], ebp
mov eax, dword [esp + 0x18]
inc esi
mov dword [ebx + 4], eax
mov eax, ebx
add eax, 0xc
push esi
push dword [esp + 0x28]
push eax
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
mov ebp, dword [esp + 0xc]
mov dword [ebx + 8], 0
mov eax, dword [ebp + 0x544]
test eax, eax
je 0x40c800
mov dword [eax + 8], ebx
jmp 0x40c806
mov esi, dword [esp + 8]
mov eax, dword [ebp + 0x34]
mov dword [ebp + 0x3c], eax
cmp byte [ebp + 4], 0
je 0x40c950
push dword [esp]
call fcn.00429410
add esp, 4
cmp eax, 1
jne 0x40c934
mov dword [ebp + 0x3c], 9
push dword [esp]
call fcn.00429410
add esp, 4
cmp eax, 2
jne 0x40c94d
mov dword [ebp + 0x3c], 0xc
jmp 0x40c95f
mov eax, dword [ebp + 0x3c]
cmp eax, 9
jne 0x40c95f
mov edx, dword [esp]
mov ecx, ebp
call fcn.00419450
mov edx, dword [esp]
mov ecx, ebp
call fcn.00419a00
mov edx, dword [esp]
mov ecx, ebp
call fcn.004198d0
push dword [ebp + 0x534]
call fcn.0041c220
add esp, 4
mov ecx, ebp
mov dword [ebp + 0x534], 0
mov dword [ebp + 0x538], 0
mov dword [ebp + 0x53c], 0
call fcn.004192f0
cmp byte [ebp + 8], 0
je 0x40c9b5
mov ecx, esi
mov edx, ebp
call fcn.00415940
push dword [esp]
call fcn.00425440
add esp, 4
cmp dword [esp + 0x10], 7
mov ebp, 7
je 0x40c9d2
test eax, eax
mov ebp, eax
je 0x40ca36
test ebx, ebx
je 0x40ca70
push esi
call fcn.0042cf50
add esp, 4
lea ebx, [eax - 1]
nop word cs:[eax + eax]
cmp byte [ebx + 1], 0
lea ebx, [ebx + 1]
jne 0x40c9f0
sub ebx, eax
and ebx, 0x3fffffff
inc ebx
push 0
push ebx
call fcn.0041c1f0
add esp, 8
mov esi, eax
test eax, eax
je 0x40ca2a
push dword [esp + 8]
call fcn.0042cf50
add esp, 4
push ebx
push eax
push esi
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
add esp, 0xc
mov ebx, dword [esp + 0x3c]
mov dword [ebx], esi
mov esi, dword [esp + 8]
jmp 0x40ca70
mov edi, dword [esp + 0x14]
mov ebp, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isspace]
dec edi
nop word cs:[eax + eax]
nop dword [eax + eax]
movzx eax, byte [edi + 1]
inc edi
push eax
call ebp
add esp, 4
test eax, eax
jne 0x40ca50
xor ebp, ebp
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, dword [esp + 0xc]
mov dword [eax + 0x52c], 0
test ebp, ebp
jne 0x40c4f7
cmp byte [edi], 0
jne 0x40c520
jmp 0x40c4f7
xor ebp, ebp
jmp 0x40c4f7
push 2
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
add esp, 4
push str.Error:_out_of_memory_n
push eax
call fcn.00404690
add esp, 8
push 1
call sub.api_ms_win_crt_runtime_l1_1_0.dll_exit
nop dword [eax + eax]