joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400d2c80
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
mov rcx, qword [rax + 0xd0]
cmp rcx, 6
jne 0x1400d2d05
movabs rcx, 0xcbbb9d5dc1059ed8
mov qword [rax], rcx
movabs rcx, 0x629a292a367cd507
mov qword [rax + 8], rcx
movabs rcx, 0x9159015a3070dd17
mov qword [rax + 0x10], rcx
movabs rcx, 0x152fecd8f70e5939
mov qword [rax + 0x18], rcx
movabs rcx, 0x67332667ffc00b31
mov qword [rax + 0x20], rcx
movabs rcx, 0x8eb44a8768581511
mov qword [rax + 0x28], rcx
movabs rcx, 0xdb0c2e0d64f98fa7
mov qword [rax + 0x30], rcx
movabs rcx, 0x47b5481dbefa4fa4
mov qword [rax + 0x38], rcx
nop dword [rax]
jmp 0x1400d2e66
cmp rcx, 0xe
jne 0x1400d2d80
movabs rcx, 0x8c3d37c819544da2
mov qword [rax], rcx
movabs rcx, 0x73e1996689dcd4d6
mov qword [rax + 8], rcx
movabs rcx, 0x1dfab7ae32ff9c82
mov qword [rax + 0x10], rcx
movabs rcx, 0x679dd514582f9fcf
mov qword [rax + 0x18], rcx
movabs rcx, 0xf6d2b697bd44da8
mov qword [rax + 0x20], rcx
movabs rcx, 0x77e36f7304c48942
mov qword [rax + 0x28], rcx
movabs rcx, 0x3f9d85a86a1d36c8
mov qword [rax + 0x30], rcx
movabs rcx, 0x1112e6ad91d692a1
mov qword [rax + 0x38], rcx
jmp 0x1400d2e66
cmp rcx, 0xf
jne 0x1400d2df7
movabs rcx, 0x22312194fc2bf72c
mov qword [rax], rcx
movabs rcx, 0x9f555fa3c84c64c2
mov qword [rax + 8], rcx
movabs rcx, 0x2393b86b6f53b151
mov qword [rax + 0x10], rcx
movabs rcx, 0x963877195940eabd
mov qword [rax + 0x18], rcx
movabs rcx, 0x96283ee2a88effe3
mov qword [rax + 0x20], rcx
movabs rcx, 0xbe5e1e2553863992
mov qword [rax + 0x28], rcx
movabs rcx, 0x2b0199fc2c85b8aa
mov qword [rax + 0x30], rcx
movabs rcx, 0xeb72ddc81c52ca2
mov qword [rax + 0x38], rcx
jmp 0x1400d2e66
movabs rcx, 0x6a09e667f3bcc908
mov qword [rax], rcx
movabs rcx, 0xbb67ae8584caa73b
mov qword [rax + 8], rcx
movabs rcx, 0x3c6ef372fe94f82b
mov qword [rax + 0x10], rcx
movabs rcx, 0xa54ff53a5f1d36f1
mov qword [rax + 0x18], rcx
movabs rcx, 0x510e527fade682d1
mov qword [rax + 0x20], rcx
movabs rcx, 0x9b05688c2b3e6c1f
mov qword [rax + 0x28], rcx
movabs rcx, 0x1f83d9abfb41bd6b
mov qword [rax + 0x30], rcx
movabs rcx, 0x5be0cd19137e2179
mov qword [rax + 0x38], rcx
movups xmmword [rax + 0xc0], xmm15
ret
Function at 0x1400d9220
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x1400d930d
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x58], rax
lea rcx, [rbx + 1]
nop dword [rax + rax]
test rcx, rcx
jle 0x1400d92f9
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x58], rax
mov qword [rsp], rcx
nop dword [rax]
call dbg.github.com/tbvdm/sigtop/sqlcipher._cgo_cmalloc
xorps xmm15, xmm15
mov r14, qword [0x1403b09e8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 8]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rcx
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
cmp rbx, rcx
mov rsi, rcx
cmovl rsi, rbx
mov rdi, qword [rsp + 0x58]
cmp rdi, rdx
jne 0x1400d92b3
cmp rbx, rcx
jmp 0x1400d92e5
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rdx
mov rax, rdx
mov rbx, rdi
mov rcx, rsi
call dbg.runtime.memmove
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x18]
cmp rax, rcx
mov rdx, qword [rsp + 0x28]
mov rbx, rax
mov rax, qword [rsp + 0x20]
jae 0x1400d92f1
mov byte [rdx + rbx], 0
add rsp, 0x48
pop rbp
ret
mov rax, rbx
call dbg.runtime.panicIndex
lea rax, [0x140221bc0]
lea rbx, [0x1402797b0]
call dbg.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call dbg.runtime.morestack_noctxt
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp dbg.github.com/tbvdm/sigtop/sqlcipher._Cfunc_CString

Function at 0x1400dd1a0
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x1400dd238
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x40], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x30], rax
mov rdx, qword [sym.free]
mov qword [rsp + 0x38], rdx
call dbg.runtime.convT64
mov rbx, rax
xor ecx, ecx
xor edi, edi
lea rax, [0x14021f580]
call dbg.runtime.cgoCheckPointer
mov rcx, qword [rsp + 0x30]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 8], ecx
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x10], rcx
mov dword [rsp + 0x18], 0xffffffff
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x20], rcx
call dbg.github.com/tbvdm/sigtop/sqlcipher._Cfunc_sqlite3_bind_text
xorps xmm15, xmm15
mov r14, qword [0x1403b09e8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 0x28]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call dbg.runtime.morestack_noctxt
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
nop dword [rax + rax]
jmp dbg.github.com/tbvdm/sigtop/sqlcipher.(*Stmt).BindText.func1
Function at 0x1400dd380
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x1400dd441
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x40], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x30], rax
mov rdx, qword [sym.free]
mov qword [rsp + 0x38], rdx
nop dword [rax + rax]
call dbg.runtime.convT64
mov rbx, rax
xor ecx, ecx
xor edi, edi
lea rax, [0x14021f580]
call dbg.runtime.cgoCheckPointer
lea rax, [0x140221f80]
mov rbx, qword [rsp + 0x40]
xor ecx, ecx
xor edi, edi
call dbg.runtime.cgoCheckPointer
mov rcx, qword [rsp + 0x30]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x60]
mov dword [rsp + 8], ecx
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x10], rcx
mov rcx, qword [rsp + 0x78]
mov dword [rsp + 0x18], ecx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x20], rcx
nop dword [rax]
call dbg.github.com/tbvdm/sigtop/sqlcipher._Cfunc_sqlite3_bind_blob
xorps xmm15, xmm15
mov r14, qword [0x1403b09e8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp + 0x28]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
nop
call dbg.runtime.morestack_noctxt
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp dbg.github.com/tbvdm/sigtop/sqlcipher.(*Stmt).BindBlob.func2
Function at 0x14012cd40
Capabilities:
Encode data using xor

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x30
xor ebx, ebx
lea rbp, [rsp + 0x20]
mov rsi, r8
mov edi, edx
movsxd r8, edx
mov rcx, rsi
xor edx, edx
call sym.memset
mov rcx, rbp
call qword [sym.GetSystemTime]
lea r9, [rsp + 0x30]
mov rdx, rbp
xor r8d, r8d
nop word [rax + rax]
lea eax, [rbx + 1]
movzx ecx, byte [rdx]
xor byte [rsi + rbx], cl
cmp edi, eax
cmovle eax, r8d
add rdx, 1
cmp rdx, r9
movsxd rbx, eax
jne 0x14012cd80
call qword [sym.GetCurrentProcessId]
lea r12, [rsp + 0x24]
mov rdx, rbp
xor r8d, r8d
mov dword [rsp + 0x20], eax
lea eax, [rbx + 1]
movzx ecx, byte [rdx]
xor byte [rsi + rbx], cl
cmp edi, eax
cmovle eax, r8d
add rdx, 1
cmp rdx, r12
movsxd rbx, eax
jne 0x14012cdb0
call qword [sym.GetTickCount]
mov rdx, rbp
xor r8d, r8d
mov dword [rsp + 0x20], eax
nop dword [rax + rax]
lea eax, [rbx + 1]
movzx ecx, byte [rdx]
xor byte [rsi + rbx], cl
cmp edi, eax
cmovle eax, r8d
add rdx, 1
cmp rdx, r12
movsxd rbx, eax
jne 0x14012cde0
mov rcx, rbp
call qword [sym.QueryPerformanceCounter]
lea r9, [rsp + 0x28]
mov rax, rbp
xor r8d, r8d
nop
lea edx, [rbx + 1]
movzx ecx, byte [rax]
xor byte [rsi + rbx], cl
cmp edi, edx
cmovle edx, r8d
add rax, 1
cmp r9, rax
movsxd rbx, edx
jne 0x14012ce10
mov eax, 0x20
cmp edi, eax
cmovle eax, edi
add rsp, 0x30
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret

Function at 0x14012e460
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov r13d, dword [rcx + 0x80]
movsxd rdx, edx
mov rsi, rcx
mov rcx, qword [rcx + 0x78]
mov rbp, rdx
imul rdx, rdx, 0x38
call dbg.sqlite3Realloc
test rax, rax
mov rdi, rax
je 0x14012e570
movsxd rbx, r13d
mov r8d, ebp
xor edx, edx
imul rbx, rbx, 0x38
sub r8d, r13d
xor r12d, r12d
movsxd r8, r8d
imul r8, r8, 0x38
add rbx, rax
mov rcx, rbx
call sym.memset
cmp r13d, ebp
mov qword [rsi + 0x78], rdi
jl 0x14012e527
jmp 0x14012e590
mov rdi, rax
mov ecx, 0x40
mov rax, r12
rep stosq qword [rdi], rax
mov dword [rdx], r14d
mov qword [rbx + 0x10], rdx
mov rax, qword [rsi + 0x148]
mov dword [rbx + 0x20], 1
test rax, rax
je 0x14012e513
mov edx, dword [rax + 0x58]
mov dword [rbx + 0x24], edx
mov edx, dword [rax + 0x60]
mov dword [rbx + 0x28], edx
mov edx, dword [rax + 0x64]
mov dword [rbx + 0x2c], edx
mov eax, dword [rax + 0x88]
mov dword [rbx + 0x30], eax
add r13d, 1
add rbx, 0x38
cmp r13d, ebp
mov dword [rsi + 0x80], r13d
je 0x14012e590
mov rax, qword [rsi + 0x50]
mov r14d, dword [rsi + 0x20]
cmp qword [rax], 0
mov dword [rbx + 0x18], r14d
je 0x14012e588
mov rax, qword [rsi + 0x60]
test rax, rax
jle 0x14012e588
mov qword [rbx], rax
mov eax, dword [rsi + 0x3c]
mov ecx, 0x200
mov dword [rbx + 0x1c], eax
call sym.sqlite3Malloc
test rax, rax
mov rdx, rax
jne 0x14012e4d0
mov qword [rbx + 0x10], 0
mov dword [rbx + 0x20], 1
mov eax, 7
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov eax, dword [rsi + 0xb8]
jmp 0x14012e542
xor eax, eax
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
Function at 0x140134540
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov ebx, dword [rcx + 0x28]
test ebx, ebx
mov rdi, rdx
mov r12, r8
jle 0x1401345e2
mov rsi, qword [rcx + 0x20]
lea rbp, [0x1403489c0]
xor r13d, r13d
nop dword [rax + rax]
mov r10d, r13d
xor r10d, 1
cmp r13d, 2
cmovge r10d, r13d
movsxd rax, r10d
shl rax, 5
add rax, rsi
test r12, r12
mov r9, qword [rax + 0x18]
je 0x1401345c1
mov r8, qword [rax]
xor ecx, ecx
jmp 0x1401345af
movzx edx, byte [rbp + rdx]
cmp byte [rbp + rax], dl
jne 0x1401345f8
add rcx, 1
movzx eax, byte [r8 + rcx]
movzx edx, byte [r12 + rcx]
cmp eax, edx
jne 0x1401345a0
test eax, eax
jne 0x1401345ab
lea rcx, [r9 + 0x20]
xor r8d, r8d
mov rdx, rdi
call dbg.findElementWithHash
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1401345e4
add r13d, 1
cmp r13d, ebx
jne 0x140134570
xor eax, eax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
test r10d, r10d
jne 0x1401345d9
lea rcx, str.main
mov r8, r12
jmp 0x140134623
movzx edx, byte [rbp + rdx]
cmp byte [rbp + rax], dl
jne 0x1401345d9
add rcx, 1
add r8, 1
movzx eax, byte [rcx]
movzx edx, byte [r8]
cmp eax, edx
jne 0x140134610
test eax, eax
jne 0x14013461b
jmp 0x1401345c1
Function at 0x140139250
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rdi
push rsi
push rbx
sub rsp, 0xc0
mov rax, rcx
movzx ecx, byte [r8 + 8]
mov r10, rdx
mov rsi, r8
cmp byte [rax + 0x16], cl
mov rdi, r9
jne 0x1401392a0
mov rcx, qword [r8 + 0x10]
mov r8, qword [r10 + 8]
mov edx, dword [rax + 0x10]
mov r9d, dword [r10 + 0x10]
mov qword [rsp + 0x20], r8
mov r8, qword [rax + 8]
call qword [rsi + 0x18]
add rsp, 0xc0
pop rbx
pop rsi
pop rdi
ret
mov rdx, qword [rax + 0x18]
mov dword [rsp + 0x60], 0
mov dword [rsp + 0xa0], 0
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x98], rdx
mov rdx, qword [rax]
mov qword [rsp + 0x40], rdx
mov rdx, qword [rax + 8]
mov qword [rsp + 0x48], rdx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x50], rdx
movzx edx, word [rax + 0x14]
test dh, 0x20
jne 0x1401392f2
and dh, 0x8f
or dh, 0x40
mov word [rsp + 0x54], dx
mov rax, qword [r10]
mov qword [rsp + 0x80], rax
mov rax, qword [r10 + 8]
mov qword [rsp + 0x88], rax
mov rax, qword [r10 + 0x10]
mov qword [rsp + 0x90], rax
movzx eax, word [r10 + 0x14]
test ah, 0x20
jne 0x14013932d
and ah, 0x8f
or ah, 0x40
mov word [rsp + 0x94], ax
xor ebx, ebx
and edx, 1
movzx eax, cl
jne 0x14013934c
lea rcx, [rsp + 0x40]
mov edx, eax
call dbg.valueToText
mov rbx, rax
movzx eax, byte [rsi + 8]
mov ecx, eax
movzx edx, word [rsp + 0x94]
mov r8d, edx
and r8w, 0x202
cmp r8w, 0x202
je 0x1401393f0
and edx, 1
jne 0x1401393e0
lea rcx, [rsp + 0x80]
mov edx, eax
call dbg.valueToText
test rbx, rbx
je 0x1401393e0
test rax, rax
je 0x1401393e0
mov rcx, qword [rsi + 0x10]
mov r8, rbx
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x90]
mov edx, dword [rsp + 0x50]
call qword [rsi + 0x18]
mov ecx, dword [rsp + 0x60]
test ecx, ecx
jne 0x140139410
mov edx, dword [rsp + 0xa0]
test edx, edx
je 0x14013928b
lea rcx, [rsp + 0x80]
mov dword [rsp + 0x3c], eax
call dbg.vdbeMemClear
mov eax, dword [rsp + 0x3c]
add rsp, 0xc0
pop rbx
pop rsi
pop rdi
ret
test rdi, rdi
je 0x1401393e8
mov byte [rdi], 7
xor eax, eax
jmp 0x1401393a2
cmp cl, byte [rsp + 0x96]
jne 0x140139369
mov rax, qword [rsp + 0x88]
jmp 0x14013937d
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x3c], eax
call dbg.vdbeMemClear
mov eax, dword [rsp + 0x3c]
jmp 0x1401393aa
Function at 0x140139430
Capabilities:
Resolve function by parsing pe exports

