joyce8/EMBER2024-capa huggingface dataset:
Function at 0x15583f0
Capabilities:
Terminate process

Disassembly:
cld
pop r11
jmp 0x15583fd
inc rsi
mov byte [rdi], dl
inc rdi
mov dl, byte [rsi]
add ebx, ebx
jne 0x155840d
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jb 0x15583f5
lea eax, [rcx + 1]
jmp 0x155841b
dec eax
call r11
adc eax, eax
call r11
adc eax, eax
add ebx, ebx
jne 0x155842e
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
mov dl, byte [rsi]
jae 0x1558414
sub eax, 3
jb 0x155844e
shl eax, 8
movzx edx, dl
or eax, edx
inc rsi
xor eax, 0xffffffff
je 0x155849d
sar eax, 1
movsxd rbp, eax
jb 0x1558484
jmp 0x155845c
add ebx, ebx
jne 0x155845a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x1558484
inc ecx
add ebx, ebx
jne 0x155846a
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jb 0x1558484
call r11
adc ecx, ecx
add ebx, ebx
jne 0x155847d
mov ebx, dword [rsi]
sub rsi, 0xfffffffffffffffc
adc ebx, ebx
jae 0x155846c
add ecx, 2
jmp 0x1558489
call r11
adc ecx, ecx
cmp rbp, 0xfffffffffffffb00
adc ecx, 2
call fcn.015583b2
jmp 0x15583fd
pop rsi
mov rdi, rsi
push rsi
mov rdi, rsi
mov rsi, 0x470e00
mov dl, 0xae
push rbx
push rdi
lea rcx, [rdi + rsi - 3]
pop rsi
push rsi
pop rbx
jmp 0x15584e9
cmp rsi, rcx
jae 0x15584f1
push rsi
pop rsi
lodsb al, byte [rsi]
cmp al, 0x80
jb 0x15584d0
cmp al, 0x8f
ja 0x15584d0
cmp byte [rsi - 2], 0xf
je 0x15584d6
sub al, 0xe8
cmp al, 1
ja 0x15584ba
cmp rsi, rcx
jae 0x15584f1
push rsi
lodsd eax, dword [rsi]
sub al, dl
jne 0x15584c0
pop rdi
bswap eax
sub eax, edi
add eax, ebx
stosd dword [rdi], eax
cmp rsi, rcx
jae 0x15584f1
lodsb al, byte [rsi]
jmp 0x15584d0
pop rbx
pop rsi
sub rsp, 0x28
lea rdi, [rsi + 0x114d000]
mov eax, dword [rdi]
or eax, eax
je 0x155854e
mov ebx, dword [rdi + 4]
lea rcx, [rax + rsi + 0x115825c]
add rbx, rsi
add rdi, 8
call qword [sym.imp.KERNEL32.DLL_LoadLibraryA]
xchg rbp, rax
mov al, byte [rdi]
inc rdi
or al, al
je 0x15584fe
mov rcx, rdi
mov rdx, rdi
dec eax
repne scasb al, byte [rdi]
mov rcx, rbp
call qword [sym.imp.KERNEL32.DLL_GetProcAddress]
or rax, rax
je 0x1558548
mov qword [rbx], rax
add rbx, 8
jmp 0x155851e
jmp qword [sym.imp.KERNEL32.DLL_ExitProcess]
add rsp, 0x28
add rdi, 4
lea rbx, [rsi - 4]
xor eax, eax
mov al, byte [rdi]
inc rdi
or eax, eax
je 0x1558592
cmp al, 0xef
ja 0x155857a
add rbx, rax
mov rax, qword [rbx]
bswap rax
add rax, rsi
mov qword [rbx], rax
jmp 0x155855a
and al, 0xf
shl eax, 0x10
mov ax, word [rdi]
add rdi, 2
or eax, eax
jne 0x1558569
mov eax, dword [rdi]
add rdi, 4
jmp 0x1558569
mov rbp, qword [sym.imp.KERNEL32.DLL_VirtualProtect]
lea rdi, [rsi - 0x1000]
mov ebx, 0x1000
push rax
mov r9, rsp
mov r8d, 4
mov rdx, rbx
mov rcx, rdi
sub rsp, 0x20
call rbp
lea rax, [rdi + 0x1af]
and byte [rax], 0x7f
and byte [rax + 0x28], 0x7f
lea r9, [rsp + 0x20]
mov r8, qword [r9]
mov rdx, rbx
mov rcx, rdi
call rbp
add rsp, 0x28
pop rbp
pop rdi
pop rsi
pop rbx
lea rax, [rsp - 0x80]
push 0
cmp rsp, rax
jne 0x15585e6
sub rsp, 0xffffffffffffff80
jmp 0x45af20
Function at 0x14000c460
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
sub rsp, 0x60
lea rax, [0x140360b10]
mov qword [rsp + 0x50], rax
lea rdx, str.PureBasic.exe_shellopencommand
mov qword [rsp + 0x58], rdx
movsxd rcx, ecx
mov rax, qword [0x14024dde0]
mov qword [rax], rcx
lea rcx, [rsp + 0x58]
call fcn.140154030
lea rcx, [rsp + 0x50]
mov rdx, qword [rsp + 0x50]
call fcn.140154030
mov dword [rsp + 0x3c], 0
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x44], 0
mov qword [rsp + 0x48], 0
mov dword [0x140360a18], 0x800008
mov dword [0x140360a18], 0x800009
mov dword [rsp + 0x3c], 0
mov dword [0x140360a18], 0x800009
mov dword [rsp + 0x40], 0
mov dword [0x140360a18], 0x800009
mov dword [rsp + 0x44], 0x400
mov dword [0x140360a18], 0x800009
movsxd rcx, dword [rsp + 0x44]
call fcn.1401524a0
mov rbx, rax
mov dword [0x140360a18], 0x80000a
test eax, eax
jne 0x14000c580
mov dword [0x140360a18], 0x800015
mov dword [0x140360a18], 0x800016
call fcn.140153ec0
lea rcx, [0x14021d170]
call fcn.140154200
call fcn.140153fd0
mov rcx, qword [rsp + 0x50]
call fcn.1401540a0
mov rcx, qword [rsp + 0x58]
call fcn.1401540a0
mov rcx, qword [rsp + 0x48]
call fcn.1401540a0
nop
add rsp, 0x60
pop rbx
ret
mov dword [0x140360a18], 0x80000b
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rdx, qword [rsp + 0x58]
mov rcx, 0xffffffff80000000
call sub.ADVAPI32.dll_RegOpenKeyExW
movsxd rbx, ebx
test rax, rax
jne 0x14000c5d2
mov dword [0x140360a18], 0x80000c
mov eax, dword [rsp + 0x3c]
test eax, eax
jne 0x14000c618
mov dword [0x140360a18], 0x800011
mov dword [0x140360a18], 0x800012
mov dword [0x140360a18], 0x800013
mov rcx, rbx
call fcn.140152480
mov dword [0x140360a18], 0x800014
call fcn.140153ec0
mov rcx, qword [rsp + 0x48]
call fcn.140154200
call fcn.140153fd0
jmp 0x14000c553
mov dword [0x140360a18], 0x80000d
movsxd rcx, dword [rsp + 0x3c]
lea rax, [rsp + 0x44]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x40]
xor r8d, r8d
mov rdx, qword [rsp + 0x50]
call sub.ADVAPI32.dll_RegQueryValueExW
test rax, rax
je 0x14000c670
mov dword [0x140360a18], 0x80000f
mov dword [0x140360a18], 0x800010
movsxd rcx, dword [rsp + 0x3c]
call sub.ADVAPI32.dll_RegCloseKey
jmp 0x14000c5c8
mov dword [0x140360a18], 0x80000e
call fcn.140153ec0
call fcn.140153ec0
call fcn.140153ef0
mov edx, eax
mov rcx, rbx
call fcn.140152620
call fcn.140153ef0
lea rcx, [rsp + 0x48]
mov edx, eax
call fcn.1401540d0
jmp 0x14000c64d
Function at 0x14000c6b0
Capabilities:
Get geographical location

Disassembly:
push rbx
sub rsp, 0x30
movsxd rcx, ecx
mov rax, qword [0x14024dde0]
mov qword [rax], rcx
mov qword [rsp + 0x28], 0
mov dword [0x140360a18], 0xf00072
mov dword [0x140360a18], 0xf00075
xor r9d, r9d
xor r8d, r8d
mov edx, 4
mov ecx, 0x400
call sub.KERNEL32.dll_GetLocaleInfoW
mov rbx, rax
mov dword [0x140360a18], 0xf00076
call fcn.140153ec0
call fcn.140153ec0
call fcn.140153ef0
mov edx, eax
mov rcx, rbx
call fcn.1401506a0
call fcn.140153ef0
lea rcx, [rsp + 0x28]
mov edx, eax
call fcn.1401540d0
mov dword [0x140360a18], 0xf00077
mov r9, rbx
mov r8, qword [rsp + 0x28]
mov edx, 4
mov ecx, 0x400
call sub.KERNEL32.dll_GetLocaleInfoW
test rax, rax
jne 0x14000c790
mov dword [0x140360a18], 0xf00079
mov dword [0x140360a18], 0xf0007a
call fcn.140153ec0
lea rcx, [0x14021d170]
call fcn.140154200
call fcn.140153fd0
mov rcx, qword [rsp + 0x28]
call fcn.1401540a0
nop
add rsp, 0x30
pop rbx
ret
mov dword [0x140360a18], 0xf00078
call fcn.140153ec0
mov rcx, qword [rsp + 0x28]
call fcn.140154200
call fcn.140153fd0
jmp 0x14000c77b
Function at 0x1400da330
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x28
call fcn.1400d8eb0
mov rcx, qword [0x140360a30]
call sub.KERNEL32.dll_HeapDestroy
movsxd rcx, dword [0x140360a38]
add rsp, 0x28
jmp sub.KERNEL32.dll_ExitProcess
Function at 0x1400e59e0
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
sub rsp, 0xc8
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rdi
lea rcx, [rax - 0x78]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoA]
nop
cmp word [0x140000000], 0x5a4d
je 0x1400e5a1d
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
lea rdi, [0x140000000]
jmp 0x1400e5aab
movsxd rax, dword [0x14000003c]
lea rdi, [0x140000000]
add rax, rdi
cmp dword [rax], 0x4550
je 0x1400e5a41
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x1400e5aab
movzx ecx, word [rax + 0x18]
cmp ecx, 0x10b
je 0x1400e5a88
cmp ecx, 0x20b
je 0x1400e5a60
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x1400e5aab
cmp dword [rax + 0x84], 0xe
ja 0x1400e5a74
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x1400e5aab
xor ebx, ebx
cmp dword [rax + 0xf8], ebx
setne bl
mov dword [rsp + 0xd0], ebx
jmp 0x1400e5aab
cmp dword [rax + 0x74], 0xe
ja 0x1400e5a99
xor ebx, ebx
mov dword [rsp + 0xd0], ebx
jmp 0x1400e5aab
xor ebx, ebx
cmp dword [rax + 0xe8], ebx
setne bl
mov dword [rsp + 0xd0], ebx
mov ecx, 2
call qword [sym.imp.msvcrt.dll___set_app_type]
mov qword [0x1403683c0], 0xffffffffffffffff
mov qword [0x1403683e0], 0xffffffffffffffff
mov rcx, qword [sym.imp.msvcrt.dll__fmode]
mov eax, dword [0x140360b70]
mov dword [rcx], eax
mov rcx, qword [sym.imp.msvcrt.dll__commode]
mov eax, dword [0x140360b74]
mov dword [rcx], eax
call fcn.1400e5cd0
cmp dword [0x140368400], 0
jne 0x1400e5b05
lea rcx, [0x1400e5ce0]
call qword [sym.imp.msvcrt.dll___setusermatherr]
lea rdx, [0x14024dfd8]
lea rcx, [0x14024dfd0]
call sub.msvcrt.dll__initterm
mov r11d, dword [0x140360b78]
mov dword [rsp + 0xd8], r11d
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x20], rax
mov r9d, dword [0x140360b7c]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x3c]
call qword [sym.imp.msvcrt.dll___getmainargs]
lea rdx, [0x14024dfc8]
lea rcx, [0x14024dfc0]
call sub.msvcrt.dll__initterm
mov r11, qword [sym.imp.msvcrt.dll__acmdln]
mov r8, qword [r11]
mov qword [rsp + 0x30], r8
cmp byte [r8], 0x22
jne 0x1400e5ba6
nop
nop
inc r8
mov qword [rsp + 0x30], r8
movzx eax, byte [r8]
test al, al
je 0x1400e5b96
cmp al, 0x22
je 0x1400e5b96
jmp 0x1400e5b80
cmp byte [r8], 0x22
jne 0x1400e5bb6
inc r8
mov qword [rsp + 0x30], r8
jmp 0x1400e5bb6
cmp byte [r8], 0x20
jbe 0x1400e5bb6
inc r8
mov qword [rsp + 0x30], r8
jmp 0x1400e5ba6
movzx eax, byte [r8]
test al, al
je 0x1400e5bcc
cmp al, 0x20
ja 0x1400e5bcc
inc r8
mov qword [rsp + 0x30], r8
jmp 0x1400e5bb6
test byte [rsp + 0x8c], 1
je 0x1400e5be1
movzx r9d, word [rsp + 0x90]
jmp 0x1400e5be7
mov r9d, 0xa
xor edx, edx
mov rcx, rdi
call fcn.1400dc180
mov edi, eax
mov dword [rsp + 0x38], eax
test ebx, ebx
jne 0x1400e5c03
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
call qword [sym.imp.msvcrt.dll__cexit]
jmp 0x1400e5c27
mov eax, edi
jmp 0x1400e5c30
mov rbx, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
add rsp, 0xc8
ret
Function at 0x1400e6a04
Capabilities:
Get file size
Read file on windows

Disassembly:
or r8d, 0xffffffff
jmp 0x1400e6a10
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r13d, r13d
mov ebp, r8d
mov rax, rdx
mov r14, rcx
mov ebx, r13d
test rdx, rdx
je 0x1400e6bfc
cmp word [rdx], r13w
je 0x1400e6bfc
mov qword [r11 - 0x38], r13
lea r15d, [r13 + 1]
xor r9d, r9d
mov edx, 0x80000000
mov rcx, rax
mov r8d, r15d
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400e6bf7
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
movsxd rsi, eax
test eax, eax
jle 0x1400e6bee
mov ecx, ebp
call fcn.1400e74c8
mov rdi, rax
test rax, rax
je 0x1400e6bee
mov rcx, r14
lea edx, [r13 + 2]
cmp ebp, 0xffffffff
je 0x1400e6abe
mov edx, ebp
call fcn.1400e7aec
mov rbx, rax
test rax, rax
je 0x1400e6be6
mov qword [rax + 0x40], rdi
mov qword [rbx + 0x60], r13
mov dword [rbx + 0x68], r13d
mov dword [rbx + 0x20], r13d
cmp r14, 0xffffffffffffffff
lea r8, [rsi + 0x10]
cmove r14, rax
xor edx, edx
mov qword [rax + 0x48], r14
mov rax, qword [rax + 8]
mov qword [rbx + 0x58], rax
mov rcx, qword [0x140360a30]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbx + 0x38], rax
test rax, rax
je 0x1400e6b28
lea ecx, [rsi + 0x10]
mov dword [rax + 8], ecx
mov rax, qword [rbx + 0x38]
mov qword [rax], r13
mov rax, qword [rbx + 0x38]
add rax, 0x10
mov qword [rbx + 0x70], rax
cmp ebp, 0xffffffff
je 0x1400e6b31
mov dword [rbx + 0x50], r15d
mov rdx, rbx
mov rcx, rdi
call fcn.14015c540
mov ebp, r13d
mov r14d, 0x4000
test esi, esi
jle 0x1400e6be2
lea eax, [r14 + rbp]
cmp eax, esi
jle 0x1400e6b5b
mov r14d, esi
sub r14d, ebp
mov edx, r14d
mov rcx, rdi
call fcn.14015b890
mov r15, rax
test rax, rax
je 0x1400e6bd0
lea r9, [rsp + 0x78]
mov r8d, r14d
mov rdx, rax
mov rcx, r12
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, dword [rsp + 0x78]
add ebp, edx
cmp dword [rbx + 0x20], r13d
jne 0x1400e6ba2
mov rcx, r15
call fcn.1400e75a4
mov dword [rbx + 0x20], eax
mov edx, dword [rsp + 0x78]
mov rcx, rdi
cmp ebp, esi
jl 0x1400e6bb1
mov r8d, 1
jmp 0x1400e6bb4
xor r8d, r8d
call fcn.14015bd80
test eax, eax
je 0x1400e6bc3
cmp ebp, esi
jl 0x1400e6b4d
jmp 0x1400e6be2
mov rcx, rdi
call fcn.14015bbc0
mov dword [rbx + 0x24], eax
jmp 0x1400e6bd7
mov dword [rbx + 0x24], 1
mov rdx, rdi
mov rcx, rbx
call fcn.1400e76a0
mov qword [rbx + 0x40], r13
mov rcx, rdi
call fcn.14015bf10
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rbx
jmp 0x1400e6bfe
xor eax, eax
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
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 0x1400e6a10
Capabilities:
Get file size
Read file on windows

Disassembly:
or r8d, 0xffffffff
jmp 0x1400e6a10
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x18], rbp
mov qword [r11 + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
xor r13d, r13d
mov ebp, r8d
mov rax, rdx
mov r14, rcx
mov ebx, r13d
test rdx, rdx
je 0x1400e6bfc
cmp word [rdx], r13w
je 0x1400e6bfc
mov qword [r11 - 0x38], r13
lea r15d, [r13 + 1]
xor r9d, r9d
mov edx, 0x80000000
mov rcx, rax
mov r8d, r15d
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r12, rax
cmp rax, 0xffffffffffffffff
je 0x1400e6bf7
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSize]
movsxd rsi, eax
test eax, eax
jle 0x1400e6bee
mov ecx, ebp
call fcn.1400e74c8
mov rdi, rax
test rax, rax
je 0x1400e6bee
mov rcx, r14
lea edx, [r13 + 2]
cmp ebp, 0xffffffff
je 0x1400e6abe
mov edx, ebp
call fcn.1400e7aec
mov rbx, rax
test rax, rax
je 0x1400e6be6
mov qword [rax + 0x40], rdi
mov qword [rbx + 0x60], r13
mov dword [rbx + 0x68], r13d
mov dword [rbx + 0x20], r13d
cmp r14, 0xffffffffffffffff
lea r8, [rsi + 0x10]
cmove r14, rax
xor edx, edx
mov qword [rax + 0x48], r14
mov rax, qword [rax + 8]
mov qword [rbx + 0x58], rax
mov rcx, qword [0x140360a30]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rbx + 0x38], rax
test rax, rax
je 0x1400e6b28
lea ecx, [rsi + 0x10]
mov dword [rax + 8], ecx
mov rax, qword [rbx + 0x38]
mov qword [rax], r13
mov rax, qword [rbx + 0x38]
add rax, 0x10
mov qword [rbx + 0x70], rax
cmp ebp, 0xffffffff
je 0x1400e6b31
mov dword [rbx + 0x50], r15d
mov rdx, rbx
mov rcx, rdi
call fcn.14015c540
mov ebp, r13d
mov r14d, 0x4000
test esi, esi
jle 0x1400e6be2
lea eax, [r14 + rbp]
cmp eax, esi
jle 0x1400e6b5b
mov r14d, esi
sub r14d, ebp
mov edx, r14d
mov rcx, rdi
call fcn.14015b890
mov r15, rax
test rax, rax
je 0x1400e6bd0
lea r9, [rsp + 0x78]
mov r8d, r14d
mov rdx, rax
mov rcx, r12
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov edx, dword [rsp + 0x78]
add ebp, edx
cmp dword [rbx + 0x20], r13d
jne 0x1400e6ba2
mov rcx, r15
call fcn.1400e75a4
mov dword [rbx + 0x20], eax
mov edx, dword [rsp + 0x78]
mov rcx, rdi
cmp ebp, esi
jl 0x1400e6bb1
mov r8d, 1
jmp 0x1400e6bb4
xor r8d, r8d
call fcn.14015bd80
test eax, eax
je 0x1400e6bc3
cmp ebp, esi
jl 0x1400e6b4d
jmp 0x1400e6be2
mov rcx, rdi
call fcn.14015bbc0
mov dword [rbx + 0x24], eax
jmp 0x1400e6bd7
mov dword [rbx + 0x24], 1
mov rdx, rdi
mov rcx, rbx
call fcn.1400e76a0
mov qword [rbx + 0x40], r13
mov rcx, rdi
call fcn.14015bf10
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rbx
jmp 0x1400e6bfe
xor eax, eax
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
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 0x1400ecd68
Capabilities:
Enumerate gui resources

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
test ecx, ecx
je 0x1400ecddf
movsxd rdx, ecx
lea rcx, [0x1400eccc4]
call qword [sym.imp.USER32.dll_EnumWindows]
mov rbx, qword [0x140361010]
test rbx, rbx
je 0x1400ece52
mov rdi, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [rbx + 0x10], eax
jne 0x1400ecdd5
cmp byte [rbx + 0x20], 0
je 0x1400ecdd5
mov rcx, qword [rbx + 0x18]
xor r9d, r9d
mov dword [rsp + 0x30], 3
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
lea rdx, [r9 - 2]
xor r8d, r8d
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rbx, rdi
test rdi, rdi
jne 0x1400ecd9b
jmp 0x1400ece52
mov rbx, qword [0x140361010]
test rbx, rbx
je 0x1400ece52
mov rdi, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [rbx + 0x10], eax
jne 0x1400ece4a
cmp byte [rbx + 0x21], 0
je 0x1400ece0e
mov rcx, qword [rbx + 0x18]
mov edx, 1
call qword [sym.imp.USER32.dll_EnableWindow]
cmp byte [rbx + 0x20], 0
je 0x1400ece3a
mov rcx, qword [rbx + 0x18]
mov dword [rsp + 0x30], 3
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
or rdx, 0xffffffffffffffff
call qword [sym.imp.USER32.dll_SetWindowPos]
lea rdx, [rbx + 0x10]
lea rcx, [0x140361010]
call fcn.14015393c
mov rbx, rdi
test rdi, rdi
jne 0x1400ecdeb
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
Function at 0x14010a718
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov ebx, edx
xor r8d, r8d
xor edx, edx
mov rsi, rcx
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
xor ebp, ebp
mov edi, eax
test eax, eax
je 0x14010a746
dec edi
mov edx, ebx
mov ecx, edi
call fcn.1401544c0
lea r8d, [rdi + 1]
mov rcx, rsi
mov rdx, rax
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
mov rsi, qword [rsp + 0x40]
movsxd rcx, edi
mov word [rbx + rcx*2], bp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x14010af0c
Capabilities:
Read file on windows

Disassembly:
test byte [rcx + 0x28], 0x80
mov r9d, edx
mov edx, 2
je 0x14010af21
mov edx, DispGetIDsOfNames
jmp 0x14010af39
test dword [rcx + 0x28], 0x100
jne 0x14010af39
test dword [rcx + 0x28], 0x200
mov eax, DispGetIDsOfNames
cmovne edx, eax
mov rcx, qword [rcx + 0x18]
or r8d, 0xffffffff
jmp 0x14010b34c
mov rax, rsp
mov dword [rax + 0x20], r9d
mov dword [rax + 0x18], r8d
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
xor eax, eax
mov ecx, 0x1000
mov r15d, r9d
mov r13d, r8d
mov edi, ecx
mov esi, eax
mov r14d, eax
mov r12d, eax
cmp edx, 0x18
je 0x14010b48b
cmp edx, 2
je 0x14010b48b
mov rcx, qword [0x140360a30]
xor edx, edx
mov r8d, 0x2000
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor ecx, ecx
lea r9, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x90]
lea r8d, [r12 + 2]
lea rdx, [rsp + 0x34]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ecx, ecx
test eax, eax
je 0x14010b474
mov r15, qword [rsp + 0x90]
mov ebp, edi
cmp dword [rsp + 0x38], 2
jne 0x14010b46c
cmp r13d, 0xffffffff
je 0x14010b3f9
cmp r14d, r13d
jae 0x14010b46c
add r14d, 2
test edi, edi
jne 0x14010b424
mov rcx, qword [0x140360a30]
movsxd r9, ebp
lea edx, [rdi + 8]
add r9, r9
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov edi, 0x1000
xor ecx, ecx
mov rbx, rax
movzx eax, word [rsp + 0x34]
cmp ax, 0xa
je 0x14010b46c
cmp ax, 0xd
je 0x14010b444
mov word [r12 + rbx], ax
inc esi
inc ebp
add r12, 2
dec edi
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x38]
lea rdx, [rsp + 0x34]
mov r8d, 2
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
xor ecx, ecx
test eax, eax
jne 0x14010b3e7
mov r15d, dword [rsp + 0xa8]
movsxd rax, esi
mov edx, r15d
mov word [rbx + rax*2], cx
mov rcx, rbx
call fcn.140205100
jmp 0x14010b554
mov r8, rcx
mov rcx, qword [0x140360a30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15d, dword [rsp + 0xa0]
mov rbp, qword [rsp + 0x90]
mov rbx, rax
mov r13d, edi
cmp r15d, 0xffffffff
je 0x14010b4be
cmp r14d, r15d
jae 0x14010b528
xor ecx, ecx
lea r9, [rsp + 0x38]
lea rdx, [rsp + 0x30]
lea r8d, [rcx + 1]
mov qword [rsp + 0x20], rcx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14010b528
cmp dword [rsp + 0x38], 1
jne 0x14010b528
inc r14d
test edi, edi
jne 0x14010b50c
mov rcx, qword [0x140360a30]
lea edx, [rdi + 8]
movsxd r9, r13d
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
mov edi, 0x1000
mov rbx, rax
mov al, byte [rsp + 0x30]
cmp al, 0xa
je 0x14010b528
cmp al, 0xd
je 0x14010b4b3
mov byte [r12 + rbx], al
inc esi
inc r13d
inc r12
dec edi
jmp 0x14010b4b3
mov r15d, dword [rsp + 0xa8]
xor ecx, ecx
cmp dword [rsp + 0x98], 0x18
movsxd rax, esi
mov edx, r15d
mov byte [rax + rbx], cl
mov rcx, rbx
jne 0x14010b54f
call fcn.140204e10
jmp 0x14010b554
call fcn.140204cd0
mov rcx, qword [0x140360a30]
mov r8, rbx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14010b0f8
Capabilities:
Accept command line arguments

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [0x140368600]
call fcn.140152f38
xor ebp, ebp
or esi, 0xffffffff
mov r14, rax
mov ebx, ebp
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
movzx edx, word [rax]
test dx, dx
je 0x14010b1f5
mov rcx, qword [rsp + 0x40]
mov r9w, 0x22
cmp dx, 0x20
jne 0x14010b14f
add rax, 2
cmp word [rax], 0x20
je 0x14010b145
movzx edx, word [rax]
mov r8d, 1
cmp dx, r9w
jne 0x14010b18d
add rax, 2
mov rbx, rax
movzx ecx, word [rax]
test cx, cx
je 0x14010b1cd
cmp cx, r9w
je 0x14010b17f
add rax, 2
movzx ecx, word [rax]
test cx, cx
jne 0x14010b16d
cmp word [rax], bp
je 0x14010b1cd
mov rcx, rax
add rax, 2
jmp 0x14010b1d5
test dx, dx
je 0x14010b1d2
mov rbx, rax
cmp dx, 0x20
je 0x14010b17f
add rax, 2
cmp word [rax], r9w
jne 0x14010b1c3
add rax, 2
movzx ecx, word [rax]
test cx, cx
je 0x14010b1cd
cmp cx, r9w
je 0x14010b1c3
add rax, 2
movzx ecx, word [rax]
test cx, cx
jne 0x14010b1b1
movzx edx, word [rax]
test dx, dx
jne 0x14010b195
jmp 0x14010b17f
mov rcx, rax
jmp 0x14010b1d5
mov r8d, ebp
cmp dword [r14], esi
jne 0x14010b1df
test rdi, rdi
jne 0x14010b1ff
test r8d, r8d
je 0x14010b1e6
inc esi
movzx edx, word [rax]
mov rbx, rbp
test dx, dx
jne 0x14010b13f
test rdi, rdi
jne 0x14010b214
movsxd rax, esi
jmp 0x14010b216
test rbx, rbx
je 0x14010b214
sub rcx, rbx
mov rax, rbx
sar rcx, 1
mov dword [rdi], ecx
inc dword [r14]
jmp 0x14010b216
mov dword [rdi], ebp
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret

Function at 0x14010b22c
Capabilities:
Accept command line arguments

Disassembly:
sub rsp, 0x28
mov rcx, qword [0x140368600]
call fcn.140152f38
xor ecx, ecx
add rsp, 0x28
jmp fcn.14010b0f8