joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400ba570
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
mov rax, qword [0x14029fbf8]
xor rax, rsp
mov qword [rsp + 0x48], rax
xor ebp, ebp
mov r14d, r8d
mov rbx, rdx
mov esi, ebp
test r8d, r8d
je 0x1400ba610
xor r9d, r9d
mov dword [rsp + 0x40], ebp
lea r8, [rsp + 0x38]
mov dword [rsp + 0x30], 0x18
lea edx, [rbp + 1]
lea rcx, str.D:_A_OI_FA___SY__A_OI_FA___BA_
call sub.api_ms_win_security_sddl_l1_1_0.dll_ConvertStringSecurityDescriptorToSecurityDescriptorW
test eax, eax
jne 0x1400ba60b
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.P_a_]
lea rdi, str.P_a_
cmp rcx, rdi
je 0x1400ba604
test byte [rcx + 0x44], 0x40
je 0x1400ba604
cmp byte [rcx + 0x41], 2
jb 0x1400ba604
mov rcx, qword [rcx + 0x38]
lea edx, [rbp + 0x19]
mov r9d, eax
lea r8, [0x140219f38]
call fcn.140024fa0
mov eax, ebx
jmp 0x1400ba6cb
lea rsi, [rsp + 0x30]
mov rcx, qword [str.P_a_]
lea rdi, str.P_a_
cmp rcx, rdi
je 0x1400ba653
test byte [rcx + 0x44], 0x40
je 0x1400ba653
cmp byte [rcx + 0x41], 4
jb 0x1400ba653
cmp qword [rbx + 0x18], 8
jb 0x1400ba63b
mov r9, qword [rbx]
jmp 0x1400ba63e
mov r9, rbx
mov rcx, qword [rcx + 0x38]
lea r8, [0x140219f38]
mov edx, 0x1a
call fcn.1400328b0
cmp qword [rbx + 0x18], 8
jb 0x1400ba65f
mov rcx, qword [rbx]
jmp 0x1400ba662
mov rcx, rbx
mov rdx, rsi
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_CreateDirectoryW]
test eax, eax
jne 0x1400ba6b5
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ebp, eax
mov rcx, qword [str.P_a_]
cmp rcx, rdi
je 0x1400ba6b5
test byte [rcx + 0x44], 0x40
je 0x1400ba6b5
cmp byte [rcx + 0x41], 2
jb 0x1400ba6b5
cmp qword [rbx + 0x18], 8
jb 0x1400ba699
mov rbx, qword [rbx]
mov rcx, qword [rcx + 0x38]
lea r8, [0x140219f38]
mov edx, 0x1b
mov dword [rsp + 0x20], eax
mov r9, rbx
call fcn.140032920
test r14d, r14d
je 0x1400ba6c9
test rsi, rsi
je 0x1400ba6c9
mov rcx, qword [rsi + 8]
call qword [sym.imp.api_ms_win_core_heap_l2_1_0.dll_LocalFree]
mov eax, ebp
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140199a10
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x80]
add rsp, 0x50
pop r14
pop rdi
pop rsi
ret
Function at 0x1400bab20
Capabilities:
Allocate thread local storage

Disassembly:
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x48], rbx
mov rax, qword [0x1402a6770]
test rax, rax
jne 0x1400babf8
mov ecx, 0x95080
call fcn.1401998c0
mov rdi, rax
mov qword [rsp + 0x40], rax
xor ebx, ebx
test rax, rax
je 0x1400bab77
xor edx, edx
mov r8d, 0x95080
mov rcx, rax
call fcn.14019bdd0
mov rcx, rdi
call fcn.1400b7920
jmp 0x1400bab7a
mov rax, rbx
mov qword [0x1402a6770], rax
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_TlsAlloc]
mov dword [0x14029d110], eax
cmp eax, 0xffffffff
jne 0x1400babee
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
lea rdx, str.P_a_
mov rcx, qword [str.P_a_]
cmp rcx, rdx
je 0x1400babcf
test byte [rcx + 0x44], 0x40
je 0x1400babcf
cmp byte [rcx + 0x41], 4
jb 0x1400babcf
mov edx, 0x34
mov r9d, eax
lea r8, [0x140219f38]
mov rcx, qword [rcx + 0x38]
call fcn.140024fa0
mov rcx, qword [0x1402a6770]
test rcx, rcx
je 0x1400babe5
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov qword [0x1402a6770], rbx
jmp 0x1400babf5
mov rbx, qword [0x1402a6770]
mov rax, rbx
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
Function at 0x1400bb740
Capabilities:
Move file

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x60
mov qword [r11 - 0x38], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x18], rsi
mov rax, qword [0x14029fbf8]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov rdi, rdx
mov rbx, rcx
xor esi, esi
mov qword [r11 - 0x20], rsi
mov qword [r11 - 0x18], 7
mov word [rsp + 0x38], si
lea r8d, [rsi + 4]
lea rdx, str.._
lea rcx, [r11 - 0x30]
call fcn.140006bd0
nop
lea r8d, [rsi + 0x12]
lea rdx, str.c:IntelOptaneData
lea rcx, [rsp + 0x38]
call fcn.14001a890
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.1400ba250
test eax, eax
je 0x1400bb7ca
cmp eax, 0xc
je 0x1400bb7ca
mov esi, 2
jmp 0x1400bb8a7
lea rbx, str.P_a_
mov rcx, qword [str.P_a_]
cmp rcx, rbx
je 0x1400bb823
test byte [rcx + 0x44], 0x40
je 0x1400bb823
cmp byte [rcx + 0x41], 4
jb 0x1400bb823
cmp qword [rdi + 0x18], 8
jb 0x1400bb7f5
mov rax, qword [rdi]
jmp 0x1400bb7f8
mov rax, rdi
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov edx, 0x17
mov qword [rsp + 0x20], rax
lea r8, [0x140219f38]
mov rcx, qword [rcx + 0x38]
call fcn.14003c350
cmp qword [rdi + 0x18], 8
jb 0x1400bb82f
mov rdx, qword [rdi]
jmp 0x1400bb832
mov rdx, rdi
lea rcx, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae rcx, qword [rsp + 0x38]
call qword [sym.imp.api_ms_win_core_kernel32_legacy_l1_1_0.dll_MoveFileW]
test eax, eax
jne 0x1400bb8a7
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov esi, eax
mov rcx, qword [str.P_a_]
cmp rcx, rbx
je 0x1400bb8a7
test byte [rcx + 0x44], 0x40
je 0x1400bb8a7
cmp byte [rcx + 0x41], 2
jb 0x1400bb8a7
cmp qword [rdi + 0x18], 8
jb 0x1400bb877
mov rdi, qword [rdi]
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov edx, 0x18
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rdi
lea r8, [0x140219f38]
mov rcx, qword [rcx + 0x38]
call fcn.1400bd040
nop
mov r8, qword [rsp + 0x50]
cmp r8, 8
jb 0x1400bb8c4
inc r8
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.140007b00
mov eax, esi
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.140199a10
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x80]
add rsp, 0x60
pop rdi
ret
Function at 0x1400bc190
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x40
xor esi, esi
mov rbx, rdx
mov dword [rsp + 0x50], esi
mov rdi, rcx
mov rcx, qword [str.P_a_]
lea rbp, str.P_a_
cmp rcx, rbp
je 0x1400bc1e2
test byte [rcx + 0x44], 0x40
je 0x1400bc1e2
cmp byte [rcx + 0x41], 4
jb 0x1400bc1e2
mov rcx, qword [rcx + 0x38]
lea edx, [rsi + 0x35]
lea r8, [0x140219f38]
call fcn.140022ad0
add rdi, 0x94e08
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
cmp byte [0x1402a6880], sil
jne 0x1400bc28d
mov rcx, rdi
mov byte [0x1402a6880], 1
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
mov rax, qword [str.P_a_]
cmp rax, rbp
je 0x1400bc26c
test byte [rax + 0x44], 0x40
je 0x1400bc26c
cmp byte [rax + 0x41], 2
jb 0x1400bc26c
cmp qword [rbx + 0x18], 8
jb 0x1400bc231
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1400bc9a0
mov esi, 1
cmp qword [rax + 0x18], 0x10
jb 0x1400bc24d
mov rax, qword [rax]
mov rcx, qword [str.P_a_]
lea r8, [0x140219f38]
mov edx, 0x37
mov r9, rax
mov rcx, qword [rcx + 0x38]
call fcn.1400293b0
test sil, 1
je 0x1400bc27c
lea rcx, [rsp + 0x20]
call fcn.140005290
call fcn.1400bd2a0
mov ecx, 0x2c9
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_ExitProcess]
mov rcx, qword [str.P_a_]
cmp rcx, rbp
je 0x1400bc2ba
test byte [rcx + 0x44], 0x40
je 0x1400bc2ba
cmp byte [rcx + 0x41], 5
jb 0x1400bc2ba
mov rcx, qword [rcx + 0x38]
lea r8, [0x140219f38]
mov edx, 0x36
call fcn.140022ad0
mov rcx, rdi
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x40
pop rdi
jmp qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
Function at 0x1400bc5f0
Capabilities:
Get file attributes
Set file attributes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
cmp qword [rdx + 0x18], 8
mov esi, r8d
mov rbx, rdx
jb 0x1400bc611
mov rcx, qword [rdx]
jmp 0x1400bc614
mov rcx, rbx
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_GetFileAttributesW]
mov edi, eax
or edi, esi
mov rcx, qword [str.P_a_]
lea rsi, str.P_a_
cmp rcx, rsi
je 0x1400bc655
test byte [rcx + 0x44], 0x40
je 0x1400bc655
cmp byte [rcx + 0x41], 4
jb 0x1400bc655
mov rcx, qword [rcx + 0x38]
lea r8, [0x140219f38]
mov edx, 0x1f
mov r9d, edi
call fcn.140024fa0
cmp qword [rbx + 0x18], 8
jb 0x1400bc661
mov rcx, qword [rbx]
jmp 0x1400bc664
mov rcx, rbx
mov edx, edi
call qword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
test eax, eax
jne 0x1400bc6ce
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov rcx, qword [str.P_a_]
cmp rcx, rsi
je 0x1400bc6b9
test byte [rcx + 0x44], 0x40
je 0x1400bc6b9
cmp byte [rcx + 0x41], 2
jb 0x1400bc6b9
cmp qword [rbx + 0x18], 8
jb 0x1400bc698
mov rbx, qword [rbx]
mov rcx, qword [rcx + 0x38]
lea r8, [0x140219f38]
mov dword [rsp + 0x28], eax
mov edx, 0x20
mov r9d, edi
mov qword [rsp + 0x20], rbx
call fcn.1400bcf80
mov eax, 0x3eb
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov rbx, qword [rsp + 0x40]
xor eax, eax
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
Function at 0x1400c0ad0
Capabilities:
Resume thread

Disassembly:
push rdi
sub rsp, 0x90
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rsp + 0xa8], rbx
mov rax, qword [0x14029fbf8]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbx, rcx
lea rax, str.P_a_
mov rcx, qword [str.P_a_]
cmp rcx, rax
je 0x1400c0b3a
test dword [rcx + 0x44], 0x8000
je 0x1400c0b3a
cmp byte [rcx + 0x41], 4
jb 0x1400c0b3a
mov edx, 0x11
mov r9d, dword [rbx + 0x58]
lea r8, [0x14021cd88]
mov rcx, qword [rcx + 0x38]
call fcn.140025240
lea rcx, [rbx + 0x30]
mov qword [rsp + 0x30], rcx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
mov byte [rsp + 0x38], 1
mov eax, dword [rbx + 0x20]
cmp eax, 4
je 0x1400c0b60
mov edi, 0x139f
jmp 0x1400c0bfd
mov dword [rbx + 0x20], 1
mov rcx, qword [rbx + 8]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x1400c0b80
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov edi, eax
jmp 0x1400c0bfd
xor edi, edi
cmp qword [rbx + 0x18], rdi
je 0x1400c0bfd
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov rcx, qword [0x1402a6770]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rdx, rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], dil
mov r9d, 0xb8
lea r8, str.ServiceThread::resume
lea rcx, [rsp + 0x48]
call fcn.140074420
mov rcx, qword [rbx + 0x18]
call fcn.1400c0c30
mov qword [rbx + 0x18], rdi
cmp byte [rsp + 0x50], dil
jne 0x1400c0bfd
lea rcx, [rsp + 0x48]
call fcn.140074ef0
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
mov eax, edi
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140199a10
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rdi
ret
Function at 0x1400c0cd0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
movzx esi, dl
mov rcx, qword [rcx + 0x60]
add rcx, 0xa0
call fcn.1400ae870
mov edi, eax
test eax, eax
je 0x14008cbc1
mov rcx, qword [str.P_a_]
lea rdx, str.P_a_
cmp rcx, rdx
je 0x14008cbaf
test byte [rcx + 0x44], 4
je 0x14008cbaf
cmp byte [rcx + 0x41], 2
jb 0x14008cbaf
mov edx, 0x2d
mov rcx, qword [rcx + 0x38]
lea r8, [0x1402149d0]
call fcn.140022ad0
mov eax, edi
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rax, qword [rbx + 0x60]
mov ecx, dword [rax + 0xac]
cmp ecx, 2
je 0x14008cc28
mov rcx, qword [rbx + 0x60]
add rcx, 0xa0
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov edi, eax
test eax, eax
je 0x14008cc0d
mov rcx, qword [str.P_a_]
lea rdx, str.P_a_
cmp rcx, rdx
je 0x14008cbaf
test byte [rcx + 0x44], 4
je 0x14008cbaf
cmp byte [rcx + 0x41], 2
jb 0x14008cbaf
mov edx, 0x2e
jmp 0x14008cb9f
movzx edx, sil
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp method.ServiceThread.virtual_16
mov rbx, qword [rsp + 0x30]
xor eax, eax
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
movzx ebp, dl
mov rbx, rcx
mov rcx, qword [str.P_a_]
lea rax, str.P_a_
cmp rcx, rax
je 0x1400c0d25
test dword [rcx + 0x44], 0x8000
je 0x1400c0d25
cmp byte [rcx + 0x41], 4
jb 0x1400c0d25
mov r9d, dword [rbx + 0x58]
lea r8, [0x14021cd88]
mov rcx, qword [rcx + 0x38]
mov edx, 0x12
call fcn.140025240
lea rcx, [rbx + 0x30]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
mov eax, dword [rbx + 0x20]
cmp eax, 3
je 0x1400c0d3e
mov edi, 0x139f
jmp 0x1400c0d93
mov rcx, qword [rbx + 0x28]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_ResetEvent]
movzx eax, bpl
lea r8, [0x1400c0550]
neg al
mov r9, rbx
sbb ecx, ecx
xor edi, edi
and ecx, 4
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], ecx
xor edx, edx
xor ecx, ecx
call fcn.1401c1b70
mov qword [rbx + 8], rax
cmp rax, 0xffffffffffffffff
jne 0x1400c0d80
lea edi, [rax + 0x6f]
jmp 0x1400c0d93
test bpl, bpl
mov edx, 1
mov eax, 4
cmovne edx, eax
mov dword [rbx + 0x20], edx
lea rcx, [rbx + 0x30]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
mov rbx, qword [rsp + 0x40]
mov eax, edi
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x1400c1150
Capabilities:
Suspend thread

Disassembly:
push rbx
sub rsp, 0x90
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov rax, qword [0x14029fbf8]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbx, rcx
lea rax, str.P_a_
mov rcx, qword [str.P_a_]
cmp rcx, rax
je 0x1400c11b2
test dword [rcx + 0x44], 0x8000
je 0x1400c11b2
cmp byte [rcx + 0x41], 4
jb 0x1400c11b2
mov edx, 0x10
mov r9d, dword [rbx + 0x58]
lea r8, [0x14021cd88]
mov rcx, qword [rcx + 0x38]
call fcn.140025240
lea rcx, [rbx + 0x30]
mov qword [rsp + 0x30], rcx
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_EnterCriticalSection]
mov byte [rsp + 0x38], 1
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov rcx, qword [0x1402a6770]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov rdx, rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
mov r9d, 0x89
lea r8, str.ServiceThread::suspend
lea rcx, [rsp + 0x48]
call fcn.140074420
nop
mov rcx, qword [rbx + 0x10]
call fcn.1400c12d0
mov qword [rbx + 0x18], rax
mov eax, dword [rbx + 0x20]
cmp eax, 1
je 0x1400c1239
mov ebx, 0x139f
jmp 0x1400c1289
mov dword [rbx + 0x20], 4
mov rcx, qword [0x1402a6770]
mov rax, qword [rcx]
call qword [rax + 0x28]
lea rcx, [rax + 0x10]
call fcn.140031ae0
mov rcx, qword [rbx + 8]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_SuspendThread]
mov ebx, eax
mov rcx, qword [0x1402a6770]
mov rdx, qword [rcx]
call qword [rdx + 0x28]
lea rcx, [rax + 0x10]
call fcn.140031b00
cmp ebx, 0xffffffff
jne 0x1400c1287
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov ebx, eax
jmp 0x1400c1289
xor ebx, ebx
cmp byte [rsp + 0x50], 0
jne 0x1400c129b
lea rcx, [rsp + 0x48]
call fcn.140074ef0
nop
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.api_ms_win_core_synch_l1_1_0.dll_LeaveCriticalSection]
mov eax, ebx
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140199a10
add rsp, 0x90
pop rbx
ret
Function at 0x1400e6470
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbx
push rsi
push rdi
push r12
sub rsp, 0x38
mov rsi, qword [rcx + 0x98]
mov rbx, rcx
mov rdi, qword [rcx + 0x10]
mov r12, qword [rcx]
test rsi, rsi
je 0x1400e6670
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], r13
xor r13d, r13d
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x30], r15
nop dword [rax + rax]
movsxd rbp, dword [rsi + 0x10]
movzx eax, byte [rbx + 0x1f]
mov r14d, dword [rsi + 0x14]
shl rbp, 5
add rbp, qword [r12 + 0x20]
test al, al
jne 0x1400e64d2
inc dword [rbx + 0x38]
mov r15d, dword [rbx + 0x38]
jmp 0x1400e64e2
dec al
movzx eax, al
mov byte [rbx + 0x1f], al
mov r15d, dword [rbx + rax*4 + 0xd4]
movsxd rcx, dword [rdi + 0x90]
lea r8d, [r14 + 2]
lea edx, [rcx + 7]
cmp dword [rdi + 0x94], ecx
jg 0x1400e650f
mov r9d, edx
mov dword [rsp + 0x20], r14d
mov edx, 0x37
mov rcx, rdi
call fcn.1400fbf30
jmp 0x1400e653d
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0x37
mov dword [rax + rcx*8 + 4], r8d
mov dword [rax + rcx*8 + 8], edx
mov dword [rax + rcx*8 + 0xc], r14d
mov qword [rax + rcx*8 + 0x10], r13
mov r9, qword [rbp + 0x18]
xor edx, edx
mov r8d, dword [rsi + 0x10]
mov rcx, rbx
mov dword [rsp + 0x20], 0x61
mov r9, qword [r9 + 0x68]
call fcn.140130440
mov eax, dword [rdi + 0x90]
add eax, 5
cmp eax, dword [rdi + 0x94]
jle 0x1400e6581
mov edx, 5
mov rcx, rdi
call fcn.1400fbfa0
test eax, eax
jne 0x1400e665c
movsxd rax, dword [rdi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8 + 8], 2
mov byte [rax + rcx*8], 0x33
mov dword [rax + rcx*8 + 4], r13d
lea rdx, [rax + rcx*8]
mov eax, dword [rdi + 0x90]
mov dword [rdx + 0xc], r13d
lea ecx, [r14 + 1]
mov byte [rdx + 1], r13b
add eax, 2
mov dword [rdx + 8], eax
lea eax, [r14 - 1]
mov qword [rdx + 0x10], r13
mov word [rdx + 2], r13w
mov qword [rdx + 0x18], 0x78
mov qword [rdx + 0x20], r13
mov qword [rdx + 0x28], r13
mov qword [rdx + 0x30], 0x5b
mov qword [rdx + 0x38], 2
mov qword [rdx + 0x40], r13
mov qword [rdx + 0x48], 0x79
mov qword [rdx + 0x50], r13
mov qword [rdx + 0x58], r13
mov qword [rdx + 0x60], 0x74
mov qword [rdx + 0x68], r13
mov qword [rdx + 0x70], r13
add dword [rdi + 0x90], 5
mov dword [rdx + 0x34], eax
mov eax, 8
mov word [rdx + 0x4a], ax
mov dword [rdx + 4], ecx
mov dword [rdx + 0x20], ecx
mov dword [rdx + 0x3c], r15d
mov dword [rdx + 0x50], r15d
mov dword [rdx + 0x54], ecx
test r15d, r15d
je 0x1400e6650
movzx eax, byte [rbx + 0x1f]
cmp al, 8
jae 0x1400e6650
movzx eax, al
mov dword [rbx + rax*4 + 0xd4], r15d
inc byte [rbx + 0x1f]
mov rsi, qword [rsi]
test rsi, rsi
jne 0x1400e64b0
mov r15, qword [rsp + 0x30]
mov r13, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
mov r14, qword [rsp + 0x70]
add rsp, 0x38
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x1400f4d20
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbx
push rbp
sub rsp, 0x28
movzx eax, byte [rdx]
mov rbx, rdx
mov rbp, rcx
cmp al, 0xad
jne 0x1400f4d38
movzx eax, byte [rdx + 2]
cmp al, 0xae
jne 0x1400f4d42
mov rax, qword [rdx + 0x20]
jmp 0x1400f4d52
cmp al, 0x88
jne 0x1400f4df3
mov rax, qword [rdx + 0x20]
mov rax, qword [rax + 0x20]
movsxd rcx, dword [rax]
cmp ecx, 1
je 0x1400f4df3
mov qword [rsp + 0x48], rdi
xor edi, edi
mov dword [r8], edi
cmp byte [rdx], 0x88
jne 0x1400f4d80
mov rcx, rbp
mov rdi, qword [rsp + 0x48]
add rsp, 0x28
pop rbp
pop rbx
jmp fcn.1401186f0
mov eax, dword [rbp + 0x38]
mov qword [rsp + 0x50], r14
mov r14, rcx
mov qword [rsp + 0x20], r15
lea r15d, [rax + 1]
add eax, ecx
mov dword [rbp + 0x38], eax
test ecx, ecx
jle 0x1400f4dee
mov qword [rsp + 0x40], rsi
mov esi, r15d
nop word [rax + rax]
mov rdx, qword [rbx + 0x20]
mov r8d, esi
mov rcx, rbp
mov rdx, qword [rdx + rdi + 8]
call fcn.14011f020
inc esi
lea rdi, [rdi + 0x20]
sub r14, 1
jne 0x1400f4db0
mov rsi, qword [rsp + 0x40]
mov eax, r15d
mov r14, qword [rsp + 0x50]
mov r15, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x48]
add rsp, 0x28
pop rbp
pop rbx
ret
mov eax, r15d
jmp 0x1400f4dd8
mov rcx, rbp
add rsp, 0x28
pop rbp
pop rbx
jmp fcn.1401219e0
Function at 0x14010a340
Capabilities:
Reference sql statements

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
mov ebx, r8d
lea r9, str.sqlite_master
mov rdi, rdx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rdx
mov r8, rdx
lea rdx, str.SELECT_1_FROM___w_._s_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual___AND_sqlite_rename_test__Q__sql__type__name___d_NULL
mov rsi, rcx
call fcn.1401301b0
test ebx, ebx
jne 0x14010a394
mov r9, rdi
lea r8, str.sqlite_master
lea rdx, str.SELECT_1_FROM_temp._s_WHERE_name_NOT_LIKE_sqliteX____ESCAPE_X_AND_sql_NOT_LIKE_create_virtual___AND_sqlite_rename_test__Q__sql__type__name__1_NULL
mov rcx, rsi
call fcn.1401301b0
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
Function at 0x140124770
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
push rsi
push rdi
push r14
sub rsp, 0x28
xor r11d, r11d
mov rdi, r8
mov ebx, r11d
mov r14, rdx
mov rsi, rcx
cmp dword [rcx + 0x28], ebx
jle 0x140124879
mov qword [rsp + 0x58], rbp
mov qword [rsp + 0x60], r12
lea r12, str.main
mov qword [rsp + 0x20], r15
lea r15, [0x14021fd90]
nop
mov rax, qword [rsi + 0x20]
mov r10d, ebx
xor r10d, 1
cmp ebx, 2
cmovge r10d, ebx
movsxd rcx, r10d
shl rcx, 5
mov rbp, qword [rcx + rax + 0x18]
test rdi, rdi
je 0x1401247f1
mov r8, qword [rcx + rax]
mov r9, rdi
sub r9, r8
nop dword [rax]
movzx ecx, byte [r8]
movzx eax, byte [r9 + r8]
cmp ecx, eax
jne 0x14012482c
test ecx, ecx
jne 0x14012483a
lea rcx, [rbp + 0x20]
xor r8d, r8d
mov rdx, r14
call fcn.1400f6750
mov r11, qword [rax + 0x10]
test r11, r11
jne 0x140124810
inc ebx
cmp ebx, dword [rsi + 0x28]
jl 0x1401247b0
mov r12, qword [rsp + 0x60]
mov rax, r11
mov rbp, qword [rsp + 0x58]
mov r15, qword [rsp + 0x20]
add rsp, 0x28
pop r14
pop rdi
pop rsi
pop rbx
ret
movzx edx, byte [rax + r15]
movzx ecx, byte [rcx + r15]
cmp ecx, edx
jne 0x14012483f
inc r8
jmp 0x1401247e0
test r10d, r10d
jne 0x140124809
mov r9, rdi
mov rax, r12
sub r9, r12
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [r9 + rax]
cmp edx, ecx
jne 0x140124865
test edx, edx
je 0x1401247f1
inc rax
jmp 0x140124850
movzx r8d, byte [rcx + r15]
movzx edx, byte [rdx + r15]
cmp edx, r8d
jne 0x140124809
inc rax
jmp 0x140124850
mov rax, r11
add rsp, 0x28
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x140162250
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
mov rdi, rcx
mov qword [rcx], 0
mov ecx, 0x28
mov rsi, r8
mov rbp, rdx
call fcn.14012fa00
mov rbx, rax
test rax, rax
jne 0x14016228e
lea eax, [rbx + 7]
jmp 0x140162315
cmp byte [0x14029d2c4], 0
je 0x1401622e2
mov rax, qword [0x14029d448]
test rax, rax
je 0x1401622ae
mov ecx, reloc.OLEAUT32.dll_SetErrorInfo
call rax
test eax, eax
jne 0x1401622e2
lea rax, [rbx + 8]
mov qword [rbx + 0x10], rbp
mov qword [rsp + 0x28], rax
lea r8, [0x14013fff0]
mov r9, rbx
mov dword [rsp + 0x20], 0
xor edx, edx
mov qword [rbx + 0x18], rsi
xor ecx, ecx
call fcn.1401c1b70
mov qword [rbx], rax
test rax, rax
jne 0x1401622f7
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x20], rax
cmp qword [rbx + 0x10], 0
jne 0x140162310
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetCurrentThreadId]
mov rcx, rsi
mov dword [rbx + 8], eax
call rbp
mov qword [rbx + 0x20], rax
mov qword [rdi], rbx
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret