joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140002ed0
Capabilities:
Allocate or change rwx memory

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rdi, qword [0x140005710]
xor r13d, r13d
mov rax, qword [rdi]
mov qword [rsp + 0x38], rax
xor eax, eax
call fcn.140002950
lea rcx, str.ntdll.dll
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
movsxd rbx, dword [rbp + 0x3c]
mov r12, rax
xor eax, eax
mov dword [rsp + 0x34], eax
add rbx, rbp
lea r15, [rbx + 0x18]
movzx eax, word [rbx + 6]
cmp eax, r13d
jle 0x140002faa
imul rax, r13, 0x28
movzx r10d, word [rbx + 0x14]
lea rdx, str..text
add r10, r15
lea r14, [r10 + rax]
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x140002f52
inc r13
jmp 0x140002f1d
mov ecx, dword [r14 + 0xc]
lea r9, [rsp + 0x34]
mov r8d, 0x40
mov edx, dword [r14 + 8]
mov qword [rsp + 0x28], r9
add rcx, r12
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140002faa
mov esi, dword [r14 + 0xc]
mov ecx, dword [r14 + 8]
mov r9, qword [rsp + 0x28]
lea rax, [r12 + rsi]
add rsi, rbp
mov rdi, rax
rep movsb byte [rdi], byte [rsi]
mov ecx, dword [r14 + 0xc]
mov edx, dword [r14 + 8]
mov r8d, dword [rsp + 0x34]
add rcx, r12
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x140002f4d
mov rdi, qword [0x140005710]
mov rax, qword [rsp + 0x38]
sub rax, qword [rdi]
je 0x140002fc1
call fcn.140002530
nop
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
Function at 0x180002cd0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x170
mov rax, qword [0x1801715d0]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov rdi, rcx
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x180002e48
mov ecx, 0x228
call fcn.18000be40
mov rbx, rax
test rax, rax
je 0x180002e48
xor edx, edx
mov r8d, 0x228
mov rcx, rax
call fcn.18012e4b0
test rdi, rdi
je 0x180002d93
lea r9, [0x18014dd78]
mov r8, rdi
lea r10, [0x180144c70]
sub r9, rdi
nop
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x180002e6b
test ecx, ecx
jne 0x180002e7d
lea rdi, [0x180179cb0]
xor edx, edx
mov r8d, 0x8000
mov rcx, rdi
call fcn.18012e4b0
lea rcx, str.SystemDrive
mov r8d, 0x8000
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
je 0x180002d91
cmp eax, 0x8000
jbe 0x180002d93
xor edi, edi
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x128
call fcn.18012e4b0
lea r8, str._s
lea rcx, [rsp + 0x54]
mov r9, rdi
mov edx, 0x104
call fcn.180129834
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x54]
call fcn.180129fbc
mov qword [rbx], rax
cmp rax, 0xffffffffffffffff
je 0x180002e40
mov eax, dword [rsp + 0x30]
test al, 2
jne 0x180002de6
test al, 4
je 0x180002e85
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x128
call fcn.18012e4b0
mov rcx, qword [rbx]
lea rdx, [rsp + 0x30]
call fcn.18012a104
cmp eax, 0xffffffff
je 0x180002e40
nop word [rax + rax]
mov eax, dword [rsp + 0x30]
test al, 2
jne 0x180002e1c
test al, 4
je 0x180002e85
lea rcx, [rsp + 0x30]
xor edx, edx
mov r8d, 0x128
call fcn.18012e4b0
mov rcx, qword [rbx]
lea rdx, [rsp + 0x30]
call fcn.18012a104
cmp eax, 0xffffffff
jne 0x180002e10
mov rcx, rbx
call fcn.180002fb0
xor eax, eax
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.180128570
mov rbx, qword [rsp + 0x188]
add rsp, 0x170
pop rdi
ret
movzx edx, byte [rax + r10]
movzx ecx, byte [rcx + r10]
sub ecx, edx
jne 0x180002d93
inc r8
jmp 0x180002d40
lea rcx, [rbx + 0x10]
lea rdx, [rsp + 0x54]
mov r8d, 0x104
mov dword [rbx + 0xc], eax
call fcn.18012a240
mov byte [rbx + 0x114], 0
mov rax, rbx
jmp 0x180002e4a
Function at 0x180005680
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x30
mov rax, rdx
mov rbx, rcx
lea rdx, [0x180144b00]
mov rcx, rax
call fcn.18012a4bc
mov rdi, rax
test rax, rax
je 0x1800057fd
xor edx, edx
mov rcx, rax
mov qword [rsp + 0x40], rbp
lea r8d, [rdx + 2]
call fcn.18012ae28
mov rcx, rdi
call fcn.18012ac48
mov rcx, rdi
movsxd rbp, eax
call fcn.180129378
mov r11, qword [rbx]
mov rax, qword [r11 + 0x18]
movsxd rcx, dword [rax + 0x88]
cmp rbp, rcx
jle 0x180005736
mov dword [rbx + 0x24], 0x12
test byte [r11 + 0x14], 1
je 0x18000571f
mov rax, qword [str.string_or_blob_too_big]
lea rdx, str.unknown_error
mov r9b, 1
test rax, rax
mov rcx, rbx
mov qword [rsp + 0x20], 0
cmovne rdx, rax
or r8d, 0xffffffff
call fcn.18003bb90
mov rcx, rdi
mov rbp, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
jmp fcn.18012afc4
mov qword [rsp + 0x48], rsi
test rbp, rbp
mov esi, 1
cmovne rsi, rbp
call sym.sqlite.dll_sqlite3_initialize
test eax, eax
jne 0x1800057e3
test rsi, rsi
je 0x1800057e3
mov rcx, rsi
call fcn.18000be40
mov rsi, rax
test rax, rax
je 0x1800057e3
mov r9, rdi
mov r8, rbp
mov edx, 1
mov rcx, rax
call fcn.18012a7a8
cmp rbp, rax
jne 0x18000579c
lea r9, [sym.sqlite.dll_sqlite3_free]
mov r8, rbp
mov rdx, rsi
mov rcx, rbx
call sym.sqlite.dll_sqlite3_result_blob64
jmp 0x1800057eb
mov rax, qword [rbx]
mov dword [rbx + 0x24], 0xa
test byte [rax + 0x14], 1
je 0x1800057d9
mov rax, qword [str.disk_I_O_error]
lea rdx, str.unknown_error
mov r9b, 1
test rax, rax
mov rcx, rbx
mov qword [rsp + 0x20], 0
cmovne rdx, rax
or r8d, 0xffffffff
call fcn.18003bb90
mov rcx, rsi
call sym.sqlite.dll_sqlite3_free
jmp 0x1800057eb
mov rcx, rbx
call sym.sqlite.dll_sqlite3_result_error_nomem
mov rcx, rdi
call fcn.18012afc4
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x1800653b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
push rsi
push rdi
push r12
sub rsp, 0x28
xor r11d, r11d
mov rdi, r8
mov r12, rdx
mov ebx, r11d
mov rsi, rcx
cmp dword [rcx + 0x28], ebx
jle 0x1800654b9
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x20], r14
lea r14, str.main
lea r13, [0x180144c70]
nop
mov r9d, ebx
cmp ebx, 2
jge 0x1800653fc
xor r9d, 1
mov rax, qword [rsi + 0x20]
movsxd r8, r9d
shl r8, 5
mov rbp, qword [r8 + rax + 0x18]
test rdi, rdi
je 0x180065431
mov r8, qword [r8 + rax]
mov r10, rdi
sub r10, r8
nop dword [rax + rax]
movzx ecx, byte [r8]
movzx eax, byte [r10 + r8]
cmp ecx, eax
jne 0x18006546c
test ecx, ecx
jne 0x18006547a
lea rcx, [rbp + 0x20]
xor r8d, r8d
mov rdx, r12
call fcn.1800121f0
mov r11, qword [rax + 0x10]
test r11, r11
jne 0x180065450
inc ebx
cmp ebx, dword [rsi + 0x28]
jl 0x1800653f0
mov r13, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
mov r14, qword [rsp + 0x20]
mov rax, r11
add rsp, 0x28
pop r12
pop rdi
pop rsi
pop rbx
ret
movzx edx, byte [rax + r13]
movzx ecx, byte [rcx + r13]
sub ecx, edx
jne 0x18006547f
inc r8
jmp 0x180065420
test r9d, r9d
jne 0x180065449
mov r9, rdi
mov r8, r14
sub r9, r14
nop dword [rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x1800654a6
test ecx, ecx
je 0x180065431
inc r8
jmp 0x180065490
movzx edx, byte [rax + r13]
movzx ecx, byte [rcx + r13]
sub ecx, edx
jne 0x180065449
inc r8
jmp 0x180065490
mov rax, r11
add rsp, 0x28
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x1800f2fc0
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r14, qword [rdx + 0x30]
xor r15d, r15d
mov rdi, rcx
mov rcx, qword [rcx + 0x18]
mov r12d, 0x64
mov rbp, rdx
mov qword [rsp + 0x70], r15
mov ebx, r15d
mov r13d, r12d
test rcx, rcx
je 0x1800f3009
call qword [0x1801729a0]
cmp byte [rdi + 0x6f], bl
jne 0x1800f3016
mov rcx, rdi
call fcn.180023fd0
lea rdx, [rsp + 0x70]
mov rcx, rdi
call fcn.180087830
mov esi, eax
test eax, eax
jne 0x1800f304c
lea rdx, str.sqlite_stat1
mov r8, r14
mov rcx, rdi
call fcn.180064c80
mov rbx, rax
test rax, rax
je 0x1800f3049
cmp byte [rax + 0x3f], 2
jne 0x1800f304c
mov rbx, r15
cmp byte [rdi + 0x6f], r15b
jne 0x1800f305a
mov rcx, rdi
call fcn.180024040
test esi, esi
jne 0x1800f3093
test rbx, rbx
jne 0x1800f3093
mov rdx, qword [rsp + 0x70]
mov rcx, rdi
call fcn.18000c110
lea r8, str.sqlite_stat1
lea rdx, str.no_such_table_column:__s._s
xor r9d, r9d
mov rcx, rdi
call fcn.18000e980
lea esi, [rbx + 1]
mov qword [rsp + 0x70], rax
jmp 0x1800f3098
mov rax, qword [rsp + 0x70]
lea rcx, [0x180144b04]
test rax, rax
mov r8, r15
cmovne r8, rcx
mov r9, rax
mov edx, esi
mov rcx, rdi
call fcn.18000fc60
mov rdx, qword [rsp + 0x70]
mov rcx, rdi
call fcn.18000c110
cmp byte [rdi + 0x67], r15b
jne 0x1800f30d2
test esi, esi
jne 0x1800f30d2
mov ebx, r15d
jmp 0x1800f30de
mov edx, esi
mov rcx, rdi
call fcn.18000c9c0
mov ebx, eax
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x1800f30ed
call qword [0x1801729b0]
test ebx, ebx
je 0x1800f3105
cmp ebx, 1
mov qword [rbp + 0x48], 0x100000
cmove ebx, r15d
jmp 0x1800f3191
mov r8, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x30]
lea rcx, str.SELECT_stat_FROM__Q.sqlite_stat1_WHERE_tbl___q_rowid
call sym.sqlite.dll_sqlite3_mprintf
mov rsi, rax
test rax, rax
jne 0x1800f3126
lea ebx, [rax + 7]
jmp 0x1800f3186
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], r15
mov r9d, pe_nt_image_headers64
mov qword [rsp + 0x28], rax
or r8d, 0xffffffff
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x20], r15
call fcn.180088380
mov ebx, eax
test eax, eax
jne 0x1800f317e
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call sym.sqlite.dll_sqlite3_step
cmp eax, r12d
jne 0x1800f3174
xor edx, edx
mov rcx, rbx
call sym.sqlite.dll_sqlite3_column_int64
mov r13, rax
mov rcx, rbx
call sym.sqlite.dll_sqlite3_finalize
mov ebx, eax
mov rcx, rsi
call sym.sqlite.dll_sqlite3_free
cmp r13, r12
cmovg r12, r13
mov qword [rbp + 0x48], r12
lea r11, [rsp + 0x40]
mov eax, ebx
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x1800f37a0
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
sub rsp, 0x50
mov r13, r9
mov rbx, rdx
mov r12, rcx
test r8d, r8d
je 0x1800f3872
mov rdx, qword [rdx + 0x30]
lea rcx, str.PRAGMA__Q.page_size
xor esi, esi
call sym.sqlite.dll_sqlite3_mprintf
lea edi, [rsi + 7]
mov rbp, rax
test rax, rax
je 0x1800f3841
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rsi
lea r9d, [rdi + 0x79]
mov qword [rsp + 0x28], rax
or r8d, 0xffffffff
mov rdx, rbp
mov rcx, r12
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x20], rsi
call fcn.180088380
mov edi, eax
test eax, eax
jne 0x1800f3841
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
call sym.sqlite.dll_sqlite3_step
cmp eax, 0x64
jne 0x1800f3837
xor edx, edx
mov rcx, rdi
call sym.sqlite.dll_sqlite3_column_int
mov esi, eax
mov rcx, rdi
call sym.sqlite.dll_sqlite3_finalize
mov edi, eax
test edi, edi
jne 0x1800f385e
movzx eax, byte [rbx + 0x27]
lea ecx, [rsi - 0x40]
mov dword [rbx + 0x20], ecx
imul eax, eax, 0x33
add eax, 4
cmp eax, ecx
jge 0x1800f38c0
mov dword [rbx + 0x20], eax
jmp 0x1800f38c0
mov rcx, r12
call sym.sqlite.dll_sqlite3_errmsg
lea rcx, [0x180144b04]
mov rdx, rax
jmp 0x1800f38b7
mov r8, qword [rdx + 0x38]
mov rdx, qword [rdx + 0x30]
lea rcx, str.SELECT_length_data__FROM__q._q_node_WHERE_nodeno__1
call sym.sqlite.dll_sqlite3_mprintf
lea r8, [rbx + 0x20]
mov rcx, r12
mov rdx, rax
mov rbp, rax
call fcn.1800f3720
mov edi, eax
test eax, eax
jne 0x1800f385e
cmp dword [rbx + 0x20], 0x1c0
jge 0x1800f38c0
mov rdx, qword [rbx + 0x38]
mov edi, 0x10b
lea rcx, str.undersize_RTree_blobs_in___q_node_
call sym.sqlite.dll_sqlite3_mprintf
mov qword [r13], rax
mov rcx, rbp
call sym.sqlite.dll_sqlite3_free
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
mov eax, edi
add rsp, 0x50
pop r13
pop r12
pop rdi
ret
Function at 0x1800f5780
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor ebx, ebx
movaps xmmword [rsp + 0x30], xmm6
mov r15d, r9d
mov r12, r8
mov r14, rcx
cmp dword [r8 + 0x18], ebx
je 0x1800f57fe
mov rbx, rdx
lea eax, [rdx*8]
sar rbx, 0x20
xor ebx, eax
xor ebx, edx
xor edx, edx
mov eax, ebx
div dword [r12 + 0x34]
mov rax, qword [rsp + 0x90]
mov dword [rax], edx
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x88]
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
xor ebp, ebp
xor r13d, r13d
cmp dword [r8 + 0x10], ebx
jle 0x1800f57c4
xorpd xmm6, xmm6
lea rdi, [0x180145b40]
mov rax, qword [r12 + 0x28]
cmp byte [r13 + rax], 0
je 0x1800f597b
mov rcx, qword [r14 + 0x60]
lea r8, [rsp + 0x80]
mov edx, ebp
test r15d, r15d
je 0x1800f583e
call qword [r14 + 0x70]
jmp 0x1800f5842
call qword [r14 + 0x68]
test eax, eax
jne 0x1800f57d9
mov rcx, qword [rsp + 0x80]
movzx edx, word [rcx + 0x14]
mov eax, edx
and eax, 0x3f
movzx edi, byte [rax + rdi]
lea eax, [rbx*8]
xor eax, edi
xor ebx, eax
cmp edi, 1
je 0x1800f5952
cmp edi, 2
je 0x1800f58f9
cmp edi, 3
je 0x1800f589c
cmp edi, 4
je 0x1800f5895
mov rax, qword [rsp + 0x98]
mov dword [rax], 1
jmp 0x1800f5974
call sym.sqlite.dll_sqlite3_value_blob
jmp 0x1800f58a1
call sym.sqlite.dll_sqlite3_value_text
mov rcx, qword [rsp + 0x80]
mov rsi, rax
call sym.sqlite.dll_sqlite3_value_bytes
test rsi, rsi
jne 0x1800f58c7
cmp edi, 4
jne 0x1800f5990
test eax, eax
jg 0x1800f5990
xor edx, edx
movsxd r8, eax
test eax, eax
jle 0x1800f5974
nop word [rax + rax]
movzx ecx, byte [rdx + rsi]
lea eax, [rbx*8]
inc rdx
xor ecx, eax
xor ebx, ecx
cmp rdx, r8
jl 0x1800f58e0
jmp 0x1800f5974
test dl, 8
je 0x1800f590f
movsd xmm0, qword [rcx]
movsd qword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
jmp 0x1800f595a
test dl, 0x24
je 0x1800f592a
pxor xmm0, xmm0
cvtsi2sd xmm0, qword [rcx]
movsd qword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
jmp 0x1800f595a
test dl, 0x12
je 0x1800f5941
call fcn.180033b40
movsd qword [rsp + 0x20], xmm0
mov rdx, qword [rsp + 0x20]
jmp 0x1800f595a
movsd qword [rsp + 0x20], xmm6
mov rdx, qword [rsp + 0x20]
movapd xmm0, xmm6
jmp 0x1800f595a
call sym.sqlite.dll_sqlite3_value_int64
mov rdx, rax
lea ecx, [rbx*8]
xor ecx, edx
sar rdx, 0x20
xor ecx, ebx
lea ebx, [rcx*8]
xor ebx, edx
xor ebx, ecx
lea rdi, [0x180145b40]
inc ebp
inc r13
cmp ebp, dword [r12 + 0x10]
jl 0x1800f5814
jmp 0x1800f57c4
mov eax, 7
jmp 0x1800f57d9
Function at 0x1800f7f30
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r12
sub rsp, 0x40
cmp dword [r8 + 0x18], 0
mov rsi, rdx
mov r10, r9
mov r9, qword [r8 + 8]
lea rax, str._rowid___
mov ebp, ecx
mov rdi, r8
lea rdx, [0x180151904]
lea rcx, str.SELECT__s_FROM___w_.__w__WHERE_NOT_EXISTS____SELECT_1_FROM___w_.__w__WHERE__s_
cmovne rdx, rax
mov rax, qword [rsp + 0x88]
mov r8, r10
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rax
call sym.sqlite.dll_sqlite3_mprintf
mov r12, rax
test rax, rax
jne 0x1800f7fac
lea eax, [r12 + 7]
mov rbp, qword [rsp + 0x68]
add rsp, 0x40
pop r12
pop rdi
pop rsi
ret
mov rcx, qword [rsi]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
xor r9d, r9d
or r8d, 0xffffffff
mov rdx, r12
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x20], 0
call fcn.180088380
mov ebx, eax
test eax, eax
jne 0x1800f8042
mov rcx, qword [rsi + 0x60]
mov rbx, qword [rsp + 0x70]
mov qword [rcx], rbx
mov dword [rcx + 0xc], eax
mov eax, dword [rdi + 0x18]
mov dword [rcx + 8], eax
mov rcx, rbx
call sym.sqlite.dll_sqlite3_step
cmp eax, 0x64
jne 0x1800f8038
cmp dword [rdi + 0x18], 0
je 0x1800f8019
xor edx, edx
mov rcx, rbx
call sym.sqlite.dll_sqlite3_column_int64
jmp 0x1800f801b
xor eax, eax
mov r9, rdi
mov r8, rsi
mov rdx, rax
mov ecx, ebp
call fcn.1800f75c0
mov rcx, rbx
call sym.sqlite.dll_sqlite3_step
cmp eax, 0x64
je 0x1800f8007
mov rcx, rbx
call sym.sqlite.dll_sqlite3_finalize
mov ebx, eax
mov rcx, r12
call sym.sqlite.dll_sqlite3_free
mov rbp, qword [rsp + 0x68]
mov eax, ebx
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop r12
pop rdi
pop rsi
ret
Function at 0x180106400
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov r10, rcx
mov r8, rcx
movzx ecx, byte [rcx]
movzx eax, cl
cmp cl, 0x27
je 0x18010653a
cmp al, 0x4e
je 0x1801064da
cmp al, 0x58
je 0x180106483
cmp al, 0x6e
je 0x1801064da
cmp al, 0x78
je 0x180106483
cmp cl, 0x2b
je 0x180106437
cmp cl, 0x2d
jne 0x180106440
lea r8, [r10 + 1]
nop dword [rax + rax]
movzx eax, byte [r8]
sub al, 0x30
cmp al, 9
ja 0x18010644f
inc r8
jmp 0x180106440
cmp byte [r8], 0x2e
jne 0x180106473
movzx eax, byte [r8 + 1]
sub al, 0x30
cmp al, 9
ja 0x180106473
add r8, 2
movzx eax, byte [r8]
sub al, 0x30
cmp al, 9
ja 0x180106473
inc r8
jmp 0x180106464
cmp r8, r10
jne 0x180106562
xor r8d, r8d
mov eax, r8d
ret
cmp byte [r10 + 1], 0x27
lea r8, [r10 + 1]
jne 0x18010655f
movzx eax, byte [r8 + 1]
inc r8
cmp al, 0x61
jl 0x1801064a2
cmp al, 0x66
jle 0x180106492
cmp al, 0x41
jl 0x1801064aa
cmp al, 0x46
jle 0x180106492
cmp al, 0x30
jl 0x1801064b2
cmp al, 0x39
jle 0x180106492
cmp byte [r8], 0x27
jne 0x18010655f
mov rax, r8
sub rax, r10
cqo
and eax, 1
xor rax, rdx
cmp rax, rdx
jne 0x18010655f
inc r8
mov rax, r8
ret
mov edx, 4
lea r8, str.null
mov r9, r10
lea r11, [0x180144c70]
movzx ecx, byte [r8]
dec edx
test cl, cl
je 0x180106518
movzx eax, byte [r9]
movzx ecx, cl
movzx eax, byte [rax + r11]
cmp byte [rcx + r11], al
jne 0x180106518
inc r8
inc r9
test edx, edx
jg 0x1801064f0
dec edx
test edx, edx
js 0x180106532
movzx eax, byte [r9]
movzx edx, byte [rax + r11]
movzx eax, byte [r8]
movzx ecx, byte [rax + r11]
sub ecx, edx
jne 0x18010655f
lea r8, [r10 + 4]
mov rax, r8
ret
lea r8, [r10 + 1]
test r8, r8
je 0x180106562
movzx eax, byte [r8]
cmp al, 0x27
jne 0x180106553
inc r8
cmp byte [r8], al
jne 0x180106562
movzx eax, byte [r8 + 1]
inc r8
test al, al
jne 0x180106547
xor r8d, r8d
mov rax, r8
ret
Function at 0x180120cb0
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
sub rsp, 0x40
xor edi, edi
lea rbx, [rcx + 0x68]
mov r12, rdx
mov esi, edi
mov rbp, rcx
cmp qword [rbx], rsi
jne 0x180120d54
mov rsi, qword [rcx]
lea rax, str._origin
lea rdx, [0x180144af4]
cmp dword [rsi + 0x44], edi
mov r9, qword [rsi + 0x10]
mov r8, qword [rsi + 8]
lea rcx, str.SELECT_sz_s_FROM__Q._q_docsize_WHERE_id_
cmovne rdx, rax
mov qword [rsp + 0x60], r13
call sym.sqlite.dll_sqlite3_mprintf
mov r13, rax
test rax, rax
jne 0x180120d13
lea esi, [rdi + 7]
jmp 0x180120d4f
mov rax, qword [rbp]
mov qword [rsp + 0x30], rdi
mov r9d, 0x85
inc dword [rax + 0x78]
mov rcx, qword [rsi]
or r8d, 0xffffffff
mov rdx, r13
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
call fcn.180088380
mov rcx, r13
mov esi, eax
mov rax, qword [rbp]
dec dword [rax + 0x78]
call sym.sqlite.dll_sqlite3_free
mov r13, qword [rsp + 0x60]
mov rbx, qword [rbx]
mov rcx, rbx
call sym.sqlite.dll_sqlite3_reset
test esi, esi
jne 0x180120dae
lea edx, [rsi + 1]
mov r8, r12
mov rcx, rbx
call sym.sqlite.dll_sqlite3_bind_int64
mov rcx, rbx
call sym.sqlite.dll_sqlite3_step
cmp eax, 0x64
jne 0x180120d8c
lea edx, [rsi + 1]
mov rcx, rbx
call sym.sqlite.dll_sqlite3_column_int64
mov rdi, rax
mov rcx, rbx
call sym.sqlite.dll_sqlite3_reset
test eax, eax
jne 0x180120db0
test rdi, rdi
je 0x180120db0
mov rcx, qword [rbp + 8]
mov r8, r12
mov rdx, rdi
call fcn.18011a280
jmp 0x180120db0
mov eax, esi
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r12
pop rdi
pop rsi
ret
Function at 0x180122950
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rdi, qword [rcx]
xor r12d, r12d
lea rbp, [rcx + 0x68]
mov r15d, dword [rdi + 0x18]
mov ebx, r12d
mov r14, r8
mov r13, rdx
mov rsi, rcx
cmp qword [rbp], rbx
jne 0x180122a01
cmp dword [rdi + 0x44], ebx
mov r9, qword [rdi + 0x10]
mov r8, qword [rdi + 8]
lea rax, str._origin
lea rdx, [0x180144af4]
lea rcx, str.SELECT_sz_s_FROM__Q._q_docsize_WHERE_id_
cmovne rdx, rax
call sym.sqlite.dll_sqlite3_mprintf
mov r12, rax
test rax, rax
jne 0x1801229c2
lea ebx, [rax + 7]
jmp 0x1801229fe
mov rax, qword [rsi]
mov r9d, 0x85
or r8d, 0xffffffff
inc dword [rax + 0x78]
mov rcx, qword [rdi]
xor eax, eax
mov qword [rsp + 0x30], rax
mov rdx, r12
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
call fcn.180088380
mov rcx, r12
mov ebx, eax
mov rax, qword [rsi]
dec dword [rax + 0x78]
call sym.sqlite.dll_sqlite3_free
xor r12d, r12d
mov rdi, qword [rbp]
mov rcx, rdi
call sym.sqlite.dll_sqlite3_reset
test rdi, rdi
je 0x180122a77
mov esi, 1
mov r8, r13
mov rcx, rdi
mov edx, esi
call sym.sqlite.dll_sqlite3_bind_int64
mov rcx, rdi
call sym.sqlite.dll_sqlite3_step
cmp eax, 0x64
jne 0x180122a5f
xor edx, edx
mov rcx, rdi
call sym.sqlite.dll_sqlite3_column_blob
xor edx, edx
mov rcx, rdi
mov rbx, rax
call sym.sqlite.dll_sqlite3_column_bytes
mov r8, rbx
mov edx, r15d
mov rcx, r14
mov r9d, eax
call fcn.180122840
test eax, eax
cmove esi, r12d
mov rcx, rdi
call sym.sqlite.dll_sqlite3_reset
test esi, esi
je 0x180122a79
mov ecx, 0x10b
test eax, eax
cmove eax, ecx
jmp 0x180122a79
mov eax, ebx
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x1801263a0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rdi
sub rsp, 0x20
mov edi, edx
mov r8d, ecx
cmp ecx, 0x80
jge 0x1801263cc
lea eax, [rcx - 0x41]
cmp eax, 0x19
ja 0x1801263c4
lea eax, [rcx + 0x20]
add rsp, 0x20
pop rdi
ret
mov eax, ecx
add rsp, 0x20
pop rdi
ret
cmp ecx, 0x10000
jge 0x1801264a3
mov qword [rsp + 0x30], rbx
xor ebx, ebx
mov qword [rsp + 0x38], rsi
mov r9d, 0xa2
or r11d, 0xffffffff
lea rsi, [0x180000000]
mov r10d, ebx
nop dword [rax + rax]
lea eax, [r10 + r9]
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
movzx edx, word [rsi + rcx*4 + 0x14c680]
cmp r8d, edx
js 0x180126422
mov r11d, eax
lea r10d, [rax + 1]
jmp 0x180126426
lea r9d, [rax - 1]
cmp r9d, r10d
jge 0x180126400
movsxd rdx, r11d
movzx ecx, word [rsi + rdx*4 + 0x14c680]
movzx eax, byte [rsi + rdx*4 + 0x14c683]
add eax, ecx
cmp r8d, eax
jge 0x180126472
movzx r9d, byte [rsi + rdx*4 + 0x14c682]
xor ecx, r8d
mov eax, r9d
and eax, 1
and eax, ecx
test al, al
jne 0x180126472
mov eax, r9d
shr rax, 1
movzx eax, word [rsi + rax*2 + 0x14c910]
add eax, r8d
movzx r8d, ax
mov rsi, qword [rsp + 0x38]
test edi, edi
je 0x180126495
cmp edi, 2
mov ecx, r8d
sete bl
mov edx, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.180125d80
mov eax, r8d
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea eax, [rcx - 0x10400]
cmp eax, 0x27
ja 0x1801263c4
lea eax, [rcx + 0x28]
add rsp, 0x20
pop rdi
ret

Function at 0x18012c6ff
Capabilities:
Terminate process

Disassembly:
cmp rcx, qword [0x1801715d0]
jne 0x18012858a
rol rcx, 0x10
test cx, 0xffff
jne 0x180128586
repz ret
ror rcx, 0x10
jmp 0x18012c658
mov qword [rsp + 8], rcx
sub rsp, 0x88
lea rcx, [0x180178c20]
call qword [sym.imp.KERNEL32.dll_RtlCaptureContext]
mov rax, qword [0x180178d18]
mov qword [rsp + 0x58], rax
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call sub.KERNEL32.dll_RtlLookupFunctionEntry
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x18012c6dd
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [0x180178c20]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call sub.KERNEL32.dll_RtlVirtualUnwind
jmp 0x18012c6ff
mov rax, qword [rsp + 0x88]
mov qword [0x180178d18], rax
lea rax, [rsp + 0x88]
add rax, 8
mov qword [0x180178cb8], rax
mov rax, qword [0x180178d18]
mov qword [0x180178b90], rax
mov rax, qword [rsp + 0x90]
mov qword [0x180178ca0], rax
mov dword [0x180178b80], 0xc0000409
mov dword [0x180178b84], 1
mov rax, qword [0x1801715d0]
mov qword [rsp + 0x68], rax
mov rax, qword [0x1801715d8]
mov qword [rsp + 0x70], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov dword [0x180178c18], eax
mov ecx, 1
call fcn.180134c50
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
lea rcx, [0x18013e5d0]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
cmp dword [0x180178c18], 0
jne 0x18012c786
mov ecx, 1
call fcn.180134c50
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x88
ret