Disassembly:
movzx r9d, word [rcx + 0x14]
movzx r10d, word [rdx + 0x14]
mov eax, r9d
or eax, r10d
test al, 1
jne 0x1401394a0
test al, 0x2c
je 0x140139480
mov eax, r9d
and eax, r10d
test al, 0x24
jne 0x1401394b0
test al, 8
je 0x1401394c0
movsd xmm1, qword [rcx]
movsd xmm0, qword [rdx]
comisd xmm0, xmm1
ja 0x14013950c
xor eax, eax
comisd xmm1, xmm0
seta al
jmp 0x14013947d
fstp st(0)
fstp st(0)
jmp 0x14013947d
fstp st(0)
fstp st(0)
ret
test al, 2
je 0x140139499
and r9d, 2
je 0x1401394f0
and r10d, 2
je 0x14013950c
test r8, r8
jne 0x140139518
jmp dbg.sqlite3BlobCompare
and r10d, 1
and r9d, 1
mov eax, r10d
sub eax, r9d
ret
mov rax, qword [rdx]
cmp qword [rcx], rax
jl 0x14013950c
setg al
movzx eax, al
ret
test r9b, 0x24
jne 0x140139500
and r9d, 8
mov eax, 1
je 0x14013947d
and r10d, 0x24
je 0x14013950c
fild qword [rdx]
fld qword [rcx]
fcomi st(1)
ja 0x140139473
fxch st(1)
xor eax, eax
fcompi st(1)
fstp st(0)
seta al
neg eax
ret
mov eax, 1
ret
test r10b, 8
jne 0x140139520
and r10d, 0x24
jne 0x1401394b0
mov eax, 0xffffffff
ret
xor r9d, r9d
jmp dbg.vdbeCompareMemString
fild qword [rcx]
mov eax, 0xffffffff
fld qword [rdx]
fcomi st(1)
ja 0x140139479
fxch st(1)
xor eax, eax
fcompi st(1)
fstp st(0)
seta al
ret

Function at 0x14013d4e0
Capabilities:
Create thread

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
xor edi, edi
movzx ebp, byte [rcx + 0x5b]
sub ebp, 1
mov rsi, rcx
mov byte [rcx + 0x58], 1
test ebp, ebp
jg 0x14013d517
jmp 0x14013d54d
imul rbx, rbx, 0x68
cmp qword [rsi + rbx + 0x60], 0
je 0x14013d550
add edi, 1
cmp edi, ebp
je 0x14013d600
movzx eax, byte [rsi + 0x5a]
lea eax, [rdi + rax + 1]
cdq
idiv ebp
movsxd rbx, edx
imul rax, rbx, 0x68
lea r12, [rsi + rax + 0x60]
mov eax, dword [rsi + rax + 0x68]
test eax, eax
je 0x14013d500
mov rcx, r12
call dbg.vdbeSorterJoinThread
test eax, eax
je 0x14013d500
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
xor r12d, r12d
cmp edi, ebp
je 0x14013d600
lea rdx, [rsi + 0x60]
mov rax, r12
mov rcx, qword [r12 + 0x28]
sub rax, rdx
movabs rdx, 0x4ec4ec4ec4ec4ec5
sar rax, 3
imul rax, rdx
test rcx, rcx
mov byte [rsi + 0x5a], al
mov rax, qword [rsi + 0x38]
mov qword [r12 + 0x20], rax
mov rax, qword [rsi + 0x40]
mov qword [r12 + 0x28], rax
mov rax, qword [rsi + 0x48]
mov qword [r12 + 0x30], rax
mov qword [rsi + 0x38], 0
mov dword [rsi + 0x48], 0
je 0x14013d5d8
mov qword [rsi + 0x40], rcx
call qword [0x140214378]
mov dword [rsi + 0x54], eax
lea rdx, [dbg.vdbeSorterFlushThread]
mov r8, r12
mov rcx, r12
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp dbg.sqlite3ThreadCreate
cmp qword [rsi + 0x40], 0
je 0x14013d5b8
movsxd rcx, dword [rsi + 0x54]
call sym.sqlite3Malloc
test rax, rax
mov qword [rsi + 0x40], rax
jne 0x14013d5b8
mov eax, 7
jmp 0x14013d542
lea rdx, [rsi + 0x38]
movsxd rax, edi
imul rax, rax, 0x68
lea rcx, [rsi + rax + 0x60]
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp dbg.vdbeSorterListToPMA
Function at 0x140146320
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x78
mov rax, qword [rcx]
test edx, edx
mov rdi, qword [rax + 0x18]
mov rsi, rcx
mov ebx, edx
mov rbp, r8
jg 0x140146348
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
ret
mov rcx, qword [r8]
test rcx, rcx
je 0x14014633b
movzx eax, word [rcx + 0x14]
mov edx, eax
and dx, 0x202
cmp dx, 0x202
je 0x140146430
test al, 1
jne 0x14014633b
mov edx, 1
call dbg.valueToText
mov rdx, rax
test rdx, rdx
je 0x14014633b
mov eax, dword [rdi + 0x88]
sub ebx, 1
mov dword [rsp + 0x44], 0
mov dword [rsp + 0x40], ebx
lea r8, [rbp + 8]
lea rbx, [rsp + 0x50]
mov qword [rsp + 0x48], r8
lea r8, [rsp + 0x40]
mov rcx, rbx
mov qword [rsp + 0x58], 0
mov dword [rsp + 0x64], eax
movzx eax, word [0x1403490a2]
mov qword [rsp + 0x50], rdi
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x68], 0
mov word [rsp + 0x6c], ax
call dbg.sqlite3_str_appendf
mov rdx, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x68]
test rdx, rdx
je 0x140146404
mov eax, r8d
mov byte [rdx + rax], 0
mov eax, dword [rsp + 0x64]
test eax, eax
je 0x1401463ff
test byte [rsp + 0x6d], 4
je 0x140146448
mov rdx, qword [rsp + 0x58]
lea rax, [sym.sqlite3OomClear]
mov r9d, 1
mov rcx, rsi
mov qword [rsp + 0x20], rax
call dbg.setResultStrOrError
nop
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop rbp
ret
cmp byte [rcx + 0x16], 1
jne 0x140146366
mov rdx, qword [rcx + 8]
jmp 0x140146377
mov rcx, rbx
mov dword [rsp + 0x3c], r8d
call dbg.strAccumFinishRealloc
mov r8d, dword [rsp + 0x3c]
mov rdx, rax
jmp 0x140146404
Function at 0x140149140
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov r15d, dword [rsp + 0xb0]
mov rdi, qword [rcx + 0x10]
mov rbp, qword [rsp + 0xb8]
mov r14d, dword [rsp + 0xc0]
mov rsi, rcx
mov rcx, qword [rcx]
mov dword [rsp + 0x3c], edx
mov r13d, r8d
lea edx, [r15*8 + 0x30]
mov r12d, r9d
movsxd rdx, edx
call sym.sqlite3DbMallocRawNN
test rax, rax
mov rbx, rax
je 0x140149298
cmp r14d, 1
mov ecx, 0x41
mov byte [rax + 0x2a], r15b
mov edx, dword [rdi + 0x90]
adc ecx, 0
cmp edx, dword [rdi + 0x94]
mov qword [rax], 0
mov qword [rax + 8], rbp
mov qword [rax + 0x18], 0
mov dword [rax + 0x24], 0
mov dword [rax + 0x20], edx
jge 0x140149278
lea eax, [rdx + 1]
movd xmm0, dword [rsp + 0x3c]
movd xmm1, r13d
mov dword [rdi + 0x90], eax
movsxd rax, edx
lea r8, [rax + rax*2]
mov rax, qword [rdi + 0x88]
punpckldq xmm0, xmm1
lea rax, [rax + r8*8]
mov byte [rax], cl
xor ecx, ecx
mov word [rax + 2], cx
movq qword [rax + 4], xmm0
mov dword [rax + 0xc], r12d
mov qword [rax + 0x10], 0
mov byte [rax + 1], 0
mov r9d, 0xfffffff1
mov r8, rbx
mov rcx, rdi
call sym.sqlite3VdbeChangeP4
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x140149252
mov rdx, qword [rdi + 0x88]
lea rax, [rax + rax*2]
and r14d, 0x2e
lea rax, [rdx + rax*8]
mov word [rax - 0x16], r14w
mov rax, qword [rsi + 0xa8]
test rax, rax
cmove rax, rsi
mov byte [rax + 0x21], 1
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r8d, dword [rsp + 0x3c]
mov edx, ecx
mov dword [rsp + 0x20], r12d
mov r9d, r13d
mov rcx, rdi
call dbg.growOp3
mov edx, eax
jmp 0x14014921e
test byte [rbp + 4], 0x10
je 0x140149264
mov rcx, qword [rsi]
mov rdx, rbp
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.sqlite3DbNNFreeNN
Function at 0x140165890
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
lea rbp, [0x140342d80]
mov rax, qword [rcx + 8]
mov r14, rcx
mov edi, edx
mov rcx, qword [rax + 8]
mov rsi, r8
mov rdx, qword [r14 + 0x18]
movsxd rax, dword [r14 + 0x20]
mov r8, qword [rdx + 0x88]
mov rdx, qword [rsi]
lea rax, [rax + rax*2]
lea rax, [r8 + rax*8]
mov r12, qword [rax - 8]
movzx eax, word [rdx + 0x14]
and eax, 0x3f
cmp byte [rbp + rax], 5
je 0x140165931
cmp edi, 1
jle 0x14016594f
neg rcx
mov ebx, 1
sbb r13d, r13d
xor r15d, r15d
jmp 0x14016591f
movsxd rax, r15d
mov r8, r12
mov rcx, qword [rsi + rax*8]
call dbg.sqlite3MemCompare
xor eax, r13d
cmovns r15d, ebx
add rbx, 1
cmp rdi, rbx
je 0x140165948
mov rdx, qword [rsi + rbx*8]
movzx eax, word [rdx + 0x14]
and eax, 0x3f
cmp byte [rbp + rax], 5
jne 0x140165900
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd r15, r15d
mov rdx, qword [rsi + r15*8]
mov rcx, r14
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp dbg.sqlite3_result_value

Function at 0x140167bf0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x18
mov qword [rsp], 0
mov r9, rcx
mov qword [rsp + 8], 0
mov qword [rsp], 0
mov rax, qword [rsp]
cmp rax, r8
jae 0x140167c51
nop dword [rax]
mov rax, qword [rsp]
add rax, r9
movzx eax, byte [rax]
mov rcx, qword [rsp + 8]
xor eax, edx
movzx eax, al
or rax, rcx
mov qword [rsp + 8], rax
mov rax, qword [rsp]
add rax, 1
mov qword [rsp], rax
mov rax, qword [rsp]
cmp rax, r8
jb 0x140167c20
mov rax, qword [rsp + 8]
test rax, rax
setne al
movzx eax, al
add rsp, 0x18
ret

Function at 0x140167c70
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
sub rsp, 0x18
mov dword [rsp + 8], 0
mov r9, rdx
mov dword [rsp + 0xc], 0
mov dword [rsp + 8], 0
mov eax, dword [rsp + 8]
cmp r8d, eax
jle 0x140167cdb
nop dword [rax + rax]
movsxd rax, dword [rsp + 8]
add rax, rcx
movzx eax, byte [rax]
movsxd rdx, dword [rsp + 8]
add rdx, r9
movzx r10d, byte [rdx]
mov edx, dword [rsp + 0xc]
xor eax, r10d
movzx eax, al
or eax, edx
mov dword [rsp + 0xc], eax
mov eax, dword [rsp + 8]
add eax, 1
mov dword [rsp + 8], eax
mov eax, dword [rsp + 8]
cmp eax, r8d
jl 0x140167ca0
mov eax, dword [rsp + 0xc]
test eax, eax
setne al
movzx eax, al
add rsp, 0x18
ret
Function at 0x140176420
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rbx
sub rsp, 0x28
mov eax, dword [0x140214494]
test eax, eax
mov ebx, ecx
mov rsi, rdx
jne 0x140176470
call dbg.sqlite3MutexInit
test eax, eax
jne 0x140176460
call sym.sqlite3_initialize.part.0
test eax, eax
jne 0x140176460
mov rdx, rsi
mov ecx, ebx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.sqlite3_randomness.part.0
add rsp, 0x28
pop rbx
pop rsi
ret
lock or qword [rsp], 0
mov rdx, rsi
mov ecx, ebx
add rsp, 0x28
pop rbx
pop rsi
jmp sym.sqlite3_randomness.part.0
Function at 0x1401a61f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x70
movaps xmmword [rsp + 0x60], xmm6
movzx eax, byte [rdx]
cmp al, 0xb0
mov rsi, rdx
mov rbx, rcx
mov edx, eax
jne 0x1401a6216
movzx edx, byte [rsi + 2]
cmp dl, 0xb1
je 0x1401a6338
cmp dl, 0x8a
je 0x1401a6248
movaps xmm6, xmmword [rsp + 0x60]
mov rdx, rsi
mov rcx, rbx
add rsp, 0x70
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp dbg.sqlite3ExprCodeTemp
mov rdx, qword [rsi + 0x20]
mov rdx, qword [rdx + 0x20]
mov edi, dword [rdx]
cmp edi, 1
je 0x1401a6224
cmp al, 0x8a
mov dword [r8], 0
je 0x1401a6348
mov eax, dword [rbx + 0x38]
lea ebp, [rax + 1]
add eax, edi
test edi, edi
mov dword [rbx + 0x38], eax
jle 0x1401a631b
lea rax, [dbg.sqlite3SelectWalkFail]
xor r13d, r13d
lea rcx, [dbg.exprNodeIsConstant]
movq xmm0, rax
lea r12, [rsp + 0x30]
movq xmm6, rcx
punpcklqdq xmm6, xmm0
jmp 0x1401a62d1
mov rdx, r14
mov rcx, r12
mov dword [rsp + 0x2c], r8d
call dbg.walkExpr
cmp word [rsp + 0x54], 0
mov r8d, dword [rsp + 0x2c]
jne 0x1401a6307
mov rdx, r14
mov rcx, rbx
add r13d, 1
call dbg.sqlite3ExprCodeCopy
cmp r13d, edi
je 0x1401a631b
lea r8d, [rbp + r13]
movsxd rax, r13d
shl rax, 5
add rax, qword [rsi + 0x20]
cmp byte [rbx + 0x23], 0
mov r14, qword [rax + 8]
je 0x1401a62bd
mov eax, 2
test r14, r14
movups xmmword [rsp + 0x38], xmm6
mov word [rsp + 0x54], ax
mov dword [rsp + 0x58], 0
jne 0x1401a62a0
mov rdx, r14
mov rcx, rbx
add r13d, 1
call dbg.sqlite3ExprCodeRunJustOnce
cmp r13d, edi
jne 0x1401a62d1
movaps xmm6, xmmword [rsp + 0x60]
mov eax, ebp
add rsp, 0x70
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov rdx, qword [rsi + 0x20]
mov edi, dword [rdx]
jmp 0x1401a6252
movaps xmm6, xmmword [rsp + 0x60]
mov rdx, rsi
mov rcx, rbx
add rsp, 0x70
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
jmp dbg.sqlite3CodeSubselect