joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140002640
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rdx
lea r8, [rcx + 0x170]
mov rbx, rcx
mov edx, 0x40b
mov rcx, rdi
call fcn.140029338
lea r8, [rbx + 0xd38]
mov edx, 0x407
mov rcx, rdi
call fcn.140029988
lea r8, [rbx + 0xd3c]
mov edx, 0x408
mov rcx, rdi
call fcn.140029988
lea r8, [rbx + 0xd40]
mov edx, 0x409
mov rcx, rdi
call fcn.140029988
lea r8, [rbx + 0xd44]
mov edx, 0x40a
mov rcx, rdi
call fcn.140029988
lea r8, [rbx + 0xd48]
mov edx, 0x40b
mov rcx, rdi
call fcn.1400299e8
lea r8, [rbx + 0xd4c]
mov edx, 0x40c
mov rcx, rdi
call fcn.1400299e8
lea r8, [rbx + 0xd50]
mov edx, 0x40c
mov rcx, rdi
call fcn.140029338
lea r8, [rbx + 0x1918]
mov edx, 0x404
mov rcx, rdi
call fcn.140029988
lea r8, [rbx + 0x1af0]
mov edx, 0x40d
mov rcx, rdi
call fcn.140029338
lea r8, [rbx + 0x1920]
mov edx, 0x406
mov rcx, rdi
call fcn.140029338
lea r8, [rbx + 0x1a08]
mov edx, 0x405
mov rcx, rdi
call fcn.140029338
lea r8, [rbx + 0x1be4]
mov edx, 0x405
mov rcx, rdi
call fcn.14002991c
lea r8, [rbx + 0x1be8]
mov edx, 0x406
mov rcx, rdi
call fcn.14002991c
lea r8, [rbx + 0x1bf0]
mov edx, 0x402
mov rcx, rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.140029a18

Function at 0x140002da0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov edi, r8d
mov rsi, rdx
mov rbp, rcx
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x140002dd3
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rcx, rax
mov qword [rsp + 0x30], rbx
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x140002e1a
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, eax
add rcx, rbx
and edi, 0xf
jbe 0x140002e15
nop
cmp rbx, rcx
jae 0x140002e1a
movzx eax, word [rbx]
lea rbx, [rbx + rax*2]
add rbx, 2
add edi, 0xffffffff
jne 0x140002e00
cmp rbx, rcx
jb 0x140002e1e
xor eax, eax
jmp 0x140002e2a
xor eax, eax
cmp word [rbx], ax
cmove rbx, rax
mov rax, rbx
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140006cf0
Capabilities:
Create http request
Read data from internet
Receive data

Disassembly:
push rbp
push rsi
push rdi
mov eax, 0x1090
call fcn.1401cfb40
sub rsp, rax
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x10c0], rbx
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rsp + 0x1080], rax
mov rdi, rdx
mov rbx, rcx
mov qword [rsp + 0x58], rcx
xor ebp, ebp
mov dword [rsp + 0x30], ebp
mov qword [rcx], rbp
mov qword [rcx + 8], rbp
mov qword [rcx + 0x10], rbp
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x20], ebp
xor r9d, r9d
xor r8d, r8d
lea edx, [rbp + 1]
lea rcx, str.MyApp
call qword [sym.imp.WININET.dll_InternetOpenW]
mov rsi, rax
test rax, rax
jne 0x140006dc0
lea rax, vtable.std::exception.0
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
lea rax, str.InternetOpen_failed
mov qword [rsp + 0x68], rax
mov byte [rsp + 0x70], 1
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x68]
call fcn.1401d3838
lea rax, vtable.std::runtime_error.0
mov qword [rsp + 0x38], rax
lea rdx, [0x1402cb6e0]
lea rcx, [rsp + 0x38]
call fcn.1401d41ec
int3
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x80000000
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetOpenUrlW]
mov rdi, rax
test rax, rax
jne 0x140006e13
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
lea rdx, str.InternetOpenUrl_failed
lea rcx, [rsp + 0x38]
call fcn.140005af0
lea rdx, [0x1402cb6e0]
lea rcx, [rsp + 0x38]
call fcn.1401d41ec
int3
lea r9, [rsp + 0x60]
mov r8d, 0x1000
lea rdx, [rsp + 0x80]
mov rcx, rdi
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x140006e74
mov ecx, dword [rsp + 0x60]
lea r9, [rsp + 0x80]
add r9, rcx
lea r8, [rsp + 0x80]
mov rdx, qword [rbx + 8]
mov rcx, rbx
call fcn.14000b030
cmp dword [rsp + 0x60], 0
ja 0x140006e13
mov rcx, rdi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rax, rbx
jmp 0x140006ea9
mov rcx, rdi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
lea rdx, str.InternetReadFile_failed
lea rcx, [rsp + 0x38]
call fcn.140005af0
lea rdx, [0x1402cb6e0]
lea rcx, [rsp + 0x38]
call fcn.1401d41ec
nop
mov rcx, qword [rsp + 0x1080]
xor rcx, rsp
call fcn.1401cf0f0
mov rbx, qword [rsp + 0x10c0]
add rsp, 0x1090
pop rdi
pop rsi
pop rbp
ret
Function at 0x140006ed0
Capabilities:
Enumerate processes

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x2d0
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rsp + 0x2c0], rax
mov rbx, rcx
mov rdx, qword [rcx + 0x18]
cmp rdx, 0x10
jb 0x140006f12
mov rcx, qword [rcx]
mov r8, qword [rbx + 0x10]
add r8, rcx
cmp rdx, 0x10
jb 0x140006f24
mov rdx, qword [rbx]
jmp 0x140006f27
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.14000aad0
nop
xor edx, edx
mov r8d, 0x234
lea rcx, [rsp + 0x84]
call fcn.1401d3a10
mov dword [rsp + 0x80], 0x238
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x140006fbc
lea rax, vtable.std::exception.0
mov qword [rsp + 0x20], rax
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rax
lea rax, [0x14027e1d0]
mov qword [rsp + 0x40], rax
mov byte [rsp + 0x48], 1
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x40]
call fcn.1401d3838
lea rax, vtable.std::runtime_error.0
mov qword [rsp + 0x20], rax
lea rdx, [0x1402cb6e0]
lea rcx, [rsp + 0x20]
call fcn.1401d41ec
int3
lea rdx, [rsp + 0x80]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x14000704f
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x60]
nop dword [rax + rax]
lea rax, [rsp + 0x60]
cmp rsi, 8
cmovae rax, rbp
lea r8, [rsp + 0xac]
sub r8, rax
nop dword [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x140007014
add rax, 2
test ecx, ecx
jne 0x140007000
mov rcx, rdi
test edx, edx
je 0x14000702f
lea rdx, [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
je 0x14000704f
jmp 0x140006fe0
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ebx, dword [rsp + 0x88]
xor r8d, r8d
mov dl, 1
lea rcx, [rsp + 0x60]
call fcn.140009110
mov eax, ebx
jmp 0x140007085
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8, rbx
lea rcx, [rsp + 0x40]
call fcn.14000ab60
nop
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.140005a80
lea rdx, [0x1402cb6e0]
lea rcx, [rsp + 0x20]
call fcn.1401d41ec
nop
mov rcx, qword [rsp + 0x2c0]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0x2d0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1400070b0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 1], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov rsi, rcx
xor r14d, r14d
mov dword [rbp - 9], r14d
movdqa xmm0, xmmword [0x1402835b0]
movdqu xmmword [rbp + 0x1f], xmm0
mov word [rbp + 0x2f], 0x36
xor eax, eax
mov qword [rbp + 7], rax
mov qword [rbp + 0xf], rax
mov qword [rbp + 0x17], rax
lea rcx, [rbp + 7]
call fcn.140006990
nop
mov qword [rbp - 0x19], r14
mov qword [rbp - 0x11], r14
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x29]
call fcn.140009270
cmp byte [rbp + 0x1f], r14b
jne 0x140007136
mov r8d, r14d
jmp 0x14000714a
lea rax, [rbp + 0x1f]
or r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x140007140
lea rdx, [rbp + 0x1f]
lea rcx, [rbp - 0x29]
call fcn.1400094a0
mov r11, qword [rbp - 0x19]
mov r9, r14
mov r8, qword [rbp + 0xf]
mov r10, qword [rbp + 7]
sub r8, r10
je 0x1400071a7
nop dword [rax + rax]
lea rcx, [rbp - 0x29]
cmp qword [rbp - 0x11], 0x10
cmovae rcx, qword [rbp - 0x29]
xor edx, edx
mov rax, r9
div r11
movzx eax, byte [rdx + rcx]
add al, r9b
add al, r8b
xor byte [r10 + r9], al
inc r9
mov r8, qword [rbp + 0xf]
mov r10, qword [rbp + 7]
sub r8, r10
cmp r9, r8
jb 0x140007170
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x29]
call fcn.140009270
mov rbx, qword [rbp + 0xf]
mov rdi, qword [rbp + 7]
sub rbx, rdi
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], r14
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call fcn.140009110
shr rbx, 1
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call fcn.140009190
nop
lea rcx, [rbp + 7]
call fcn.140009010
mov rax, rsi
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x140007220
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov qword [rbp - 0x19], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov dword [rbp + 0x2f], 0x690077
mov dword [rbp + 0x33], 0x69006e
mov dword [rbp + 0x37], 0x65006e
mov dword [rbp + 0x3b], 0x2e0074
mov dword [rbp + 0x3f], 0x6c0064
mov dword [rbp + 0x43], VarBstrFromDisp
xor ebx, ebx
mov dword [rbp + 0xf], 0x6e0049
mov dword [rbp + 0x13], 0x650074
mov dword [rbp + 0x17], 0x6e0072
mov dword [rbp + 0x1b], 0x740065
mov dword [rbp + 0x1f], 0x70004f
mov dword [rbp + 0x23], 0x6e0065
mov dword [rbp + 0x27], 0x57
lea rcx, [rbp + 0x2f]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
je 0x14000736d
mov qword [rbp - 0x29], rbx
mov qword [rbp - 0x21], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x39]
call fcn.140009110
cmp word [rbp + 0xf], bx
jne 0x1400072e1
mov r8, rbx
jmp 0x1400072fa
lea rax, [rbp + 0xf]
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x1400072f0
lea rdx, [rbp + 0xf]
lea rcx, [rbp - 0x39]
call fcn.140009190
nop
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x11]
call fcn.1400068b0
cmp qword [rax + 0x18], 0x10
jb 0x14000731f
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x11]
call fcn.140009270
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x39]
call fcn.140009110
test rdi, rdi
je 0x14000736a
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
lea rcx, str.MyApp
call rdi
mov rbx, rax
mov rax, rbx
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret
Function at 0x140007390
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov qword [rbp - 0x29], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov r14, rdx
mov rsi, rcx
mov dword [rbp + 0x27], 0x690077
mov dword [rbp + 0x2b], 0x69006e
mov dword [rbp + 0x2f], 0x65006e
mov dword [rbp + 0x33], 0x2e0074
mov dword [rbp + 0x37], 0x6c0064
mov dword [rbp + 0x3b], VarBstrFromDisp
xor ebx, ebx
mov dword [rbp - 1], 0x6e0049
mov dword [rbp + 3], 0x650074
mov dword [rbp + 7], 0x6e0072
mov dword [rbp + 0xb], 0x740065
mov dword [rbp + 0xf], 0x70004f
mov dword [rbp + 0x13], 0x6e0065
mov dword [rbp + 0x17], 0x720055
mov dword [rbp + 0x1b], 0x57006c
mov word [rbp + 0x1f], bx
lea rcx, [rbp + 0x27]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdi, rax
test rax, rax
je 0x1400074f1
mov qword [rbp - 0x39], rbx
mov qword [rbp - 0x31], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x49]
call fcn.140009110
cmp word [rbp - 1], bx
jne 0x140007465
mov r8, rbx
jmp 0x14000747a
lea rax, [rbp - 1]
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x140007470
lea rdx, [rbp - 1]
lea rcx, [rbp - 0x49]
call fcn.140009190
nop
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x21]
call fcn.1400068b0
cmp qword [rax + 0x18], 0x10
jb 0x14000749f
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x21]
call fcn.140009270
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x49]
call fcn.140009110
test rdi, rdi
je 0x1400074ee
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], 0x80000000
xor r9d, r9d
xor r8d, r8d
mov rdx, r14
mov rcx, rsi
call rdi
mov rbx, rax
mov rax, rbx
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x140007520
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
mov qword [rbp - 0x19], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov rsi, rcx
mov dword [rbp + 0x37], 0x690077
mov dword [rbp + 0x3b], 0x69006e
mov dword [rbp + 0x3f], 0x65006e
mov dword [rbp + 0x43], 0x2e0074
mov dword [rbp + 0x47], 0x6c0064
mov dword [rbp + 0x4b], VarBstrFromDisp
xor ebx, ebx
mov dword [rbp + 0xf], 0x6e0049
mov dword [rbp + 0x13], 0x650074
mov dword [rbp + 0x17], 0x6e0072
mov dword [rbp + 0x1b], 0x740065
mov dword [rbp + 0x1f], 0x6c0043
mov dword [rbp + 0x23], 0x73006f
mov dword [rbp + 0x27], 0x480065
mov dword [rbp + 0x2b], 0x6e0061
mov dword [rbp + 0x2f], 0x6c0064
mov dword [rbp + 0x33], 0x65
lea rcx, [rbp + 0x37]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdi, rax
test rax, rax
je 0x140007671
mov qword [rbp - 0x29], rbx
mov qword [rbp - 0x21], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x39]
call fcn.140009110
cmp word [rbp + 0xf], bx
jne 0x1400075fd
mov r8, rbx
jmp 0x14000760f
lea rax, [rbp + 0xf]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], bx
jne 0x140007605
lea rdx, [rbp + 0xf]
lea rcx, [rbp - 0x39]
call fcn.140009190
nop
lea rdx, [rbp - 0x39]
lea rcx, [rbp - 0x11]
call fcn.1400068b0
cmp qword [rax + 0x18], 0x10
jb 0x140007634
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x11]
call fcn.140009270
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x39]
call fcn.140009110
test rdi, rdi
je 0x14000766c
mov rcx, rsi
call rdi
mov ebx, eax
test ebx, ebx
setne al
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x1400076a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov qword [rsp + 0xf0], rbx
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov r15, r9
mov r14, rdx
mov rsi, rcx
mov dword [rbp + 0x17], 0x690077
mov dword [rbp + 0x1b], 0x69006e
mov dword [rbp + 0x1f], 0x65006e
mov dword [rbp + 0x23], 0x2e0074
mov dword [rbp + 0x27], 0x6c0064
mov dword [rbp + 0x2b], VarBstrFromDisp
xor ebx, ebx
mov dword [rbp - 0x11], 0x6e0049
mov dword [rbp - 0xd], 0x650074
mov dword [rbp - 9], 0x6e0072
mov dword [rbp - 5], 0x740065
mov dword [rbp - 1], 0x650052
mov dword [rbp + 3], 0x640061
mov dword [rbp + 7], 0x690046
mov dword [rbp + 0xb], 0x65006c
mov word [rbp + 0xf], bx
lea rcx, [rbp + 0x17]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rdi, rax
test rax, rax
je 0x1400077fa
mov qword [rbp - 0x49], rbx
mov qword [rbp - 0x41], rbx
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x59]
call fcn.140009110
cmp word [rbp - 0x11], bx
jne 0x14000777a
mov r8, rbx
jmp 0x14000778c
lea rax, [rbp - 0x11]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], bx
jne 0x140007782
lea rdx, [rbp - 0x11]
lea rcx, [rbp - 0x59]
call fcn.140009190
nop
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x31]
call fcn.1400068b0
cmp qword [rax + 0x18], 0x10
jb 0x1400077b1
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x31]
call fcn.140009270
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x59]
call fcn.140009110
test rdi, rdi
je 0x1400077f5
mov r9, r15
mov r8d, 0x1000
mov rdx, r14
mov rcx, rsi
call rdi
mov ebx, eax
test ebx, ebx
setne al
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1401cf0f0
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret

Function at 0x140007a50
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x60
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov rdi, rcx
mov dword [rsp + 0x40], 0x680053
lea rcx, [rsp + 0x40]
mov dword [rsp + 0x44], 0x6c0065
mov dword [rsp + 0x48], 0x33006c
xor esi, esi
mov dword [rsp + 0x4c], 0x2e0032
mov dword [rsp + 0x50], 0x6c0064
mov dword [rsp + 0x54], VarBstrFromDisp
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rbx, rax
test rax, rax
je 0x140007b0a
lea rdx, [0x14027e1f8]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140007b01
mov dword [rsp + 0x28], 1
lea rdx, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x20], rsi
mov r8, rdi
mov dword [rsp + 0x30], 0x70006f
xor ecx, ecx
mov dword [rsp + 0x34], 0x6e0065
mov word [rsp + 0x38], si
call rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x140008590
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 9], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rbp + 0x37], rax
mov esi, edx
mov rbx, rcx
cmp edx, 0xffffffff
jne 0x1400085d6
xor eax, eax
cmp edx, edx
cmovne eax, edx
jmp 0x14000879e
mov rax, qword [rcx + 0x40]
mov rdx, qword [rax]
test rdx, rdx
je 0x140008610
mov rax, qword [rcx + 0x58]
movsxd r8, dword [rax]
lea rcx, [rdx + r8]
cmp rdx, rcx
jae 0x140008610
lea ecx, [r8 - 1]
mov dword [rax], ecx
mov rdx, qword [rbx + 0x40]
mov r8, qword [rdx]
lea rcx, [r8 + 1]
mov qword [rdx], rcx
mov byte [r8], sil
mov eax, esi
jmp 0x14000879e
cmp qword [rbx + 0x80], 0
jne 0x140008622
or eax, 0xffffffff
jmp 0x14000879e
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x14000864f
mov rdx, qword [rbx + 0x90]
mov rcx, qword [rbx + 0x88]
mov qword [r8], rcx
mov rax, qword [rbx + 0x38]
mov qword [rax], rcx
sub edx, ecx
mov rax, qword [rbx + 0x50]
mov dword [rax], edx
cmp qword [rbx + 0x68], 0
jne 0x140008673
movsx ecx, sil
mov rdx, qword [rbx + 0x80]
call fcn.1401d8718
or ebx, 0xffffffff
cmp eax, ebx
cmovne ebx, esi
jmp 0x14000879c
mov byte [rbp + 0xf], sil
xor r8d, r8d
lea edx, [r8 + 8]
lea rcx, [rbp + 0x17]
call fcn.140007c10
nop
mov r10, qword [rbp + 0x17]
mov r9, qword [rbp + 0x2f]
lea rdx, [rbp + 0x17]
cmp r9, 0x10
cmovae rdx, r10
lea r8, [rbp + 0x17]
cmovae r8, r10
mov rcx, qword [rbx + 0x68]
mov r10, qword [rcx]
add rdx, qword [rbp + 0x27]
lea rax, [rbp - 1]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r8
lea rax, [rbp + 7]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x10]
lea r8, [rbp + 0xf]
lea rdx, [rbx + 0x74]
call qword [r10 + 0x38]
test eax, eax
js 0x14000878b
cmp eax, 1
jg 0x14000876c
lea rax, [rbp + 0x17]
mov r10, qword [rbp + 0x17]
mov r9, qword [rbp + 0x2f]
cmp r9, 0x10
cmovae rax, r10
mov rdi, qword [rbp - 1]
sub rdi, rax
je 0x140008736
lea rcx, [rbp + 0x17]
cmp r9, 0x10
cmovae rcx, r10
mov r9, qword [rbx + 0x80]
mov r8, rdi
mov edx, 1
call fcn.1401d9490
cmp rdi, rax
jne 0x14000878b
mov r9, qword [rbp + 0x2f]
mov r10, qword [rbp + 0x17]
mov byte [rbx + 0x71], 1
lea rax, [rbp + 0xf]
cmp qword [rbp + 7], rax
jne 0x140008768
test rdi, rdi
jne 0x140008690
cmp qword [rbp + 0x27], 0x20
jae 0x14000878b
xor r8d, r8d
lea edx, [rdi + 8]
lea rcx, [rbp + 0x17]
call fcn.140009670
jmp 0x140008688
mov ebx, esi
jmp 0x14000878e
cmp eax, 3
jne 0x14000878b
movsx ecx, byte [rbp + 0xf]
mov rdx, qword [rbx + 0x80]
call fcn.1401d8718
or ebx, 0xffffffff
cmp eax, ebx
cmovne ebx, esi
jmp 0x14000878e
or ebx, 0xffffffff
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 0x17]
call fcn.140009270
mov eax, ebx
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x140009a60
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x70
mov qword [rax - 0x48], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x1402d18f8]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, rcx
cmp qword [rcx + 0x68], 0
je 0x140009baa
cmp byte [rcx + 0x71], 0
je 0x140009baa
mov rax, qword [rcx]
or edx, 0xffffffff
call qword [rax + 0x18]
cmp eax, 0xffffffff
jne 0x140009ab4
xor al, al
jmp 0x140009bac
xor r8d, r8d
lea edx, [r8 + 8]
lea rcx, [rsp + 0x40]
call fcn.140007c10
nop
mov r10, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
lea rdx, [rsp + 0x40]
cmp r9, 0x10
cmovae rdx, r10
lea r8, [rsp + 0x40]
cmovae r8, r10
mov rcx, qword [rdi + 0x68]
mov r10, qword [rcx]
mov r9, qword [rsp + 0x50]
add r9, rdx
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea rdx, [rdi + 0x74]
call qword [r10 + 0x40]
test eax, eax
je 0x140009b12
sub eax, 1
jne 0x140009b8b
jmp 0x140009b16
mov byte [rdi + 0x71], 0
lea rax, [rsp + 0x40]
mov r10, qword [rsp + 0x40]
mov r9, qword [rsp + 0x58]
cmp r9, 0x10
cmovae rax, r10
mov rbx, qword [rsp + 0x38]
sub rbx, rax
je 0x140009b67
lea rcx, [rsp + 0x40]
cmp r9, 0x10
cmovae rcx, r10
mov r9, qword [rdi + 0x80]
mov r8, rbx
mov edx, 1
call fcn.1401d9490
cmp rbx, rax
jne 0x140009b90
mov r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0x40]
cmp byte [rdi + 0x71], 0
je 0x140009b94
test rbx, rbx
jne 0x140009ad0
xor r8d, r8d
lea edx, [rbx + 8]
lea rcx, [rsp + 0x40]
call fcn.140009670
jmp 0x140009ac6
sub eax, 2
je 0x140009b94
xor bl, bl
jmp 0x140009b96
mov bl, 1
xor r8d, r8d
mov dl, 1
lea rcx, [rsp + 0x40]
call fcn.140009270
movzx eax, bl
jmp 0x140009bac
mov al, 1
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1401cf0f0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret