joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14008ad80
Capabilities:
Terminate thread

Disassembly:
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov ebp, edx
mov rbx, rcx
lea rax, vtable.Creator::ConversionThread.0
mov qword [rcx], rax
xor esi, esi
cmp dword [rcx + 0x78], esi
je 0x14008ae30
mov dword [rcx + 0x78], 2
cmp qword [rcx + 0x88], rsi
je 0x14008adf9
mov rcx, qword [rcx + 0x80]
call qword [sym.imp.KERNEL32.dll_SetEvent]
nop
mov edx, 0x3e8
mov rcx, qword [rbx + 0x88]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
test eax, eax
je 0x14008adf9
xor edx, edx
mov rcx, qword [rbx + 0x88]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
nop
mov rcx, qword [rbx + 0x80]
test rcx, rcx
je 0x14008ae13
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov qword [rbx + 0x80], rsi
mov rcx, qword [rbx + 0x88]
test rcx, rcx
je 0x14008ae2d
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov qword [rbx + 0x88], rsi
mov dword [rbx + 0x78], esi
lea rdi, [rbx + 0x90]
mov rcx, qword [rdi + 0x38]
test rcx, rcx
je 0x14008ae51
mov rax, qword [rcx]
cmp rcx, rdi
setne dl
call qword [rax + 0x20]
nop
mov qword [rdi + 0x38], rsi
lea rcx, [rbx + 0x28]
call sub.MSVCP140.dll__Mtx_destroy_in_situ
nop
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x14008ae92
mov esi, 0xffffffff
mov eax, esi
lock xadd dword [rdi + 8], eax
cmp eax, 1
jne 0x14008ae92
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
nop
lock xadd dword [rdi + 0xc], esi
cmp esi, 1
jne 0x14008ae92
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rbx + 8]
call fcn.14008acb0
nop
lea rax, vtable.Creator::IConversionWatcher.0
mov qword [rbx], rax
test bpl, 1
je 0x14008aeba
mov edx, 0xd0
mov rcx, rbx
call fcn.140082ab0
nop
mov rax, rbx
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret

Function at 0x14008b840
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x1403644c8]
xor rax, rsp
mov qword [rsp + 0x38], rax
cmp qword [rcx + 0x88], 0
mov rbx, rcx
jne 0x14008b91e
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rbx + 0x80], rax
test rax, rax
je 0x14008b91e
mov qword [rsp + 0x58], rdi
pause
mov rax, qword [rbx + 0x80]
test rax, rax
setne dil
test rax, rax
je 0x14008b902
xor ecx, ecx
mov dword [rbx + 0x78], 3
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
lea r8, [0x14008afd0]
mov r9, rbx
mov dword [rsp + 0x20], ecx
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbx + 0x88], rax
test rax, rax
je 0x14008b8f7
pause
movzx eax, dil
mov rdi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400e39a0
add rsp, 0x40
pop rbx
ret
mov rcx, rbx
call fcn.14008af80
xor dil, dil
movzx eax, dil
mov rdi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400e39a0
add rsp, 0x40
pop rbx
ret
xor al, al
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400e39a0
add rsp, 0x40
pop rbx
ret
Function at 0x14008b940
Capabilities:
Terminate thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x88], 0
mov rbx, rcx
mov dword [rcx + 0x78], 2
mov dil, 1
je 0x14008b99b
mov rcx, qword [rcx + 0x80]
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov rcx, qword [rbx + 0x88]
mov edx, 0x3e8
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14008b99b
mov rcx, qword [rbx + 0x88]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TerminateThread]
xor dil, dil
mov rcx, qword [rbx + 0x80]
xor esi, esi
test rcx, rcx
je 0x14008b9b6
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 0x80], rsi
mov rcx, qword [rbx + 0x88]
test rcx, rcx
je 0x14008b9cf
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 0x88], rsi
mov dword [rbx + 0x78], esi
movzx eax, dil
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x1400905e0
Capabilities:
Terminate thread

Disassembly:
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x40], rbx
mov rbx, rcx
lea rax, vtable.Exchange::PipeAsyncBase.0
mov qword [rcx], rax
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
xor edi, edi
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
nop
test al, al
je 0x14009064e
mov eax, 1
xchg byte [rbx + 0x18], al
mov edx, 0xbb8
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop
test eax, eax
je 0x140090649
xor edx, edx
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
nop
mov eax, edi
xchg byte [rbx + 0x18], al
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140090662
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov qword [rbx + 8], rdi
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x140090699
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140090699
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
nop
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140090699
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
nop
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
Function at 0x1400924a0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x9c0]
sub rsp, 0xac0
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0xb00], rbx
mov rax, qword [0x1403644c8]
xor rax, rsp
mov qword [rbp + 0x9b0], rax
mov rsi, rdx
mov rbx, rcx
mov rax, qword [rcx]
call qword [rax + gethostname]
test al, al
jne 0x1400924f3
mov eax, 2
jmp 0x140092666
xor r14d, r14d
mov dword [rsp + 0x70], r14d
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.WS2_32.dll_recv]
mov r15, rax
xor edx, edx
mov r8d, 0x800
lea rcx, [rbp + 0x1b0]
call sub.VCRUNTIME140.dll_memset
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x70]
mov r8d, 0x800
lea rdx, [rbp + 0x1b0]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
test ebx, ebx
jne 0x140092559
cmp eax, 0xea
jne 0x1400925c6
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x140092616
mov rbx, qword [rsi + 8]
sub rbx, qword [rsi]
mov byte [rsp + 0x30], r14b
mov qword [rsp + 0x40], rsi
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x48], rcx
movaps xmm0, xmmword [rsp + 0x40]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rbx + rax]
lea r8, [rsp + 0x60]
mov rcx, rsi
call fcn.1400771e0
mov r8d, dword [rsp + 0x70]
mov rcx, qword [rsi]
add rcx, rbx
lea rdx, [rbp + 0x1b0]
call sub.VCRUNTIME140.dll_memcpy
cmp dword [rsp + 0x70], 0x800
jb 0x140092663
jmp 0x140092510
xor edx, edx
lea r14d, [rdx + 5]
mov r8d, 0x230
lea rcx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memset
xor r8d, r8d
lea edx, [r14 - 1]
lea rcx, [rbp - 0x80]
call fcn.14025b540
nop
lea rcx, [rbp - 0x80]
call fcn.14025c1a0
test al, al
je 0x140092614
lea rdx, str.Pipe_read_failed__lastError
lea rcx, [rbp - 0x80]
call fcn.140253210
mov edx, edi
mov rcx, rax
call fcn.140253100
nop
jmp 0x14009265a
xor edx, edx
lea r14d, [rdx + 5]
mov r8d, 0x230
lea rcx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memset
xor r8d, r8d
lea edx, [r14 - 1]
lea rcx, [rbp - 0x80]
call fcn.14025b540
nop
lea rcx, [rbp - 0x80]
call fcn.14025c1a0
test al, al
je 0x14009265a
lea rdx, str.Pipe_read_returned_zero_bytes
lea rcx, [rbp - 0x80]
call fcn.140253210
nop
lea rcx, [rbp - 0x80]
call fcn.140252b50
mov eax, r14d
mov rcx, qword [rbp + 0x9b0]
xor rcx, rsp
call fcn.1400e39a0
mov rbx, qword [rsp + 0xb00]
add rsp, 0xac0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x140092de0
Capabilities:
Write file on windows

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x280
lea rbp, [rsp + 0x30]
mov qword [rbp], 0xfffffffffffffffe
mov qword [rbp + 0x290], rbx
mov rax, qword [0x1403644c8]
xor rax, rbp
mov qword [rbp + 0x240], rax
mov r15, rdx
mov rsi, rcx
mov rax, qword [rcx]
call qword [rax + gethostname]
test al, al
jne 0x140092e2e
mov eax, 2
jmp 0x140092f55
mov rcx, qword [r15]
mov rax, qword [rcx]
xor r8d, r8d
xor edx, edx
call qword [rax + reloc.WS2_32.dll_htonl]
mov rdi, rax
add rdi, 0x10
je 0x140092e24
lea rax, [rdi + 0xf]
cmp rax, rdi
ja 0x140092e58
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1400e3930
sub rsp, rax
lea r14, [rsp + 0x30]
test r14, r14
jne 0x140092e77
lea eax, [r14 + 6]
jmp 0x140092f55
mov r8, rdi
xor edx, edx
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
mov rbx, qword [r15]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x18]
mov word [r14], ax
mov rax, qword [rbx]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
mov qword [r14 + 8], rax
mov rcx, qword [r15]
mov rax, qword [rcx]
lea r8, [rdi - 0x10]
lea rdx, [r14 + 0x10]
call qword [rax + reloc.WS2_32.dll_htonl]
xor ebx, ebx
mov dword [rbp + 8], ebx
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x28]
mov r9, qword [rax]
mov rcx, rax
call qword [r9 + reloc.WS2_32.dll_htonl]
mov qword [rsp + 0x20], rbx
lea r9, [rbp + 8]
mov r8d, edi
mov rdx, r14
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x140092ef4
cmp dword [rbp + 8], ebx
je 0x140092ef4
xor eax, eax
jmp 0x140092f55
xor edx, edx
mov r8d, 0x230
lea rcx, [rbp + 0x10]
call sub.VCRUNTIME140.dll_memset
xor r8d, r8d
lea edx, [r8 + 4]
lea rcx, [rbp + 0x10]
call fcn.14025b540
nop
lea rcx, [rbp + 0x10]
call fcn.14025c1a0
test al, al
je 0x140092f47
lea rdx, str.Pipe_write_filed__lastError
lea rcx, [rbp + 0x10]
call fcn.140253210
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rbx
call fcn.140253100
nop
lea rcx, [rbp + 0x10]
call fcn.140252b50
mov eax, 4
mov rcx, qword [rbp + 0x240]
xor rcx, rbp
call fcn.1400e39a0
mov rbx, qword [rbp + 0x290]
lea rsp, [rbp + 0x250]
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x1400935a0
Capabilities:
Create thread
Terminate thread

Disassembly:
push rdi
sub rsp, 0x280
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x298], rbx
mov rax, qword [0x1403644c8]
xor rax, rsp
mov qword [rsp + 0x270], rax
mov rbx, rcx
cmp qword [rcx + 8], 0
je 0x14009362b
xor edx, edx
mov r8d, 0x230
lea rcx, [rsp + 0x40]
call sub.VCRUNTIME140.dll_memset
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rsp + 0x40]
call fcn.14025b540
nop
lea rcx, [rsp + 0x40]
call fcn.14025c1a0
test al, al
je 0x14009361a
lea rdx, str.Thread_is_already_started
lea rcx, [rsp + 0x40]
call fcn.140253210
nop
lea rcx, [rsp + 0x40]
call fcn.140252b50
xor al, al
jmp 0x1400936ad
mov dword [rsp + 0x38], 0
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov r9, rbx
mov r8, qword [rcx + 0x30]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbx + 8], rax
test rax, rax
setne dil
test rax, rax
je 0x14009368d
mov edx, 0xbb8
mov rcx, qword [rbx + 0x10]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14009368d
mov edx, 0xffffffff
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
xor dil, dil
jmp 0x140093692
test dil, dil
jne 0x1400936a9
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400936a9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 8], 0
movzx eax, dil
mov rcx, qword [rsp + 0x270]
xor rcx, rsp
call fcn.1400e39a0
mov rbx, qword [rsp + 0x298]
add rsp, 0x280
pop rdi
ret
Function at 0x140093cd0
Capabilities:
Terminate thread

Disassembly:
push rbx
sub rsp, 0x20
mov rax, qword [rcx]
mov rbx, rcx
call qword [rax + reloc.WS2_32.dll_htonl]
test al, al
je 0x140093d0f
mov eax, 1
mov edx, 0xbb8
xchg byte [rbx + 0x18], al
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x140093d0a
mov rcx, qword [rbx + 8]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TerminateThread]
xor eax, eax
xchg byte [rbx + 0x18], al
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140093d26
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbx + 8], 0
add rsp, 0x20
pop rbx
ret

Function at 0x140094a50
Capabilities:
Connect pipe

Disassembly:
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rsi
mov rbx, rcx
mov rsi, qword [rcx + 0x20]
mov qword [rcx + 0x20], 0
mov rcx, qword [rcx + 0x10]
call sub.MSVCP140.dll__Mtx_lock
test eax, eax
je 0x140094a8c
mov ecx, eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
mov byte [rbx + 0x18], 1
mov rcx, qword [rbx + 8]
call sub.MSVCP140.dll__Cnd_signal
test eax, eax
je 0x140094aa4
mov ecx, eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
mov rcx, qword [rbx + 0x10]
call sub.MSVCP140.dll__Mtx_unlock
test eax, eax
je 0x140094ab8
mov ecx, eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
xor edx, edx
mov rcx, qword [rsi + 0x10]
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
je 0x140094acc
mov cl, 1
jmp 0x140094ada
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x217
sete cl
mov rax, qword [rsi]
xchg byte [rax], cl
mov rcx, qword [rsi + 0x18]
call qword [sym.imp.KERNEL32.dll_SetEvent]
call sub.MSVCP140.dll__Cnd_do_broadcast_at_thread_exit
mov rbx, qword [rsi + 8]
test rbx, rbx
je 0x140094b23
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140094b23
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140094b23
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
mov edx, 0x20
mov rcx, rsi
call fcn.140082ab0
nop
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret

Function at 0x140094e10
Capabilities:
Delete file
Query environment variable

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
lea rcx, str.NITRO_LOG_LEVEL
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll_getenv]
test rax, rax
je 0x140094e5a
xor ecx, ecx
lea r8, str.trace
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [rax + rcx]
inc rcx
cmp dl, byte [r8 + rcx - 1]
jne 0x140094e5a
cmp rcx, 6
jne 0x140094e40
add rsp, 0x20
pop rbx
ret
cmp qword [rbx + 0x18], 8
jb 0x140094e64
mov rbx, qword [rbx]
mov rcx, rbx
add rsp, 0x20
pop rbx
jmp qword [sym.imp.KERNEL32.dll_DeleteFileW]
Function at 0x140097360
Capabilities:
Delete file

Disassembly:
add rcx, 0x10
jmp 0x140097360
push rbx
sub rsp, 0x50
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rbx, rcx
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_FlushFileBuffers]
nop
mov rcx, qword [rbx]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140097397
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov qword [rbx], 0xffffffffffffffff
cmp byte [rbx + 0x28], 0
jne 0x1400973f0
movdqa xmm0, xmmword [0x14027bc70]
movdqu xmmword [rsp + 0x38], xmm0
xor eax, eax
mov word [rsp + 0x28], ax
lea r8d, [rax + 0xe]
lea rdx, str.KeepSpoolFiles
lea rcx, [rsp + 0x28]
call fcn.140086f50
nop
lea rcx, [rsp + 0x28]
call fcn.1400c0bd0
nop
test al, al
je 0x1400973f0
lea rcx, [rbx + 8]
cmp qword [rcx + 0x18], 8
jb 0x1400973e5
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
mov byte [rbx + 0x28], 1
lea rcx, [rbx + 8]
call fcn.1400867f0
nop
add rsp, 0x50
pop rbx
ret

Function at 0x140097440
Capabilities:
Delete file

Disassembly:
push rbx
sub rsp, 0x40
cmp byte [rcx + 0x28], 0
mov rbx, rcx
jne 0x14009749f
xor eax, eax
mov qword [rsp + 0x38], 7
lea rdx, str.KeepSpoolFiles
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x20]
mov word [rsp + 0x20], ax
lea r8d, [rax + 0xe]
call fcn.140086f50
lea rcx, [rsp + 0x20]
call fcn.1400c0bd0
test al, al
je 0x14009749f
cmp qword [rbx + 0x20], 8
lea rcx, [rbx + 8]
jb 0x140097495
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [rbx + 0x28], 1
add rsp, 0x40
pop rbx
ret

Function at 0x140098270
Capabilities:
Copy file

Disassembly:
sub rsp, 0x28
mov rdx, qword [rcx + 0x10]
add rdx, 0x48
cmp qword [rdx + 0x18], 8
jb 0x140098286
mov rdx, qword [rdx]
mov rcx, qword [rcx + 8]
cmp qword [rcx + 0x18], 8
jb 0x140098294
mov rcx, qword [rcx]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
cmp eax, 1
sete al
add rsp, 0x28
ret
Function at 0x14009e4f0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rdi
push r14
push r15
sub rsp, 0x40
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rsi
mov rdi, r9
mov r10, r8
mov r14, rdx
mov rsi, rcx
movzx r9d, byte [r8]
movabs rax, 0xcbf29ce484222325
xor r9, rax
movabs rcx, 0x100000001b3
imul r9, rcx
movzx eax, byte [r8 + 1]
xor r9, rax
imul r9, rcx
movzx eax, byte [r8 + 2]
xor r9, rax
imul r9, rcx
movzx eax, byte [r8 + 3]
xor r9, rax
imul r9, rcx
mov r8, qword [rsi + 0x30]
and r8, r9
add r8, r8
mov rcx, qword [rsi + 0x18]
mov rbx, qword [rsi + 8]
mov rax, qword [rcx + r8*8]
cmp rbx, rax
je 0x14009e5da
mov rbx, qword [rcx + r8*8 + 8]
mov rbx, qword [rbx]
cmp rbx, rax
je 0x14009e5da
mov rbx, qword [rbx + 8]
mov ecx, dword [rbx + 0x10]
cmp dword [r10], ecx
jne 0x14009e588
mov rcx, qword [rdi + 8]
mov rax, qword [rdi]
mov qword [rcx], rax
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
dec qword [rsi + 0x10]
lea rcx, [rdi + 0x18]
call fcn.1400827c0
nop
mov edx, gethostname
mov rcx, rdi
call fcn.140082ab0
nop
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x14009e70b
mov qword [rsp + 0x20], rdi
mov rax, qword [rdi]
cmp rbx, rax
je 0x14009e614
mov rcx, qword [rdi + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rbx
mov rcx, qword [rbx + 8]
mov qword [rcx], rdi
mov rdx, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [rbx + 8], rcx
mov rcx, qword [rdi + 8]
mov qword [rax + 8], rcx
mov qword [rdi + 8], rdx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8]
cmp rax, qword [rsi + 8]
jne 0x14009e631
mov qword [rdx + r8*8], rdi
mov rax, qword [rsi + 0x18]
mov qword [rax + r8*8 + 8], rdi
jmp 0x14009e660
cmp rax, rbx
jne 0x14009e63c
mov qword [rdx + r8*8], rdi
jmp 0x14009e660
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax]
mov qword [rdx + r8*8 + 8], rcx
cmp rcx, rdi
je 0x14009e660
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + r8*8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8*8 + 8], rcx
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x38]
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140280f34]
test rax, rax
jns 0x14009e681
addss xmm0, xmm1
xorps xmm2, xmm2
cvtsi2ss xmm2, rdx
test rdx, rdx
jns 0x14009e692
addss xmm2, xmm1
divss xmm0, xmm2
comiss xmm0, dword [rsi]
jbe 0x14009e700
cmp rdx, 0x200
jae 0x14009e6ae
lea rdx, [rdx*8]
jmp 0x14009e6c0
movabs rax, 0xfffffffffffffff
cmp rdx, rax
jae 0x14009e6c0
add rdx, rdx
mov rcx, rsi
call fcn.14009f990
mov rax, qword [rsi + 8]
cmp qword [rax], rax
je 0x14009e700
mov r15, qword [rax + 8]
nop word [rax + rax]
mov rbx, qword [rsi + 8]
mov rbx, qword [rbx]
lea r8, [rbx + 0x10]
mov r9, rbx
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.14009e4f0
cmp rbx, r15
jne 0x14009e6e0
mov qword [r14], rdi
mov byte [r14 + 8], 1
mov rax, r14
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rdi
ret
Function at 0x14009e720
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rsi
mov rdi, r8
mov rsi, rdx
mov r9, rcx
movzx r8d, byte [r8 + 0x10]
movabs rax, 0xcbf29ce484222325
xor r8, rax
movabs rcx, 0x100000001b3
imul r8, rcx
movzx eax, byte [rdi + 0x11]
xor r8, rax
imul r8, rcx
movzx eax, byte [rdi + 0x12]
xor r8, rax
imul r8, rcx
movzx eax, byte [rdi + 0x13]
xor r8, rax
imul r8, rcx
mov rdx, qword [r9 + 0x30]
and rdx, r8
shl rdx, 4
mov rcx, qword [r9 + 0x18]
add rcx, rdx
cmp qword [rcx + 8], rdi
jne 0x14009e7c0
cmp qword [rcx], rdi
jne 0x14009e7b6
mov rax, qword [r9 + 8]
mov qword [rcx], rax
mov rax, qword [r9 + 8]
mov rcx, qword [r9 + 0x18]
mov qword [rcx + rdx + 8], rax
jmp 0x14009e7cb
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
jmp 0x14009e7cb
cmp qword [rcx], rdi
jne 0x14009e7cb
mov rax, qword [rdi]
mov qword [rcx], rax
mov rbx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rax], rbx
mov rcx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
dec qword [r9 + 0x10]
lea rcx, [rdi + 0x18]
call fcn.1400827c0
nop
mov edx, gethostname
mov rcx, rdi
call fcn.140082ab0
nop
mov qword [rsi], rbx
mov rax, rsi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret

Function at 0x14009f680
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x270
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rax, qword [0x1403644c8]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov r9d, edx
mov rbx, rcx
mov eax, edx
shr eax, 8
movzx r8d, al
movzx eax, dl
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs rdx, 0x100000001b3
imul rax, rdx
xor r8, rax
imul r8, rdx
mov eax, r9d
shr eax, 0x10
movzx ecx, al
xor r8, rcx
imul r8, rdx
mov eax, r9d
shr rax, 0x18
xor r8, rax
imul r8, rdx
and r8, qword [0x140370910]
add r8, r8
mov r11, qword [0x1403708f8]
mov r10, qword [r11 + r8*8]
mov rdx, r10
mov rcx, qword [0x1403708e8]
cmp r10, rcx
jne 0x14009f71f
mov rax, rcx
jmp 0x14009f727
mov rax, qword [r11 + r8*8 + 8]
mov rax, qword [rax]
cmp rdx, rax
je 0x14009f756
cmp dword [rdx + 0x10], r9d
je 0x14009f737
mov rdx, qword [rdx]
jmp 0x14009f715
cmp rdx, rcx
je 0x14009f756
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14009f7b0
add rdx, 0x18
call fcn.1400df500
test al, al
je 0x14009f7b0
mov al, 1
jmp 0x14009f7b2
xor r8d, r8d
lea edx, [r8 + 4]
lea rcx, [rsp + 0x30]
call fcn.14025b540
nop
lea rcx, [rsp + 0x30]
call fcn.14025c1a0
test al, al
je 0x14009f7a6
lea rdx, str.nitro::licensing::license_nalpeiron_v10::IsModuleActive
lea rcx, [rsp + 0x30]
call fcn.140253210
lea rdx, [0x140280d50]
mov rcx, rax
call fcn.140253210
lea rdx, str.Feature_Id_for_module_is_missing
mov rcx, rax
call fcn.140253210
nop
lea rcx, [rsp + 0x30]
call fcn.140252b50
xor al, al
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.1400e39a0
add rsp, 0x270
pop rbx
ret
Function at 0x1400a7ee0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x60
mov rax, qword [0x1403644c8]
xor rax, rsp
mov qword [rsp + 0x58], rax
cmp qword [rcx + 0x68], 0
mov rbx, rcx
je 0x1400a7f8c
cmp byte [rcx + 0x71], 0
je 0x1400a7f8c
mov rax, qword [rcx]
mov edx, 0xffffffff
call qword [rax + 0x18]
cmp eax, 0xffffffff
je 0x1400a7f4d
mov rcx, qword [rbx + 0x68]
lea rax, [rsp + 0x30]
lea rdx, [rbx + 0x74]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x38]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::codecvt_char__char__struct__Mbstatet_::unshift_struct__Mbstatet____ptr64__char____ptr64__char____ptr64__char____ptr64____ptr64_const___ptr64]
test eax, eax
je 0x1400a7f51
sub eax, 1
je 0x1400a7f55
sub eax, 2
je 0x1400a7f8c
xor al, al
jmp 0x1400a7f8e
mov byte [rbx + 0x71], 0
mov rdi, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
sub rdi, rax
je 0x1400a7f83
mov r9, qword [rbx + 0x80]
lea rcx, [rsp + 0x38]
mov r8, rdi
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rdi, rax
jne 0x1400a7f4d
cmp byte [rbx + 0x71], 0
sete al
jmp 0x1400a7f8e
mov al, 1
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1400e39a0
mov rbx, qword [rsp + 0x78]
add rsp, 0x60
pop rdi
ret