joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1800a35f0
Capabilities:
Move file

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x50], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rbp - 8], rax
mov rdi, rdx
mov rbx, rcx
cmp qword [rdx + 0x18], 8
jb 0x1800a362c
mov rdx, qword [rdx]
cmp qword [rcx + 0x18], 8
jb 0x1800a3636
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x1800a3647
mov al, 1
jmp 0x1800a3818
xor sil, sil
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x18], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x18], xmm1
xor r14d, r14d
mov word [rbp - 0x28], r14w
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.1800a47e0
movzx ebx, sil
mov ecx, 1
test al, al
cmovne ebx, ecx
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x38], xmm1
mov word [rbp - 0x48], r14w
lea rdx, [rbp - 0x48]
mov rcx, rdi
call fcn.1800a47e0
test al, al
jne 0x1800a36b3
test bl, bl
je 0x1800a3776
lea rdx, [rbp - 0x48]
cmp qword [rbp - 0x30], 8
cmovae rdx, qword [rbp - 0x48]
lea rcx, [rbp - 0x28]
cmp qword [rbp - 0x10], 8
cmovae rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x1800a3776
mov rdx, qword [rbp - 0x30]
cmp rdx, 8
jb 0x1800a371d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a3718
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a383f
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x38], xmm0
mov word [rbp - 0x48], r14w
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x1800a376f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a376a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a3845
call fcn.18011ca94
mov al, 1
jmp 0x1800a3806
mov rdx, qword [rbp - 0x30]
cmp rdx, 8
jb 0x1800a37b6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a37b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a384b
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x38], xmm0
mov word [rbp - 0x48], r14w
mov rdx, qword [rbp - 0x10]
cmp rdx, 8
jb 0x1800a3804
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a37ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a3839
call fcn.18011ca94
xor al, al
movdqa xmm0, xmmword [0x1801b12f0]
mov word [rbp - 0x28], r14w
movdqu xmmword [rbp - 0x18], xmm0
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.18011c650
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
int3
Function at 0x1800a3b50
Capabilities:
Copy file

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x70
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0xa0], rbx
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov rdi, rdx
mov rbx, rcx
cmp qword [rdx + 0x18], 8
jb 0x1800a3b88
mov rdx, qword [rdx]
cmp qword [rcx + 0x18], 8
jb 0x1800a3b92
mov rcx, qword [rcx]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x1800a3ba6
mov al, 1
jmp 0x1800a3cf1
xor sil, sil
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x58], xmm1
xor ebp, ebp
mov word [rsp + 0x48], bp
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.1800a47e0
movzx ebx, sil
mov ecx, 1
test al, al
cmovne ebx, ecx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x38], xmm1
mov word [rsp + 0x28], bp
lea rdx, [rsp + 0x28]
mov rcx, rdi
call fcn.1800a47e0
test al, al
jne 0x1800a3c13
test bl, bl
je 0x1800a3c46
lea rdx, [rsp + 0x28]
cmp qword [rsp + 0x40], 8
cmovae rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x1800a3c46
mov bl, 1
jmp 0x1800a3c48
xor bl, bl
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1800a3c8a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a3c85
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a3d14
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], bp
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x1800a3cdb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a3cd6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a3d0e
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], bp
movzx eax, bl
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop rdi
pop rsi
pop rbp
ret
call fcn.180144c64
nop
call fcn.180144c64
nop
int3
Function at 0x1800a4070
Capabilities:
Get common file path

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x240
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
xor edx, edx
mov r8d, 0x20c
lea rcx, [rsp + 0x20]
call fcn.18013b560
cmp qword [rdi + 0x18], 8
jb 0x1800a40b2
mov rdi, qword [rdi]
cmp qword [rbx + 0x18], 8
jb 0x1800a40bc
mov rbx, qword [rbx]
lea r9, [rsp + 0x20]
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetTempFileNameW]
test eax, eax
je 0x1800a410c
xor eax, eax
mov r8, 0xffffffffffffffff
mov word [rsp + 0x22a], ax
lea rax, [rsp + 0x20]
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1800a40f0
lea rdx, [rsp + 0x20]
mov rcx, rsi
call fcn.180003950
mov al, 1
jmp 0x1800a410e
xor al, al
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.18011c650
add rsp, 0x240
pop rdi
pop rsi
pop rbx
ret

Function at 0x1800a4b60
Capabilities:
Check mutex on windows

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rsi, rdx
mov rdi, rcx
mov rcx, qword [rcx]
xor ebp, ebp
test rcx, rcx
je 0x1800a4b9e
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi], rbp
mov word [rdi + 8], bp
mov qword [rsp + 0x28], rbp
lea rcx, [rsp + 0x28]
call fcn.1800a9f20
nop
mov rbx, qword [rsp + 0x28]
cmp qword [rbx], 0
lea rcx, [rbx + 0x10]
jne 0x1800a4bc4
mov rcx, rbp
cmp qword [rsi + 0x10], 0
je 0x1800a4bd7
cmp qword [rsi + 0x18], 8
jb 0x1800a4bda
mov rsi, qword [rsi]
jmp 0x1800a4bda
mov rsi, rbp
mov r8, rsi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rdi], rax
test rax, rax
je 0x1800a4bfe
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x1800a4bfe
mov byte [rdi + 9], 1
cmp qword [rdi], 0
setne sil
mov rdi, qword [rbx]
test rdi, rdi
je 0x1800a4c25
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx], rbp
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1800a4c38
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov qword [rbx + 8], rbp
mov edx, 0x58
mov rcx, rbx
call fcn.18011ca94
mov qword [rsp + 0x28], rbp
movzx eax, sil
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
Function at 0x1800a4c70
Capabilities:
Check mutex on windows

Disassembly:
push rsi
push rdi
push r14
sub rsp, 0x40
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rbp
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rsi, rdx
mov rdi, rcx
mov rcx, qword [rcx]
xor r14d, r14d
test rcx, rcx
je 0x1800a4cb5
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi], r14
mov word [rdi + 8], r14w
mov qword [rsp + 0x28], r14
lea rcx, [rsp + 0x28]
call fcn.1800aa040
nop
mov rbx, qword [rsp + 0x28]
cmp qword [rbx], 0
lea rbp, [rbx + 0x10]
jne 0x1800a4cdc
mov rbp, r14
cmp qword [rsi + 0x10], 0
je 0x1800a4cf2
mov r8, rsi
cmp qword [rsi + 0x18], 8
jb 0x1800a4cf5
mov r8, qword [rsi]
jmp 0x1800a4cf5
mov r8, r14
xor edx, edx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rdi], rax
test rax, rax
jne 0x1800a4d43
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x1800a4d43
lea ecx, [rax + 5]
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [rsi + 0x10], 0
je 0x1800a4d2f
cmp qword [rsi + 0x18], 8
jb 0x1800a4d32
mov rsi, qword [rsi]
jmp 0x1800a4d32
mov rsi, r14
mov r8, rsi
xor edx, edx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
mov qword [rdi], rax
mov rax, qword [rdi]
test rax, rax
je 0x1800a4d6a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x1800a4d5c
mov byte [rdi + 9], 1
mov rcx, qword [rdi]
call fcn.180083950
mov rax, qword [rdi]
test rax, rax
setne sil
mov rdi, qword [rbx]
test rdi, rdi
je 0x1800a4d8d
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov rcx, rax
mov r8, rdi
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1800a4da0
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov qword [rbx + 8], r14
mov edx, 0x58
mov rcx, rbx
call fcn.18011ca94
mov qword [rsp + 0x28], r14
movzx eax, sil
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
Function at 0x1800a7190
Capabilities:
Delete file

Disassembly:
mov rax, rsp
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rsi, r8
mov rbx, rdx
mov r8, rdx
lea rdx, [rbp - 0x30]
call fcn.1800a7d50
nop
xor eax, eax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
xor r14d, r14d
mov qword [rbp - 0x50], r14
mov word [rbp - 0x48], ax
lea rdx, [rbp - 0x30]
lea rcx, [rbp - 0x50]
call fcn.1800a4b60
xor eax, eax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
lea rax, [rbp - 0x50]
mov qword [rbp - 0x40], rax
mov byte [rbp - 0x38], r14b
mov rcx, qword [rbp - 0x50]
test rcx, rcx
jne 0x1800a7218
xor dil, dil
jmp 0x1800a7236
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, 0xffffff7f
je 0x1800a722f
xor dil, dil
jmp 0x1800a7236
mov byte [rbp - 0x48], 1
mov dil, 1
mov byte [rbp - 0x38], dil
mov byte [rbp - 0x60], 0
lea r9, [rbp - 0x60]
mov r8, rsi
mov rdx, rbx
call fcn.1800a7320
test al, al
jne 0x1800a726a
cmp byte [rbp - 0x60], al
je 0x1800a726a
cmp qword [rbx + 0x18], 8
jb 0x1800a7260
mov rbx, qword [rbx]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
test dil, dil
je 0x1800a7282
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1800a727e
call qword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov byte [rbp - 0x48], 0
mov qword [rbp - 0x40], r14
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x1800a7299
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp - 0x50], r14
mov word [rbp - 0x48], 0
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x1800a72db
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a72d6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a7311
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x30], r14w
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.18011c650
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.180144c64
int3
Function at 0x1800a91e0
Capabilities:
Check os version

Disassembly:
push rbx
sub rsp, 0x150
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x140], rax
xor eax, eax
mov dword [rsp + 0x20], 0x114
mov qword [rcx + 8], rax
mov rbx, rcx
mov qword [rcx + 0x10], rax
xor edx, edx
mov qword [rcx + 0x18], rax
mov r8d, 0x110
mov qword [rcx + 0x20], rax
mov qword [rcx + 0x28], rax
mov qword [rcx + 0x30], rax
mov qword [rcx + 0x38], rax
mov qword [rcx + 0x40], rax
mov qword [rcx + 0x48], rax
mov qword [rcx + 0x50], rax
mov byte [rcx], al
lea rcx, [rsp + 0x24]
call fcn.18013b560
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
mov rax, rbx
je 0x1800a9260
cmp dword [rsp + 0x24], 6
jb 0x1800a9260
mov byte [rbx], 1
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.18011c650
add rsp, 0x150
pop rbx
ret
Function at 0x1800a9280
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x70
mov qword [rax - 0x18], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rsi, rcx
xorps xmm0, xmm0
movdqu xmmword [rax - 0x48], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rax - 0x48], xmm1
xor ebp, ebp
mov word [rax - 0x58], bp
lea r8d, [rbp + 0xc]
lea rdx, str.wintrust.dll
lea rcx, [rax - 0x58]
call fcn.180003950
nop
call fcn.18009a5f0
mov rcx, rax
lea rdx, [rsp + 0x20]
call fcn.18009a690
mov rbx, rax
mov rdx, qword [rsp + 0x38]
cmp rdx, 8
jb 0x1800a9326
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9321
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a94cd
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x30], xmm0
mov word [rsp + 0x20], bp
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x50], xmm1
mov word [rsp + 0x40], bp
mov r8d, 0xb
lea rdx, str.crypt32.dll
lea rcx, [rsp + 0x40]
call fcn.180003950
nop
call fcn.18009a5f0
mov rcx, rax
lea rdx, [rsp + 0x40]
call fcn.18009a690
mov rdi, rax
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
jb 0x1800a93c4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a93bf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a94c7
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x50], xmm0
mov word [rsp + 0x40], bp
test rbx, rbx
je 0x1800a94b1
test rdi, rdi
je 0x1800a94b1
lea rdx, str.CryptCATAdminCalcHashFromFileHandle
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 8], rax
lea rdx, str.CryptCATAdminAcquireContext
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x10], rax
lea rdx, str.CryptCATAdminEnumCatalogFromHash
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x18], rax
lea rdx, str.CryptCATCatalogInfoFromContext
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x20], rax
lea rdx, str.CryptCATAdminReleaseCatalogContext
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x28], rax
lea rdx, str.CryptCATAdminReleaseContext
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x30], rax
lea rdx, str.WTHelperProvDataFromStateData
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x38], rax
lea rdx, str.WTHelperGetProvSignerFromChain
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x40], rax
lea rdx, str.WinVerifyTrust
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x48], rax
lea rdx, str.CertNameToStrW
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x50], rax
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
call fcn.180144c64
int3
call fcn.180144c64
int3
Function at 0x1800b16d0
Capabilities:
Get file size

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x30
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov rcx, qword [rcx]
mov rdi, rdx
cmp rcx, 0xffffffffffffffff
je 0x1800b172e
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1800b1719
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x1800b172e
mov ecx, dword [rsp + 0x20]
mov rax, rbx
shl rcx, 0x20
mov al, 1
add rcx, rbx
mov qword [rdi], rcx
jmp 0x1800b1730
xor al, al
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
Function at 0x1800b50d0
Capabilities:
Write file on windows

Disassembly:
mov r11, rsp
push rdi
sub rsp, 0x90
mov qword [r11 - 0x50], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rsi
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rdi, rdx
mov rbx, rcx
mov rdx, qword [rcx]
test rdx, rdx
je 0x1800b51e7
cmp byte [rdx + 0x78], 0
je 0x1800b51e7
add rdx, 0x28
lea rcx, [r11 - 0x48]
call fcn.180085f70
nop
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.180091c60
nop
mov rsi, qword [rsp + 0x70]
lea rdi, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae rdi, qword [rsp + 0x60]
mov rcx, qword [rbx]
cmp qword [rcx + 0x18], 8
jb 0x1800b515b
mov rcx, qword [rcx]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r9d, r9d
mov edx, 0x40000000
lea r8d, [r9 + 3]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1800b51d2
mov dword [rsp + 0x40], 0
mov r9d, 2
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, esi
mov rdx, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rsp + 0x60]
call fcn.18003cf50
nop
lea rcx, [rsp + 0x50]
call fcn.180085fd0
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.18011c650
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1800c72b0
Capabilities:
Link many functions at runtime

Disassembly:
push rdi
sub rsp, 0x50
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rsi
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rbx, rcx
cmp qword [rcx], 0
jne 0x1800c7408
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x38], xmm1
xor esi, esi
mov word [rsp + 0x28], si
lea r8d, [rsi + 0xc]
lea rdx, str.wintrust.dll
lea rcx, [rsp + 0x28]
call fcn.180003950
nop
call fcn.18009a5f0
mov rcx, rax
lea rdx, [rsp + 0x28]
call fcn.18009a690
mov rdi, rax
mov rdx, qword [rsp + 0x40]
cmp rdx, 8
jb 0x1800c7370
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c736b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800c7425
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x38], xmm0
mov word [rsp + 0x28], si
test rdi, rdi
jne 0x1800c7391
mov dword [rbx + 0x30], 3
jmp 0x1800c7408
lea rdx, str.CryptCATAdminCalcHashFromFileHandle
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx], rax
lea rdx, str.CryptCATAdminAcquireContext
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 8], rax
lea rdx, str.CryptCATAdminEnumCatalogFromHash
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x10], rax
lea rdx, str.CryptCATCatalogInfoFromContext
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x18], rax
lea rdx, str.CryptCATAdminReleaseContext
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x20], rax
lea rdx, str.CryptCATAdminReleaseCatalogContext
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x28], rax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x50
pop rdi
ret
call fcn.180144c64
int3
Function at 0x1800c84f0
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 0x31], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rbp + 0x1f], rax
movzx ebx, r8b
mov r15, rdx
mov rdi, rcx
mov qword [rbp - 0x29], rcx
xor r12d, r12d
mov r14d, r12d
mov dword [rbp - 0x35], r12d
test rdx, rdx
jne 0x1800c8561
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], 7
mov word [rcx], r12w
mov dword [rbp - 0x35], 1
jmp 0x1800c8731
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm6, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x11], xmm6
mov word [rbp - 0x21], r12w
mov word [rbp - 0x39], r12w
mov r9, r15
mov edx, 2
lea r8d, [rdx - 1]
lea rcx, [rbp - 0x39]
call fcn.18014b41c
cmp rax, 1
jne 0x1800c8702
movzx ecx, word [rbp - 0x39]
inc rcx
test bl, bl
je 0x1800c8614
mov eax, 2
mul rcx
mov rbx, 0xffffffffffffffff
cmovo rax, rbx
mov rcx, rax
call fcn.18011cac8
mov rsi, rax
movzx ecx, word [rbp - 0x39]
mov word [rax + rcx*2], r12w
movzx r8d, word [rbp - 0x39]
mov r9, r15
lea edx, [rbx + 3]
mov rcx, rax
call fcn.18014b41c
movzx ecx, word [rbp - 0x39]
cmp rax, rcx
jne 0x1800c86f5
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x1800c85f1
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp - 0x21]
call fcn.180003950
movdqu xmm6, xmmword [rbp - 0x11]
jmp 0x1800c86f5
call fcn.18011cac8
mov rsi, rax
movzx ecx, word [rbp - 0x39]
mov byte [rcx + rax], 0
movzx r8d, word [rbp - 0x39]
mov r9, r15
mov edx, 1
mov rcx, rax
call fcn.18014b41c
movzx ecx, word [rbp - 0x39]
cmp rax, rcx
jne 0x1800c86f5
xor r9d, r9d
lea r8, [r9 - 1]
mov rdx, rsi
lea rcx, [rbp - 1]
call fcn.180091670
mov rbx, rax
mov dword [rbp - 0x35], 2
lea rax, [rbp - 0x21]
cmp rax, rbx
je 0x1800c8695
lea rcx, [rbp - 0x21]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x21], xmm0
movups xmm6, xmmword [rbx + 0x10]
movdqu xmmword [rbp - 0x11], xmm6
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov r14d, 2
and r14d, 0xfffffffd
mov dword [rbp - 0x35], r14d
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x1800c86e3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800c86de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800c8761
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp + 0xf], xmm0
mov word [rbp - 1], r12w
test rsi, rsi
je 0x1800c8702
mov rcx, rsi
call fcn.18011ca94
movups xmm0, xmmword [rbp - 0x21]
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm6
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r12w
or r14d, 1
mov dword [rbp - 0x35], r14d
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r12w
mov rax, rdi
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.18011c650
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.180144c64
int3
Function at 0x1800c8de0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov edi, r8d
mov rbx, r9
mov rsi, rdx
mov rbp, rcx
test rcx, rcx
je 0x1800c8e3d
test rdx, rdx
je 0x1800c8e3d
test rbx, rbx
je 0x1800c8e3d
mov dword [r9], 0
test r8d, r8d
je 0x1800c8e39
call fcn.18016eab8
mov r8d, edi
mov r9, rbp
mov edx, 1
mov rcx, rsi
call fcn.18014b41c
cmp eax, edi
jne 0x1800c8e3d
mov dword [rbx], eax
xor eax, eax
jmp 0x1800c8e42
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret