joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14001a3a0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x20
xorps xmm0, xmm0
xor edi, edi
movups xmmword [rcx], xmm0
and qword [rcx + 0x10], 0
mov r14d, r8d
mov qword [rcx + 0x18], 0xf
mov r13, rdx
mov byte [rcx], 0
mov rbx, rcx
test r8d, r8d
je 0x14001a5c0
xor ecx, ecx
lea esi, [rdi + 3]
mov al, byte [r13]
dec r14d
mov byte [rbp + rcx + 0x50], al
inc r13
mov dl, byte [rbp + 0x52]
inc rcx
mov r15b, byte [rbp + 0x51]
inc edi
mov r12b, byte [rbp + 0x50]
cmp rcx, rsi
jne 0x14001a4a8
mov al, r12b
mov cl, r12b
shr al, 2
and cl, sil
mov byte [rbp + 0x40], al
mov al, r15b
shr al, 4
shl cl, 4
add cl, al
mov al, dl
mov byte [rbp + 0x41], cl
mov cl, r15b
shr al, 6
and cl, 0xf
shl cl, 2
add cl, al
mov al, dl
and al, 0x3f
mov byte [rbp + 0x42], cl
mov byte [rbp + 0x43], al
xor edi, edi
cmp qword [0x14009a740], 7
lea rcx, [0x14009a728]
movzx eax, byte [rbp + rdi + 0x40]
cmova rcx, qword [0x14009a728]
mov r9b, byte [rcx + rax*2]
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x14001a490
cmp qword [rbx + 0x18], 0xf
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
jbe 0x14001a485
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001a498
mov rcx, rbx
call fcn.1400175d0
inc rdi
cmp rdi, 4
jl 0x14001a446
mov dl, byte [rbp + 0x52]
xor edi, edi
xor ecx, ecx
test r14d, r14d
jne 0x14001a3e6
test edi, edi
je 0x14001a5c0
cmp edi, esi
jge 0x14001a4e0
mov eax, esi
lea rcx, [rbp + 0x50]
sub eax, edi
xor edx, edx
movsxd r8, eax
movsxd rax, edi
add rcx, rax
call fcn.14007c7e0
mov dl, byte [rbp + 0x52]
mov r15b, byte [rbp + 0x51]
mov r12b, byte [rbp + 0x50]
mov al, r12b
and r12b, sil
shr al, 2
mov byte [rbp + 0x40], al
mov al, r15b
shr al, 4
and r15b, 0xf
shl r15b, 2
shl r12b, 4
add r12b, al
mov al, dl
shr al, 6
and dl, 0x3f
add r15b, al
mov byte [rbp + 0x41], r12b
lea eax, [rdi + 1]
mov byte [rbp + 0x42], r15b
mov byte [rbp + 0x43], dl
movsxd r15, eax
test eax, eax
jle 0x14001a57f
xor r14d, r14d
cmp qword [0x14009a740], 7
lea rcx, [0x14009a728]
movzx eax, byte [rbp + r14 + 0x40]
cmova rcx, qword [0x14009a728]
mov r9b, byte [rcx + rax*2]
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x14001a56f
cmp qword [rbx + 0x18], 0xf
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
jbe 0x14001a564
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001a577
mov rcx, rbx
call fcn.1400175d0
inc r14
cmp r14, r15
jl 0x14001a524
cmp edi, esi
jge 0x14001a5c0
sub esi, edi
movsxd rdi, esi
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x14001a5af
cmp qword [rbx + 0x18], 0xf
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
jbe 0x14001a5a7
mov rax, qword [rbx]
mov word [rax + rcx], 0x3d
jmp 0x14001a5ba
mov r9b, 0x3d
mov rcx, rbx
call fcn.1400175d0
sub rdi, 1
jne 0x14001a588
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14001e1f0
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rsi, rdx
mov ecx, 0x208
call fcn.1400541b4
mov rcx, rax
mov rbx, rax
lea rdx, [rax + 0x208]
call fcn.140021328
xor ebp, ebp
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], rbp
call fcn.140020bb8
cmp qword [rsi + 0x18], 7
mov rcx, rsi
jbe 0x14001e244
mov rcx, qword [rsi]
mov r8d, 0x104
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
xorps xmm0, xmm0
or r8, 0xffffffffffffffff
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], rbp
mov qword [rdi + 0x18], rbp
inc r8
cmp word [rbx + r8*2], bp
jne 0x14001e265
mov rdx, rbx
mov rcx, rdi
call fcn.140007b80
test rbx, rbx
je 0x14001e28c
mov edx, 0x208
mov rcx, rbx
call fcn.140054430
mov rcx, rsi
call fcn.140007a6c
mov rbx, qword [rsp + 0x30]
mov rax, rdi
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
Function at 0x14001f180
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor edx, edx
mov r8d, ecx
lea ebx, [rdx + 1]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
je 0x14001f1bd
mov edx, ebx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, rdi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
setne al
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400219c4
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x18], 7
mov rbx, rcx
jbe 0x1400219db
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov edi, eax
mov rcx, rbx
cmp eax, 0xffffffff
jne 0x1400219f4
call fcn.140007a6c
xor al, al
jmp 0x140021a03
call fcn.140007a6c
shr edi, 4
and dil, 1
mov al, dil
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x140021a10
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x18], 7
mov rbx, rcx
jbe 0x140021a27
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov edi, eax
mov rcx, rbx
cmp eax, 0xffffffff
jne 0x140021a40
call fcn.140007a6c
xor al, al
jmp 0x140021a52
call fcn.140007a6c
shr edi, 4
not dil
and dil, 1
mov al, dil
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140023478
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
sub r8, rdx
mov rcx, rdx
sar r8, 1
mov rdx, r8
jmp 0x140023e84
lea r9, [rdx + rdx]
movabs r8, 0xcbf29ce484222325
xor edx, edx
test r9, r9
je 0x140023eb6
movzx eax, byte [rdx + rcx]
movabs r10, 0x100000001b3
xor r8, rax
inc rdx
imul r8, r10
cmp rdx, r9
jb 0x140023e99
mov rax, r8
ret

Function at 0x1400249b0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
xor al, al
mov ecx, dword [rcx + 0x7c]
jmp 0x140024a1b
cmp ecx, 0x7c
je 0x140024a20
cmp ecx, 0x29
jne 0x140024a2b
cmp dword [rdi + 0x1c], 0
jne 0x140024a20
test dword [rdi + 0x80], 0x10000000
je 0x140024b5b
cmp ecx, 0x5d
jne 0x1400249f9
test dword [rdi + 0x80], 0x10000000
je 0x140024b66
movzx edx, word [rdi + 0x78]
lea rcx, [rdi + 0x40]
call fcn.1400257d0
mov rcx, rdi
call fcn.140024974
mov rcx, rdi
call fcn.1400256b8
mov ecx, dword [rdi + 0x7c]
mov al, 1
cmp ecx, 0xffffffff
jne 0x1400249c4
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
cmp ecx, 0x2e
jne 0x140024a3b
lea rcx, [rdi + 0x40]
call fcn.1400169d4
jmp 0x140024a06
cmp ecx, 0x5c
jne 0x140024a93
mov rcx, rdi
call fcn.140024974
test byte [rdi + 0x80], 0x80
je 0x140024a86
cmp word [rdi + 0x78], 0x62
jne 0x140024a6b
lea rcx, [rdi + 0x40]
call fcn.1400169c8
mov rcx, rdi
call fcn.140024974
jmp 0x140024a16
cmp word [rdi + 0x78], 0x42
jne 0x140024a86
lea rcx, [rdi + 0x40]
call fcn.1400169c8
lea rcx, [rdi + 0x40]
call fcn.140016a94
jmp 0x140024a61
mov rcx, rdi
call fcn.14002552c
jmp 0x140024a0e
cmp ecx, 0x5b
jne 0x140024abe
mov rcx, rdi
call fcn.140024974
mov rcx, rdi
call fcn.1400254c4
mov edx, 0x5d
mov rcx, rdi
lea r8d, [rdx - 0x59]
call fcn.1400254a8
jmp 0x140024a0e
cmp ecx, 0x28
jne 0x140024af3
mov rcx, rdi
call fcn.140024974
mov rcx, rdi
call fcn.140025618
mov edx, 0x29
mov rcx, rdi
mov bl, al
lea r8d, [rdx - 0x24]
call fcn.1400254a8
test bl, bl
je 0x140024a16
jmp 0x140024a0e
cmp ecx, 0x5e
jne 0x140024b06
lea rcx, [rdi + 0x40]
call fcn.1400169b0
jmp 0x140024a61
cmp ecx, 0x24
jne 0x140024b19
lea rcx, [rdi + 0x40]
call fcn.1400169bc
jmp 0x140024a61
lea eax, [rcx - 0x2a]
cmp eax, 1
jbe 0x140024b45
cmp ecx, 0x3f
je 0x140024b45
cmp ecx, 0x7b
je 0x140024b45
cmp ecx, 0x7d
jne 0x1400249e4
test dword [rdi + 0x80], 0x10000000
je 0x140024b50
jmp 0x1400249f9
mov edx, 0xa
call fcn.1400145a0
int3
mov edx, 6
call fcn.1400145a0
int3
mov edx, 5
call fcn.1400145a0
int3
mov edx, 4
call fcn.1400145a0
int3
Function at 0x14002c4c0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
mov rbx, rcx
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ecx, dword [0x14009b17c]
mov rdi, rax
movdqa xmm0, xmmword [0x14008d030]
mov dword [rbp - 0x69], 0xaa6852e9
mov dword [rbp - 0x65], 0x64e346af
mov word [rbp - 0x61], 0x58c8
test cl, 1
jne 0x14002c552
movzx eax, word [rbp - 0x61]
or ecx, 1
movaps xmmword [0x14009b1f0], xmm0
movsd xmm0, qword [rbp - 0x69]
mov dword [0x14009b17c], ecx
lea rcx, [0x14007ed4c]
mov word [0x14009b20a], 0x10b
movsd qword [0x14009b200], xmm0
mov word [0x14009b208], ax
call fcn.140054418
xor esi, esi
lea rdx, [0x14009b1f0]
cmp byte [0x14009b20b], sil
je 0x14002c591
mov r9d, esi
mov cl, r9b
movabs r8, 0x5ad23c3cb0b3da5
and cl, 7
shl cl, 3
shr r8, cl
xor byte [r9 + rdx], r8b
inc r9
cmp r9, 0x1b
jb 0x14002c567
mov byte [0x14009b20b], sil
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edx, 0x55
lea rcx, [rbp - 0x59]
call rax
xorps xmm0, xmm0
lea rax, [rbp - 0x59]
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rsi
or r8, 0xffffffffffffffff
mov qword [rbx + 0x18], rsi
inc r8
cmp word [rax + r8*2], si
jne 0x14002c5bb
lea rdx, [rbp - 0x59]
mov rcx, rbx
call fcn.140007b80
lea r11, [rsp + 0xf0]
mov rax, rbx
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret

Function at 0x14002c5f0
Capabilities:
Get geographical location

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rdi
sub rsp, 0x60
mov rbx, rcx
lea rdx, str.GetKeyboardLayout
xorps xmm0, xmm0
lea rcx, [rax - 0x30]
xorps xmm1, xmm1
mov r8d, 0x11
movups xmmword [rax - 0x30], xmm0
movdqu xmmword [rax - 0x20], xmm1
call fcn.14000a604
lea rcx, [rsp + 0x38]
call fcn.14002c724
xor ecx, ecx
call rax
mov rdx, qword [rsp + 0x50]
mov rdi, rax
cmp rdx, 0xf
jbe 0x14002c66e
mov rcx, qword [rsp + 0x38]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002c669
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002c6c4
call fcn.140054430
movzx ecx, di
lea r8, [rsp + 0x20]
mov r9d, 9
mov edx, 0x1001
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
xorps xmm0, xmm0
lea rdx, [rsp + 0x20]
movups xmmword [rbx], xmm0
mov r8d, 4
mov qword [rbx + 0x10], 2
mov rcx, rbx
mov qword [rbx + 0x18], 7
call fcn.14007c060
xor eax, eax
mov word [rbx + 4], ax
mov rax, rbx
mov rbx, qword [rsp + 0x70]
add rsp, 0x60
pop rdi
ret
call fcn.14005af0c
int3
Function at 0x140054ba4
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140054bee
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140054bee
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140054bee
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140054bee
cmp dword [rcx + 0x84], 0xe
jbe 0x140054bee
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140054bf0
xor al, al
add rsp, 0x28
ret

Function at 0x140067ae8
Capabilities:
Parse pe header

Disassembly:
xor r8d, r8d
xor edx, edx
jmp 0x1400678e4
Function at 0x140072514
Capabilities:
Query environment variable

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, 0x40
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor esi, esi
mov rbx, rax
test rax, rax
jne 0x140072544
xor eax, eax
jmp 0x140072607
mov rbp, rbx
cmp word [rax], si
je 0x140072569
or rax, 0xffffffffffffffff
inc rax
cmp word [rbp + rax*2], si
jne 0x140072550
lea rbp, [rbp + rax*2]
add rbp, 2
cmp word [rbp], si
jne 0x14007254c
mov qword [rsp + 0x38], rsi
sub rbp, rbx
mov qword [rsp + 0x30], rsi
add rbp, 2
sar rbp, 1
mov r8, rbx
mov r9d, ebp
mov dword [rsp + 0x28], esi
xor edx, edx
mov qword [rsp + 0x20], rsi
xor ecx, ecx
call fcn.140070e30
movsxd r14, eax
test eax, eax
jne 0x1400725a7
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
jmp 0x14007253d
mov rcx, r14
call fcn.14006bca8
mov rdi, rax
test rax, rax
jne 0x1400725c0
xor ecx, ecx
call fcn.14006bc6c
jmp 0x14007259c
mov qword [rsp + 0x38], rsi
mov r9d, ebp
mov qword [rsp + 0x30], rsi
mov r8, rbx
mov dword [rsp + 0x28], r14d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.140070e30
test eax, eax
jne 0x1400725f1
mov rcx, rdi
call fcn.14006bc6c
jmp 0x1400725fb
xor ecx, ecx
call fcn.14006bc6c
mov rsi, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret

Function at 0x140072624
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
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor ebp, ebp
mov rbx, rax
test rax, rax
je 0x1400726ab
mov rsi, rbx
cmp word [rax], bp
je 0x14007266a
or rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2], bp
jne 0x140072654
lea rsi, [rsi + rax*2]
add rsi, 2
cmp word [rsi], bp
jne 0x140072650
sub rsi, rbx
add rsi, 2
sar rsi, 1
add rsi, rsi
mov rcx, rsi
call fcn.14006bca8
mov rdi, rax
test rax, rax
je 0x140072698
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call fcn.14007c060
mov rbp, rdi
xor ecx, ecx
call fcn.14006bc6c
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140075dbc
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov esi, edx
mov ebx, ecx
call fcn.14006b244
mov ecx, ebx
lea r8, [rsp + 0x30]
and ecx, 0x3ff
mov r9d, 2
bts ecx, 0xa
mov edx, 0x20000001
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
xor edx, edx
test eax, eax
je 0x140075e5d
cmp ebx, dword [rsp + 0x30]
je 0x140075e56
test esi, esi
je 0x140075e56
mov r10, qword [rdi + 0x98]
mov r9d, edx
movzx r8d, word [r10]
lea rcx, [r10 + 2]
lea eax, [r8 - 0x41]
cmp ax, 0x19
jbe 0x140075e31
sub r8w, 0x61
cmp r8w, 0x19
ja 0x140075e3e
movzx r8d, word [rcx]
inc r9d
add rcx, 2
jmp 0x140075e1b
or rax, 0xffffffffffffffff
inc rax
cmp word [r10 + rax*2], dx
jne 0x140075e42
cmp r9d, eax
setne dl
mov eax, edx
jmp 0x140075e5f
mov eax, 1
jmp 0x140075e5f
xor eax, eax
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140078ec4
Capabilities:
Set environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
xor r15d, r15d
mov r14, rdx
mov rsi, rcx
mov qword [rbp + 0x17], r15
xor edx, edx
mov qword [rbp + 0x1f], r15
lea rcx, [rbp - 0x39]
mov qword [rbp + 0x27], r15
mov qword [rbp + 0x2f], r15
mov edi, r15d
mov qword [rbp + 0x37], r15
mov byte [rbp + 0x3f], r15b
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], r15
mov qword [rbp - 9], r15
mov qword [rbp - 1], r15
mov qword [rbp + 7], r15
mov byte [rbp + 0xf], r15b
call fcn.14005b02c
mov rax, qword [rbp - 0x31]
mov ebx, 0xfde9
cmp dword [rax + 0xc], ebx
jne 0x140078f4e
cmp byte [rbp - 0x21], r15b
je 0x140078f49
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
mov r9d, ebx
jmp 0x140078f84
call fcn.14006ef78
test eax, eax
jne 0x140078f70
cmp byte [rbp - 0x21], r15b
je 0x140078f68
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
mov r9d, 1
jmp 0x140078f84
cmp byte [rbp - 0x21], r15b
je 0x140078f81
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
mov r9d, r15d
lea r8, [rbp + 0x77]
mov rcx, rsi
lea rdx, [rbp + 0x17]
call fcn.14006485c
test eax, eax
jne 0x140079024
xor edx, edx
lea rcx, [rbp - 0x39]
call fcn.14005b02c
mov rax, qword [rbp - 0x31]
cmp dword [rax + 0xc], ebx
jne 0x140078fc3
cmp byte [rbp - 0x21], r15b
je 0x140078ff8
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
jmp 0x140078ff8
call fcn.14006ef78
test eax, eax
jne 0x140078fe4
cmp byte [rbp - 0x21], r15b
je 0x140078fdd
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
mov ebx, 1
jmp 0x140078ff8
cmp byte [rbp - 0x21], r15b
je 0x140078ff5
mov rax, qword [rbp - 0x39]
and dword [rax + 0x3a8], 0xfffffffd
mov ebx, r15d
mov r9d, ebx
lea r8, [rbp + 0x77]
lea rdx, [rbp - 0x19]
mov rcx, r14
call fcn.14006485c
mov rdi, qword [rbp - 9]
test eax, eax
jne 0x140079024
mov rcx, qword [rbp + 0x27]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_SetEnvironmentVariableW]
mov ebx, eax
jmp 0x140079027
mov ebx, r15d
cmp byte [rbp + 0xf], r15b
je 0x140079035
mov rcx, rdi
call fcn.14006bc6c
cmp byte [rbp + 0x3f], r15b
je 0x140079044
mov rcx, qword [rbp + 0x27]
call fcn.14006bc6c
lea r11, [rsp + 0xa0]
mov eax, ebx
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x14007bcb0
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x14007bcd8
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
cmp dword [rdx], 0x4550
jne 0x14007bcd8
xor eax, eax
mov ecx, 0x20b
cmp word [rdx + 0x18], cx
sete al
ret
xor eax, eax
ret
Function at 0x14000c43c
Capabilities:
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push r15
sub rsp, 0xb0
xor r14d, r14d
mov dword [rsp + 0x20], r14d
lea rcx, [rax - 0x78]
call qword [sym.imp.api_ms_win_core_processthreads_l1_1_0.dll_GetStartupInfoW]
nop
mov rax, qword gs:[0x30]
mov rbx, qword [rax + 8]
mov esi, r14d
xor eax, eax
lock cmpxchg qword [0x140014c60], rbx
je 0x14000c4a3
cmp rax, rbx
jne 0x14000c496
mov ebx, 1
mov esi, ebx
jmp 0x14000c4a8
mov ecx, 0x3e8
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_Sleep]
jmp 0x14000c47b
mov ebx, 1
mov eax, dword [0x140014c68]
cmp eax, ebx
jne 0x14000c4c0
mov edi, 0x1f
mov ecx, edi
call sub.msvcrt.dll__amsg_exit
jmp 0x14000c52c
mov eax, dword [0x140014c68]
test eax, eax
jne 0x14000c521
mov dword [0x140014c68], ebx
lea r15, [0x14000eba0]
lea rdi, [0x14000eb88]
mov qword [rsp + 0x30], rdi
mov eax, r14d
mov dword [rsp + 0x24], eax
cmp rdi, r15
jae 0x14000c513
test eax, eax
jne 0x14000c517
cmp qword [rdi], r14
je 0x14000c508
mov rax, qword [rdi]
mov rcx, qword [0x14000eb40]
call rcx
mov dword [rsp + 0x24], eax
add rdi, 8
mov qword [rsp + 0x30], rdi
jmp 0x14000c4ea
test eax, eax
je 0x14000c527
mov eax, 0xff
jmp 0x14000c682
mov dword [0x1400143e4], ebx
mov edi, 0x1f
mov eax, dword [0x140014c68]
cmp eax, ebx
jne 0x14000c553
lea rdx, [0x14000eb80]
lea rcx, [0x14000eb48]
call sub.msvcrt.dll__initterm
mov dword [0x140014c68], 2
test esi, esi
jne 0x14000c561
mov rax, r14
xchg qword [0x140014c60], rax
cmp qword [0x140014c80], r14
je 0x14000c594
lea rcx, [0x140014c80]
call fcn.14000ca70
test eax, eax
je 0x14000c594
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
mov rax, qword [0x140014c80]
mov r9, qword [0x14000eb40]
call r9
mov rax, qword [sym.imp.msvcrt.dll__wcmdln]
mov rcx, qword [rax]
test rcx, rcx
jne 0x14000c5ad
mov eax, 0xff
jmp 0x14000c682
mov qword [rsp + 0x28], rcx
mov edx, dword [rsp + 0x20]
movzx eax, word [rcx]
cmp ax, 0x20
ja 0x14000c633
test ax, ax
je 0x14000c5c8
test edx, edx
jne 0x14000c633
sub ax, bx
cmp ax, di
ja 0x14000c5de
add rcx, 2
mov qword [rsp + 0x28], rcx
movzx eax, word [rcx]
jmp 0x14000c5c8
test byte [rsp + 0x7c], bl
movzx eax, word [rsp + 0x80]
mov r9d, 0xa
cmovne r9d, eax
mov r8, rcx
xor edx, edx
lea rcx, [0x140000000]
call fcn.140001878
mov dword [0x1400143e0], eax
cmp dword [0x140014400], r14d
jne 0x14000c61c
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x1400143e4], r14d
jne 0x14000c631
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x1400143e0]
jmp 0x14000c682
cmp ax, 0x22
jne 0x14000c647
mov eax, r14d
test edx, edx
sete al
mov edx, eax
mov dword [rsp + 0x20], eax
add rcx, 2
mov qword [rsp + 0x28], rcx
jmp 0x14000c5b6
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret
sub rsp, 0x28
call fcn.140152000
add rsp, 0x28
jmp 0x14000c43c
Function at 0x140006a44
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140006a8e
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140006a8e
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140006a8e
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140006a8e
cmp dword [rcx + 0x84], 0xe
jbe 0x140006a8e
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140006a90
xor al, al
add rsp, 0x28
ret
Function at 0x140001378
Capabilities:
Parse pe header

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x20
mov rax, qword [0x140391f10]
mov dword [rax], 1
mov rax, qword [0x140391f20]
mov dword [rax], 1
mov rax, qword [0x140391f30]
mov dword [rax], 1
mov rax, qword [0x140391eb0]
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
movzx eax, word [rax]
cmp ax, 0x5a4d
je 0x1400013c9
mov eax, 0
jmp 0x140001476
mov rax, qword [rbp - 8]
mov eax, dword [rax + 0x3c]
movsxd rdx, eax
mov rax, qword [rbp - 8]
add rax, rdx
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
mov eax, dword [rax]
cmp eax, 0x4550
je 0x1400013f5
mov eax, 0
jmp 0x140001476
mov rax, qword [rbp - 0x10]
add rax, 0x18
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
movzx eax, word [rax]
movzx eax, ax
cmp eax, 0x10b
je 0x14000141b
cmp eax, 0x20b
je 0x140001442
jmp 0x140001471
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0x5c]
cmp eax, 0xe
ja 0x14000142e
mov eax, 0
jmp 0x140001476
mov rax, qword [rbp - 0x18]
mov eax, dword [rax + 0xd0]
test eax, eax
setne al
movzx eax, al
jmp 0x140001476
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov eax, dword [rax + 0x6c]
cmp eax, 0xe
ja 0x14000145d
mov eax, 0
jmp 0x140001476
mov rax, qword [rbp - 0x20]
mov eax, dword [rax + 0xe0]
test eax, eax
setne al
movzx eax, al
jmp 0x140001476
mov eax, 0
add rsp, 0x20
pop rbp
ret