joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140004e60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 4]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
lea rsi, str.Karten_tshoptest_txyz_tdms_tsender_tleisure_tfire_tfilemgmtdata_tsierra_ttrains_tprotege_tcmsblog_tcatering_tchpurl_tbestellungen_tTESTS_tcaptcha_trdr_tcustomtags_tcommentfeeds_tcatall_tscw_tcontactusform_tsitemap_tjscalendar_todhlasit_tmainimages_tspravka_tjoin_tcarlos_tlibweb_tavp_tregs_torn_tnf_tbigbrother_tvtilog_tinternat_txmlhttp_tmaster_tgolfer_ttimthumb_thziin_tcru_ttop_tajaxcalls_tvalidator_tsupersubinfo
mov r10, rax
sub rbx, rax
movabs rdi, 0x2c47f4ee02c47f4f
lea r9, [rax + 2]
nop dword [rax + rax]
movsxd r8, r11d
lea r9, [r9 + 0xc]
mov rax, rdi
mov rcx, r8
mul r8
add r11d, 6
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 1]
xor al, byte [rbx + r9 - 0xe]
movsx eax, al
mov word [r9 - 0xe], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 2]
xor al, byte [r9 + rbx - 0xc]
movsx eax, al
mov word [r9 - 0xc], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 3]
xor al, byte [rbx + r9 - 0xa]
movsx eax, al
mov word [r9 - 0xa], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 4]
xor al, byte [rbx + r9 - 8]
movsx eax, al
mov word [r9 - 8], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 5]
xor al, byte [rbx + r9 - 6]
movsx eax, al
mov word [r9 - 6], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 - 4]
movsx eax, al
mov word [r9 - 4], ax
cmp r11d, 6
jb 0x140004eb0
mov rbx, qword [rsp + 0x30]
mov rax, r10
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140004fd0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0xe]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
lea rsi, str.Karten_tshoptest_txyz_tdms_tsender_tleisure_tfire_tfilemgmtdata_tsierra_ttrains_tprotege_tcmsblog_tcatering_tchpurl_tbestellungen_tTESTS_tcaptcha_trdr_tcustomtags_tcommentfeeds_tcatall_tscw_tcontactusform_tsitemap_tjscalendar_todhlasit_tmainimages_tspravka_tjoin_tcarlos_tlibweb_tavp_tregs_torn_tnf_tbigbrother_tvtilog_tinternat_txmlhttp_tmaster_tgolfer_ttimthumb_thziin_tcru_ttop_tajaxcalls_tvalidator_tsupersubinfo
mov r10, rax
sub rbx, rax
movabs rdi, 0x2c47f4ee02c47f4f
lea r9, [rax + 2]
nop dword [rax + rax]
movsxd r8, r11d
mov rax, rdi
mul r8
mov rcx, r8
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 1]
xor al, byte [rbx + r9 - 2]
movsx eax, al
mov word [r9 - 2], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 2]
xor al, byte [rbx + r9]
movsx eax, al
mov word [r9], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 3]
xor al, byte [rbx + r9 + 2]
movsx eax, al
mov word [r9 + 2], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 4]
xor al, byte [rbx + r9 + 4]
movsx eax, al
mov word [r9 + 4], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 5]
xor al, byte [rbx + r9 + 6]
movsx eax, al
mov word [r9 + 6], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 6]
xor al, byte [rbx + r9 + 8]
movsx eax, al
mov word [r9 + 8], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 7]
xor al, byte [rbx + r9 + 0xa]
movsx eax, al
mov word [r9 + 0xa], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 + 0xc]
movsx eax, al
mov word [r9 + 0xc], ax
lea rcx, [r8 + 8]
mov rax, rdi
mul rcx
add r11d, 0xb
lea r9, [r9 + 0x16]
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 9]
xor al, byte [rbx + r9 - 8]
movsx eax, al
mov word [r9 - 8], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 0xa]
xor al, byte [rbx + r9 - 6]
movsx eax, al
mov word [r9 - 6], ax
mov rax, rdi
mul rcx
shr rdx, 6
imul rax, rdx, 0x172
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 - 4]
movsx eax, al
mov word [r9 - 4], ax
cmp r11d, 0xb
jb 0x140005020
mov rbx, qword [rsp + 0x30]
mov rax, r10
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140009520
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov rsi, rcx
mov rdi, qword [rax + 0x18]
add rdi, 0x20
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x140009582
nop dword [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbx + 0x40]
mov rdx, rsi
mov r8, rax
call fcn.14000b300
test al, al
jne 0x140009594
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x140009550
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rax, qword [rbx + 0x20]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov eax, 0x70
mov dword [rbp - 0x20], 0x240000
lea rcx, [rbp - 0x20]
mov word [rbp - 0xc], ax
mov dword [rbp - 0x1c], 0x3a0020
mov dword [rbp - 0x18], 0x220020
mov dword [rbp - 0x14], 0x32004b
mov dword [rbp - 0x10], 0x2a003b
call fcn.140004fd0
mov rcx, rax
call 0x140009520
mov qword [0x1400161b8], rax
lea rcx, [rbp - 0x20]
mov eax, 0x68
mov dword [rbp - 0x20], 0x240000
mov word [rbp - 0x10], ax
mov dword [rbp - 0x1c], 0x3a0020
mov dword [rbp - 0x18], 0x220020
mov dword [rbp - 0x14], 0x41003a
call fcn.1400022a0
mov rcx, rax
call 0x140009520
lea rcx, [rbp - 0x20]
mov qword [0x1400161a8], rax
mov dword [rbp - 0x20], 0x150025
mov dword [rbp - 0x1c], 0x180016
mov dword [rbp - 0x18], 0x6e0009
call fcn.140004e60
mov rcx, rax
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rbp
jmp 0x140009520
Function at 0x14000b120
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov rsi, rcx
mov rdi, qword [rax + 0x18]
add rdi, 0x20
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x140009582
nop dword [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbx + 0x40]
mov rdx, rsi
mov r8, rax
call fcn.14000b300
test al, al
jne 0x140009594
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x140009550
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rax, qword [rbx + 0x20]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov eax, 0x70
mov dword [rbp - 0x20], 0x240000
lea rcx, [rbp - 0x20]
mov word [rbp - 0xc], ax
mov dword [rbp - 0x1c], 0x3a0020
mov dword [rbp - 0x18], 0x220020
mov dword [rbp - 0x14], 0x32004b
mov dword [rbp - 0x10], 0x2a003b
call fcn.140004fd0
mov rcx, rax
call 0x140009520
mov qword [0x1400161b8], rax
lea rcx, [rbp - 0x20]
mov eax, 0x68
mov dword [rbp - 0x20], 0x240000
mov word [rbp - 0x10], ax
mov dword [rbp - 0x1c], 0x3a0020
mov dword [rbp - 0x18], 0x220020
mov dword [rbp - 0x14], 0x41003a
call fcn.1400022a0
mov rcx, rax
call 0x140009520
lea rcx, [rbp - 0x20]
mov qword [0x1400161a8], rax
mov dword [rbp - 0x20], 0x150025
mov dword [rbp - 0x1c], 0x180016
mov dword [rbp - 0x18], 0x6e0009
call fcn.140004e60
mov rcx, rax
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rbp
jmp 0x140009520
Function at 0x14000b500
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov rbx, qword [0x1400161c0]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x90018
mov dword [rbp - 0x1c], 0x180017
mov dword [rbp - 0x18], 0x5d0009
mov dword [rbp - 0x14], 0x5d003b
mov dword [rbp - 0x10], 0x3000c
mov dword [rbp - 0xc], 0x74001c
call fcn.1400029c0
mov rcx, rax
call rbx
mov rbx, qword [0x1400161c0]
lea rcx, [rbp - 0x20]
mov qword [0x1400161a0], rax
mov dword [rbp - 0x20], 0x8001c
mov dword [rbp - 0x1c], 0x1d001c
mov dword [rbp - 0x18], 0xb000b
mov dword [rbp - 0x14], 0x5d007d
mov dword [rbp - 0x10], 0x3000c
mov dword [rbp - 0xc], 0x74001c
call fcn.1400029c0
mov rcx, rax
call rbx
movdqa xmm0, xmmword [0x140014e20]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400161b0], rax
mov word [rbp - 0x10], 0x2e0e
mov byte [rbp - 0xe], 0x7a
call fcn.140004620
mov rcx, qword [0x1400161a0]
mov rdx, rax
call rbx
mov rbx, qword [0x140016130]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x18170918
mov dword [rbp - 0x1c], 0x16712b09
mov dword [rbp - 0x18], 0x11041a0b
mov word [rbp - 0x14], 0x7332
call fcn.140001180
mov rcx, qword [0x1400161a0]
mov rdx, rax
call rbx
mov rbx, qword [0x140016130]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x11060f02
mov dword [rbp - 0x1c], 0x76c0017
mov dword [rbp - 0x18], 0x1a151f27
mov word [rbp - 0x14], 0x7324
call fcn.140001180
mov rcx, qword [0x1400161b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140014d20]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400160e8], rax
mov byte [rbp - 0x10], 0x78
call fcn.140004330
mov rcx, qword [0x1400161b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140014dc0]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400160f0], rax
mov dword [rbp - 0x10], 0x91f151c
call fcn.140002660
mov rcx, qword [0x1400161b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140014e00]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400160e0], rax
mov byte [rbp - 0x10], 0x78
call fcn.140004330
mov rcx, qword [0x1400161b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140014e30]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400160d8], rax
mov dword [rbp - 0x10], 0x48141611
mov byte [rbp - 0xc], 0x64
call fcn.140003130
mov rcx, qword [0x1400161b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140014db0]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140016130]
movdqu xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x10], 0x3816
mov byte [rbp - 0xe], 0x7a
call fcn.140004620
mov rcx, qword [0x1400161b0]
mov rdx, rax
mov rax, rbx
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
mov r12, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
jmp rax
Function at 0x14000bdb0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
movsxd rax, dword [rcx + 0x3c]
mov r12, rdx
mov rdx, rcx
mov ecx, dword [rax + rcx + 0x88]
xor eax, eax
add rcx, rdx
mov dword [rbp - 0x2c], eax
mov qword [rbp - 0x28], rcx
mov r8d, dword [rcx + 0x1c]
mov r9d, dword [rcx + 0x20]
add r8, rdx
mov r10d, dword [rcx + 0x24]
add r9, rdx
add r10, rdx
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], r9
mov qword [rbp - 0x10], r10
cmp dword [rcx + 0x18], eax
jbe 0x14000bfde
mov word [rbp + 0x50], 0x614b
mov word [rbp + 0x58], 0x614b
nop
mov esi, dword [r9 + rax*4]
lea rcx, [rbp + 0x50]
movzx eax, word [r10 + rax*2]
add rsi, rdx
xor edi, edi
mov r15d, dword [r8 + rax*4]
add r15, rdx
mov qword [rbp - 8], r15
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rsi], cl
je 0x14000be64
nop dword [rax]
lea rcx, [rbp + 0x50]
inc rdi
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rdi + rsi], cl
jne 0x14000be50
lea rcx, [rbp + 0x58]
xor ebx, ebx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [r12], cl
je 0x14000be95
nop dword [rax + rax]
lea rcx, [rbp + 0x58]
inc rbx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rbx + r12], cl
jne 0x14000be80
cmp rdi, rbx
jne 0x14000bfb2
mov r13, rsi
mov word [rbp - 0x50], 0x614b
sub r13, r12
mov r14, r12
nop dword [rax]
lea rcx, [rbp - 0x50]
xor ebx, ebx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rsi], cl
je 0x14000bed6
lea rcx, [rbp - 0x50]
inc rbx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rbx + rsi], cl
jne 0x14000bec2
mov rax, r14
sub rax, r12
dec rbx
cmp rax, rbx
jae 0x14000bfd8
movsx r15d, byte [r14 + r13]
lea rcx, [rbp - 0x4e]
mov dword [rbp - 0x4e], 0x61002a
call fcn.140002490
movzx eax, word [rax]
cmp r15d, eax
jl 0x14000bf48
lea rcx, [rbp - 0x4a]
mov dword [rbp - 0x4a], 0x610031
call fcn.140002490
movzx ecx, word [rax]
cmp r15d, ecx
jg 0x14000bf48
lea rcx, [rbp - 0x46]
mov dword [rbp - 0x46], 0x61002a
mov dword [rbp - 0x42], 0x61000a
call fcn.140002490
lea rcx, [rbp - 0x42]
movzx ebx, byte [rax]
call fcn.140002490
movzx ecx, byte [rax]
sub cl, bl
add r15b, cl
movsx edi, byte [r14]
lea rcx, [rbp - 0x3e]
mov dword [rbp - 0x3e], 0x61002a
call fcn.140002490
movzx eax, word [rax]
cmp edi, eax
jl 0x14000bfa5
lea rcx, [rbp - 0x3a]
mov dword [rbp - 0x3a], 0x610031
call fcn.140002490
movzx ecx, word [rax]
cmp edi, ecx
jg 0x14000bfa5
lea rcx, [rbp - 0x36]
mov dword [rbp - 0x36], 0x61002a
mov dword [rbp - 0x32], 0x61000a
call fcn.140002490
lea rcx, [rbp - 0x32]
movzx ebx, byte [rax]
call fcn.140002490
movzx ecx, byte [rax]
sub cl, bl
add dil, cl
cmp r15b, dil
jne 0x14000bfb2
inc r14
jmp 0x14000beb0
mov eax, dword [rbp - 0x2c]
mov rcx, qword [rbp - 0x28]
inc eax
mov dword [rbp - 0x2c], eax
cmp eax, dword [rcx + 0x18]
jae 0x14000bfde
mov rdx, qword [rbp + 0x40]
mov r8, qword [rbp - 0x20]
mov r9, qword [rbp - 0x18]
mov r10, qword [rbp - 0x10]
jmp 0x14000be20
mov rax, qword [rbp - 8]
jmp 0x14000bfe0
xor eax, eax
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140001958
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x30
xor esi, esi
mov r14, r8
mov r15, rdx
mov rbx, rcx
test rcx, rcx
je 0x140001a05
mov rax, qword [rcx + 0x78]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140001a05
movzx edi, word [rcx + 0x28]
lea ecx, [rsi + 0x40]
mov edx, edi
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov qword [r15], rax
test rax, rax
je 0x140001a14
mov rcx, qword [rbx + 0x78]
mov r9, r14
and qword [rsp + 0x20], rsi
mov r8d, edi
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov esi, eax
test eax, eax
je 0x1400019d6
mov edx, dword [r14]
cmp edx, edi
je 0x140001a14
lea rbp, str.ERROR_kull_m_busylight_device_read_raw____device__u___u_byte_s__readed___u_wanted_n
jmp 0x1400019e8
lea rbp, str.ERROR_kull_m_busylight_device_read_raw____device__u__ReadFile__0x_08x__n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [rbx + 8]
mov edi, eax
mov r8d, edi
mov rcx, rbp
call fcn.14000bf0c
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_LocalFree]
and dword [r14], 0
mov qword [r15], rax
jmp 0x140001a14
mov edx, dword [rcx + 8]
lea rcx, str.ERROR_kull_m_busylight_device_read_raw____device__u__Invalid_Device_Busy_Handle_n
call fcn.14000bf0c
mov rbx, qword [rsp + 0x50]
mov eax, esi
mov rsi, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret
Function at 0x140001ab4
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x40
mov r14, rdx
mov rsi, rcx
mov edx, Ordinal_69
mov r15d, r9d
mov edi, r8d
lea ecx, [rdx - 1]
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
xor r12d, r12d
mov rbx, rax
test rax, rax
je 0x140001c69
lea ebp, [r12 + 7]
cmp edi, ebp
jb 0x140001b13
mov edx, edi
lea rcx, str.ERROR_kull_m_busylight_request_create___count_u__max_is_7__n
call fcn.14000bf0c
cmp edi, ebp
cmovb ebp, edi
mov r10d, r12d
mov edi, 1
test ebp, ebp
je 0x140001b9f
lea r9, [r14 + 2]
movzx edx, byte [r9 - 2]
lea r8d, [r10*8]
lea ecx, [r8 + 2]
mov al, dl
or al, 0x10
movzx eax, al
test dl, 0xf0
cmove edx, eax
lea eax, [r8 + 1]
add r10d, edi
mov byte [rax + rbx], dl
mov al, byte [r9 - 1]
mov byte [rcx + rbx], al
lea ecx, [r8 + 3]
mov al, byte [r9]
lea r9, [r9 + 8]
mov byte [rcx + rbx], al
lea ecx, [r8 + 4]
mov al, byte [r9 - 7]
mov byte [rcx + rbx], al
lea ecx, [r8 + 5]
mov al, byte [r9 - 6]
mov byte [rcx + rbx], al
lea ecx, [r8 + 6]
mov al, byte [r9 - 5]
mov byte [rcx + rbx], al
lea ecx, [r8 + 7]
mov al, byte [r9 - 4]
mov byte [rcx + rbx], al
lea ecx, [r8 + 8]
mov al, byte [r9 - 3]
mov byte [rcx + rbx], al
cmp r10d, ebp
jb 0x140001b26
or word [rbx + 0x3d], 0xffff
lea rdx, [rbx + 1]
mov dword [rbx + 0x39], 0xff550404
movzx ecx, r12w
mov r8d, 0x3e
movzx eax, byte [rdx]
add rdx, rdi
add cx, ax
sub r8, rdi
jne 0x140001bba
movzx eax, cx
mov byte [rbx + 0x40], cl
shr ax, 8
mov byte [rbx + 0x3f], al
jmp 0x140001c55
mov rcx, qword [rsi + 0x78]
mov ebp, r12d
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140001c3c
movzx r9d, word [rsi + 0x2a]
mov r8d, Ordinal_69
cmp r9d, r8d
jb 0x140001c2b
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], r12
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov ebp, eax
test eax, eax
jne 0x140001c4b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [rsi + 8]
lea rcx, str.ERROR_kull_m_busylight_device_send_raw____device__u__WriteFile__0x_08x__n
mov r8d, eax
call fcn.14000bf0c
jmp 0x140001c4b
mov edx, dword [rsi + 8]
lea rcx, str.ERROR_kull_m_busylight_device_send_raw____device__u__Size_is_not_valide__siz___u__max___u__n
call fcn.14000bf0c
jmp 0x140001c4b
mov edx, dword [rsi + 8]
lea rcx, str.ERROR_kull_m_busylight_device_send_raw____device__u__Invalid_Device_Busy_Handle_n
call fcn.14000bf0c
and edi, ebp
test r15d, r15d
je 0x140001c5e
mov rsi, qword [rsi]
test rsi, rsi
jne 0x140001bd7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x140001c6c
mov edi, r12d
mov rbx, qword [rsp + 0x60]
mov eax, edi
mov rdi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop r12
ret
Function at 0x140001c90
Capabilities:
Terminate thread

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rdi
sub rsp, 0x20
and dword [rax + 8], 0
mov esi, edx
mov dword [rax + 0xc], 0x80000000
mov rdi, rcx
mov rbx, rcx
test rcx, rcx
je 0x140001ce7
and dword [rbx + 0x90], 0
mov rcx, qword [rbx + 0x98]
test rcx, rcx
je 0x140001cdb
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TerminateThread]
and qword [rbx + 0x98], 0
test esi, esi
je 0x140001ce7
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140001cb8
mov r9d, esi
lea rdx, [rsp + 0x30]
mov r8d, 1
mov rcx, rdi
call fcn.140001ab4
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret

Function at 0x1400021a8
Capabilities:
Get common file path

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x70
mov rbp, rcx
mov edx, 0x338
mov ecx, 0x40
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rbx, rax
test rax, rax
je 0x14000236b
and dword [rbx + 0x1c], 0
lea r14, [rax + 8]
and dword [rbx + 0x20], 0
mov eax, 0x4000000
mov rcx, r14
mov dword [r14], eax
mov r8, rbp
mov dword [rbx + 0xc], eax
xor edx, edx
mov word [rbx + 0x28], SQLGetData
call fcn.140002034
test eax, eax
je 0x14000234d
lea rsi, [rbx + 0x22a]
mov edi, 0x100
mov rdx, rsi
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
test eax, eax
je 0x140002359
mov edx, edi
mov rax, rsi
cmp byte [rax], 0
je 0x140002244
inc rax
sub rdx, 1
jne 0x140002236
mov rcx, rdi
mov rax, rdx
sub rcx, rdx
neg rax
sbb r8, r8
and r8, rcx
test rdx, rdx
je 0x140002359
lea rcx, [r8 + rsi]
sub rdi, r8
je 0x140002294
lea rdx, [0x140105368]
mov eax, 0x7ffffffe
sub rdx, rcx
test rax, rax
je 0x140002294
mov r8b, byte [rdx + rcx]
test r8b, r8b
je 0x140002294
mov byte [rcx], r8b
dec rax
inc rcx
sub rdi, 1
jne 0x140002277
test rdi, rdi
lea rax, [rcx - 1]
cmovne rax, rcx
mov byte [rax], 0
je 0x140002359
mov qword [rsp + 0x60], rbp
lea rax, [0x140001f54]
mov qword [rsp + 0x58], r14
lea rdi, [rbx + 0x32c]
mov qword [rsp + 0x50], rax
lea r9, [0x140001db8]
lea rax, [0x140001f20]
mov rcx, rdi
mov qword [rsp + 0x48], rax
lea r8, [0x140001da8]
lea rax, [0x140001ee8]
mov qword [rsp + 0x40], rax
lea rdx, [fcn.140001da4]
lea rax, [fcn.140001eb4]
mov qword [rsp + 0x38], rax
lea rax, [0x140001e7c]
mov qword [rsp + 0x30], rax
lea rax, [0x140001e44]
mov qword [rsp + 0x28], rax
lea rax, [fcn.140001dc0]
mov qword [rsp + 0x20], rax
call qword [sym.imp.Cabinet.dll_FCICreate]
mov qword [rbx], rax
test rax, rax
jne 0x140002359
mov ecx, dword [rdi]
call fcn.14000212c
mov edx, dword [rdi]
lea rcx, str.ERROR_kull_m_cabinet_create___FCICreate_failed_with_error_code__d:__S_n
mov r8, rax
call fcn.14000bf0c
jmp 0x140002359
lea rcx, str.ERROR_kull_m_cabinet_create___Failed_to_initialize_the_cabinet_information_structure._n
call fcn.14000bf0c
cmp qword [rbx], 0
jne 0x14000236b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rbx, rax
lea r11, [rsp + 0x70]
mov rax, rbx
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret