joyce8/EMBER2024-capa huggingface dataset:
Function at 0x75b8a6d00
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
or r13d, 0xffffffff
mov rbx, r9
mov edi, r8d
mov r12, rdx
mov ebp, ecx
test r9, r9
je 0x75b8a6d33
mov dword [r9], r13d
test ebp, ebp
je 0x75b8a6eaa
test r12, r12
je 0x75b8a6eaa
test rbx, rbx
je 0x75b8a6eaa
cmp edi, r13d
je 0x75b8a6d5d
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov r14d, eax
jmp 0x75b8a6d60
xor r14d, r14d
mov r15d, edi
mov r9d, edi
xor r8d, r8d
mov rdx, r12
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
cmp eax, ebp
jb 0x75b8a6ea4
cmp eax, 0x80
jb 0x75b8a6d91
lea ecx, [rbp + 0x80]
cmp eax, ecx
jb 0x75b8a6ea4
cmp eax, 0x102
je 0x75b8a6e61
cmp eax, r13d
jne 0x75b8a6e9d
call fcn.75b89abc4
mov ecx, eax
mov esi, eax
call fcn.75b89cbe0
test eax, eax
je 0x75b8a6e68
mov rcx, qword [0x75b91c090]
lea rax, [0x75b91c090]
cmp rcx, rax
je 0x75b8a6dec
test byte [rcx + 0x1c], 1
je 0x75b8a6dec
mov rcx, qword [rcx + 0x10]
lea r8, [0x75b8f7530]
mov edx, 0x11
mov r9d, esi
call fcn.75b803b0c
mov r8, rbx
mov rdx, r12
mov ecx, ebp
call fcn.75b8a6c3c
test eax, eax
js 0x75b8a6eaf
cmp dword [rbx], r13d
jne 0x75b8a6ea6
cmp edi, r13d
jne 0x75b8a6e1c
mov ecx, 0xfa
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x75b8a6e53
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r14d
cmp eax, edi
jae 0x75b8a6e61
mov ecx, edi
sub ecx, eax
cmp ecx, 0xfa
jb 0x75b8a6e5b
mov ecx, 0xfa
call qword [sym.imp.KERNEL32.dll_Sleep]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, r14d
cmp eax, edi
jae 0x75b8a6e61
mov r15d, edi
sub r15d, eax
mov r9d, r15d
jmp 0x75b8a6d66
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, 0x80070102
jmp 0x75b8a6eaf
mov rcx, qword [0x75b91c090]
lea rax, [0x75b91c090]
cmp rcx, rax
je 0x75b8a6e99
test byte [rcx + 0x1c], 1
je 0x75b8a6e99
mov rcx, qword [rcx + 0x10]
lea r8, [0x75b8f7530]
mov edx, 0x10
mov r9d, esi
call fcn.75b803b0c
mov eax, esi
jmp 0x75b8a6eaf
mov eax, 0x8000ffff
jmp 0x75b8a6eaf
mov dword [rbx], eax
xor eax, eax
jmp 0x75b8a6eaf
mov eax, 0x80070057
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x75b8a6fe4
Capabilities:
Extract resource via kernel32 functions

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 r12
push r14
push r15
sub rsp, 0x20
mov r15, qword [rsp + 0x60]
xor r12d, r12d
mov qword [r9], r12
mov r14, r9
mov edi, r8d
mov rsi, rdx
mov rbp, rcx
mov qword [r15], r12
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x75b8a7065
call fcn.75b89abc4
mov ebx, eax
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a705e
test byte [rcx + 0x1c], 1
je 0x75b8a705e
lea edx, [r12 + 0x13]
mov rcx, qword [rcx + 0x10]
lea r8, [0x75b8f7530]
mov r9d, ebx
call fcn.75b803b0c
mov eax, ebx
jmp 0x75b8a719d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
jne 0x75b8a709d
call fcn.75b89abc4
mov ebx, eax
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a705e
test byte [rcx + 0x1c], 1
je 0x75b8a705e
mov edx, 0x14
jmp 0x75b8a704b
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_SizeofResource]
test eax, eax
jne 0x75b8a70d7
call fcn.75b89abc4
mov ebx, eax
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a705e
test byte [rcx + 0x1c], 1
je 0x75b8a705e
mov edx, 0x15
jmp 0x75b8a704b
mov ecx, eax
add rcx, rbx
cmp rbx, rcx
jbe 0x75b8a7109
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a7187
test byte [rcx + 0x1c], 1
je 0x75b8a7187
mov edx, 0x16
jmp 0x75b8a7174
mov edx, edi
mov r8d, r12d
and edx, 0xf
jbe 0x75b8a712b
cmp rbx, rcx
jae 0x75b8a7130
movzx eax, word [rbx]
inc r8d
lea rbx, [rbx + rax*2]
add rbx, 2
cmp r8d, edx
jb 0x75b8a7113
cmp rbx, rcx
jb 0x75b8a7150
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a7187
test byte [rcx + 0x1c], 1
je 0x75b8a7187
mov edx, 0x17
jmp 0x75b8a7174
cmp word [rbx], r12w
jne 0x75b8a718e
mov rcx, qword [0x75b91c090]
lea rdx, [0x75b91c090]
cmp rcx, rdx
je 0x75b8a7187
test byte [rcx + 0x1c], 2
je 0x75b8a7187
mov edx, 0x18
mov rcx, qword [rcx + 0x10]
lea r8, [0x75b8f7530]
mov r9d, edi
call fcn.75b803a60
mov eax, 0x80070714
jmp 0x75b8a719d
movzx eax, word [rbx]
mov qword [r14], rax
lea rax, [rbx + 2]
mov qword [r15], rax
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
ret
Function at 0x75b8aa0d0
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x2f]
sub rsp, 0xb0
mov rax, qword [0x75b923ae8]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov r14, qword [rbp + 0x7f]
mov rdi, r9
mov r15, r8
mov rbx, rdx
sub ecx, 1
je 0x75b8aa21e
sub ecx, 1
je 0x75b8aa1cd
sub ecx, 1
je 0x75b8aa177
cmp ecx, 1
jne 0x75b8aa259
lea r8d, [rcx + 0x7f]
xor edx, edx
lea rcx, [rbp - 0x61]
call fcn.75b8c0190
cmp qword [rdi], 0x20
jb 0x75b8aa259
mov esi, ebx
cmp rsi, rbx
jne 0x75b8aa259
lea rcx, [rbp - 0x61]
call fcn.75b8afe24
mov r8d, esi
lea rcx, [rbp - 0x61]
mov rdx, r15
call fcn.75b8afe44
mov rdx, r14
lea rcx, [rbp - 0x61]
call fcn.75b8aff24
mov qword [rdi], 0x20
jmp 0x75b8aa259
xor edx, edx
lea rcx, [rbp - 0x61]
mov r8d, 0x80
call fcn.75b8c0190
cmp qword [rdi], 0x14
jb 0x75b8aa259
mov esi, ebx
cmp rsi, rbx
jne 0x75b8aa259
lea rcx, [rbp - 0x61]
call fcn.75b8b18e0
mov r8d, esi
lea rcx, [rbp - 0x61]
mov rdx, r15
call fcn.75b8b1910
mov rdx, r14
lea rcx, [rbp - 0x61]
call fcn.75b8b1930
mov qword [rdi], 0x14
jmp 0x75b8aa259
xor edx, edx
lea rcx, [rbp - 0x61]
lea r8d, [rdx + 0x70]
call fcn.75b8c0190
cmp qword [rdi], 0x10
jb 0x75b8aa259
mov r9d, ebx
cmp r9, rbx
jne 0x75b8aa259
movups xmm0, xmmword [0x75b8f7c18]
mov r8, r15
lea rdx, [rbp - 0x61]
lea rcx, [0x75b8d5de0]
movdqu xmmword [rbp - 1], xmm0
call fcn.75b8b373c
mov rdx, r14
lea rcx, [rbp - 0x61]
call fcn.75b8b2c60
mov qword [rdi], 0x10
jmp 0x75b8aa259
cmp qword [r9], 4
jb 0x75b8aa259
xor r8d, r8d
or edx, 0xffffffff
test rbx, rbx
je 0x75b8aa24f
movzx ecx, byte [r15 + r8]
inc r8
movzx eax, dl
xor rcx, rax
shr edx, 8
lea rax, [0x75b8f7550]
xor edx, dword [rax + rcx*4]
cmp r8, rbx
jb 0x75b8aa22f
mov qword [r9], 4
mov dword [r14], edx
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.75b8bde70
mov rbx, qword [rsp + 0xe0]
add rsp, 0xb0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x75b8aa490
Capabilities:
Check for time delay via gettickcount

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, 0x20
mov esi, r8d
mov rbx, rdx
mov rdi, rcx
lea rbp, [rcx + 0x10]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [rdi + 0x90], 0
je 0x75b8aa4f2
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
movabs r10, 0xa489b63f70540970
mov rcx, rbx
mov rax, qword [rbx + 0x18]
call qword [0x75b8e0a70]
mov eax, 0x800703e3
jmp 0x75b8aa5e1
lea r14, [rdi + 0x78]
mov rax, qword [r14]
cmp qword [rdi + 0x80], rax
jae 0x75b8aa543
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [rdi + 0x9c]
cmp ecx, 0x249f0
jb 0x75b8aa543
mov dword [rdi + 0x9c], eax
mov rcx, qword [rdi + 0x70]
mov rax, qword [rcx]
movabs r10, 0xf9cd97f154508970
mov r8, r14
mov rdx, qword [rdi + 0x80]
mov rax, qword [rax + 0x10]
call qword [0x75b8e0a70]
lea rdx, [rdi + 0x38]
cmp qword [rbx], rbx
jne 0x75b8aa58a
sub esi, 1
je 0x75b8aa570
cmp esi, 8
je 0x75b8aa56a
mov rax, qword [rdx + 8]
mov qword [rbx], rdx
mov qword [rbx + 8], rax
mov qword [rax], rbx
mov qword [rdx + 8], rbx
jmp 0x75b8aa586
lea rcx, [rdx + 0x20]
jmp 0x75b8aa574
lea rcx, [rdx + 0x10]
mov rax, qword [rcx + 8]
mov qword [rbx], rcx
mov qword [rbx + 8], rax
mov qword [rax], rbx
mov qword [rcx + 8], rbx
inc qword [rdx + 0x30]
mov rax, qword [rdi + 0x88]
cmp qword [r14], rax
jb 0x75b8aa5a3
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor eax, eax
jmp 0x75b8aa5e1
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rdi + 0x9c], eax
inc qword [r14]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [rdi + 0x70]
mov rax, qword [rcx]
movabs r10, 0x975487d178dc3970
mov rax, qword [rax + 8]
call qword [0x75b8e0a70]
neg al
sbb eax, eax
not eax
and eax, 0x800703e3
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret

Function at 0x75b8ab560
Capabilities:
Get thread local storage value

Disassembly:
push rbx
sub rsp, 0x20
mov rax, qword [0x75b925318]
mov rbx, rcx
mov ecx, dword [rax + 0x3c]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdx, rax
xor eax, eax
test rdx, rdx
je 0x75b8ab595
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rdx + 0x50]
jae 0x75b8ab595
mov rax, qword [rdx + 0x58]
mov rax, qword [rax + rcx*8]
add rsp, 0x20
pop rbx
ret
Function at 0x75b8ab5b0
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor r13d, r13d
mov r14, r8
mov r12, rdx
mov r15, rcx
test r8, r8
je 0x75b8ab5d8
mov qword [r8], r13
mov rbp, qword [0x75b925318]
mov ecx, dword [rbp + 0x3c]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
test rax, rax
jne 0x75b8ab6d6
lea rdx, [rsp + 0x78]
mov qword [rsp + 0x78], 8
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x70], r13
call fcn.75b8aba38
mov esi, eax
test eax, eax
jns 0x75b8ab636
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x75b8ab673
mov rcx, rbx
call fcn.75b8aaee4
lea edx, [rdi + 0x60]
mov rcx, rbx
call fcn.75b8bdec8
jmp 0x75b8ab673
mov rdi, qword [rsp + 0x70]
mov ecx, dword [rbp + 0x3c]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x75b8ab67a
call fcn.75b89abc4
mov esi, eax
test rdi, rdi
je 0x75b8ab66c
mov rcx, rdi
call fcn.75b8aaee4
mov edx, 0x60
mov rcx, rdi
call fcn.75b8bdec8
mov rdi, r13
test esi, esi
jns 0x75b8ab6d6
mov eax, esi
jmp 0x75b8ab72c
lea rcx, [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rbp + 0x98]
mov rax, qword [rdx + 8]
lea rcx, [rbp + 0x10]
mov qword [rdi], rdx
mov qword [rdi + 8], rax
mov qword [rax], rdi
mov rsi, qword [rbp + 0xa8]
test rsi, rsi
mov qword [rdx + 8], rdi
mov qword [rbp + 0xa8], r13
cmove rsi, r13
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x75b8ab6d6
mov rcx, rsi
call fcn.75b8aaee4
mov edx, 0x60
mov rcx, rsi
call fcn.75b8bdec8
mov rbx, qword [r15 + 0x10]
cmp rbx, qword [rdi + 0x50]
jb 0x75b8ab6f0
lea rdx, [rbx + 1]
mov rcx, rdi
call fcn.75b8aaf5c
test eax, eax
js 0x75b8ab72c
mov rcx, qword [rdi + 0x58]
test r14, r14
je 0x75b8ab702
mov rax, qword [rcx + rbx*8]
mov qword [r14], rax
jmp 0x75b8ab721
mov rcx, qword [rcx + rbx*8]
test rcx, rcx
je 0x75b8ab721
mov rax, qword [rcx]
movabs r10, 0xaf953ef31edb3970
mov rax, qword [rax]
call qword [0x75b8e0a70]
mov rax, qword [rdi + 0x58]
mov qword [rax + rbx*8], r12
mov eax, r13d
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x75b8ab8f0
Capabilities:
Allocate thread local storage

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x20
and qword [rbp + 0x30], 0
lea rdx, [0x75b8f7950]
mov rsi, rcx
lea rcx, [rbp + 0x30]
call fcn.75b8a6590
mov ebx, eax
test eax, eax
js 0x75b8ab927
mov ebx, 1
jmp 0x75b8aba08
cmp eax, 0x80070002
jne 0x75b8aba1b
and qword [rbp + 0x28], 0
lea rcx, [rbp + 0x28]
call fcn.75b8abbf0
mov ebx, eax
test eax, eax
jns 0x75b8ab960
mov rax, qword [rbp + 0x28]
test rax, rax
je 0x75b8aba1b
or ecx, 0xffffffff
lock xadd dword [rax + 8], ecx
sub ecx, 1
jmp 0x75b8ab988
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
mov rdi, qword [rbp + 0x28]
mov dword [rdi + 0x3c], eax
cmp eax, 0xffffffff
jne 0x75b8ab9af
call fcn.75b89abc4
mov ebx, eax
test eax, eax
jns 0x75b8ab9af
or eax, 0xffffffff
lock xadd dword [rdi + 8], eax
sub eax, 1
jg 0x75b8aba1b
mov rcx, qword [rbp + 0x28]
mov rax, qword [rcx]
movabs r10, 0xe5453fe31659f270
mov rax, qword [rax]
mov edx, 1
call qword [0x75b8e0a70]
jmp 0x75b8aba1b
lea r9, [rbp + 0x30]
mov rdx, rdi
lea r8, [0x75b81a720]
lea rcx, [0x75b8f7950]
call fcn.75b8a62d0
mov ebx, eax
test eax, eax
js 0x75b8ab9d4
cmp eax, 1
jne 0x75b8aba08
test rdi, rdi
je 0x75b8aba04
or eax, 0xffffffff
lock xadd dword [rdi + 8], eax
sub eax, 1
jg 0x75b8aba04
mov rax, qword [rdi]
movabs r10, 0xe5453fe31659f270
mov rax, qword [rax]
mov edx, 1
mov rcx, rdi
call qword [0x75b8e0a70]
test ebx, ebx
js 0x75b8aba1b
mov rax, qword [rbp + 0x30]
mov rcx, qword [rax]
test rcx, rcx
je 0x75b8aba18
lock inc dword [rcx + 8]
mov qword [rsi], rcx
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x75b8aba29
call fcn.75b8a67d0
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
pop rsi
pop rbp
ret

Function at 0x75b8aff24
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov r8d, dword [rcx]
lea rsi, [rcx + 0x20]
and qword [rsp + 0x40], 0
lea rbx, [rcx + 0x60]
mov r14, rdx
mov rdi, rcx
mov ebp, 0x40
mov byte [r8 + rcx + 0x20], 0x80
inc r8d
cmp r8d, 0x38
jbe 0x75b8aff9b
mov edx, ebp
mov eax, r8d
add rcx, 0x20
sub edx, r8d
add rcx, rax
call fcn.75b8cbbd0
test byte [0x75b923bc0], 0x42
lea r9, [rsp + 0x40]
mov r8d, ebp
mov rdx, rsi
mov rcx, rbx
jne 0x75b8aff93
call fcn.75b8b151c
jmp 0x75b8aff98
call fcn.75b8b003c
xor r8d, r8d
mov edx, ebp
mov eax, r8d
lea rcx, [rdi + 0x20]
sub edx, r8d
add rcx, rax
call fcn.75b8cbbd0
mov rax, qword [rdi + 0x10]
lea r9, [rsp + 0x40]
shl rax, 3
mov r8, rbp
test byte [0x75b923bc0], 0x42
mov rdx, rsi
bswap rax
mov qword [rdi + 0x58], rax
mov rcx, rbx
jne 0x75b8affdc
call fcn.75b8b151c
jmp 0x75b8affe1
call fcn.75b8b003c
mov rcx, rbx
mov r8d, 4
mov rax, qword [rcx]
lea rcx, [rcx + 8]
rol rax, 0x20
bswap rax
mov qword [r14], rax
lea r14, [r14 + 8]
sub r8, 1
jne 0x75b8affea
mov edx, 0x80
mov rcx, rdi
call fcn.75b8cbbd0
movups xmm0, xmmword [0x75b8f7ad8]
mov rbp, qword [rsp + 0x50]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [0x75b8f7ae8]
movups xmmword [rbx + 0x10], xmm1
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
Function at 0x75b8b38d0
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
movsxd r8, dword [0x75b80003c]
lea rbx, [0x75b800000]
add r8, rbx
mov rsi, rdx
mov ebp, ecx
cmp dword [r8 + 0x84], 0xd
jbe 0x75b8b394e
mov r9d, dword [r8 + 0xf0]
test r9d, r9d
je 0x75b8b394e
movzx eax, word [r8 + 0x14]
lea rcx, [r8 + 0x18]
movzx r11d, word [r8 + 6]
add rcx, rax
mov r10d, dword [r9 + rbx + 0xc]
xor edx, edx
test r11d, r11d
je 0x75b8b394e
mov r9d, dword [rcx + 0xc]
cmp r10d, r9d
jb 0x75b8b3943
mov r8d, dword [rcx + 8]
lea eax, [r9 + r8]
cmp r10d, eax
jb 0x75b8b3969
inc edx
add rcx, 0x28
cmp edx, r11d
jb 0x75b8b392d
mov dword [rsi], 4
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rdi, r9
add rdi, rbx
je 0x75b8b394e
cmp dword [0x75b925b28], 0
jne 0x75b8b39a1
cmp dword [rcx + 0x24], 0
mov dword [0x75b925b28], 1
jl 0x75b8b3991
mov ecx, 0x19
int 0x29
mov rdx, r8
mov rcx, rdi
mov rbx, r8
call fcn.75b8b3838
jmp 0x75b8b39a4
mov rbx, r8
mov r9, rsi
mov r8d, ebp
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x75b8b3954
lea ecx, [rax + 0x19]
int 0x29
jmp 0x75b8b3954

Function at 0x75b8b84d0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x20
cmp qword [rcx + 0x68], 0
mov rbx, r8
mov r15, rdx
mov rdi, rcx
je 0x75b8b84ff
call fcn.75b8b8e10
jmp 0x75b8b8577
mov rax, qword [rcx + 0x40]
mov rsi, rbx
mov r9, qword [rax]
test r9, r9
je 0x75b8b8516
mov rax, qword [rcx + 0x58]
mov ecx, dword [rax]
jmp 0x75b8b8518
xor ecx, ecx
movsxd rbp, ecx
test rbx, rbx
jle 0x75b8b8571
test ecx, ecx
jle 0x75b8b8551
cmp rbx, rbp
mov rcx, r9
cmovl rbp, rbx
mov r8, rbp
call fcn.75b8cb300
mov rax, qword [rdi + 0x58]
add r15, rbp
sub rbx, rbp
sub dword [rax], ebp
mov rcx, qword [rdi + 0x40]
movsxd rax, ebp
add qword [rcx], rax
test rbx, rbx
jle 0x75b8b8571
mov r9, qword [rdi + 0x80]
test r9, r9
je 0x75b8b8571
mov r8, rbx
mov edx, 1
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
sub rbx, rax
sub rsi, rbx
mov rax, rsi
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
Function at 0x75b8b85a0
Capabilities:
Read file on windows

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, 0x20
mov rbp, r8
mov r14, rdx
mov rdi, rcx
test r8, r8
jg 0x75b8b85ce
xor eax, eax
jmp 0x75b8b86b6
cmp qword [rcx + 0x68], 0
je 0x75b8b85df
call fcn.75b8b8ef0
jmp 0x75b8b86b6
mov rax, qword [rcx + 0x38]
mov rsi, rbp
mov rdx, qword [rax]
test rdx, rdx
je 0x75b8b85f6
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x75b8b85f8
xor ecx, ecx
movsxd rax, ecx
test ecx, ecx
je 0x75b8b862a
cmp rax, rbp
mov rbx, rbp
mov rcx, r14
cmovb rbx, rax
mov r8, rbx
call fcn.75b8cb300
mov rax, qword [rdi + 0x50]
add r14, rbx
sub rsi, rbx
sub dword [rax], ebx
mov rcx, qword [rdi + 0x38]
movsxd rax, ebx
add qword [rcx], rax
cmp qword [rdi + 0x80], 0
je 0x75b8b86b0
mov r8, qword [rdi + 0x18]
lea rax, [rdi + 0x70]
cmp qword [r8], rax
jne 0x75b8b8661
mov rcx, qword [rdi + 0x88]
mov rdx, qword [rdi + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rdi + 0x38]
mov qword [rax], rcx
mov rax, qword [rdi + 0x50]
mov dword [rax], edx
mov ebx, 0xfff
jmp 0x75b8b868b
mov r9, qword [rdi + 0x80]
mov r8, rbx
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
add r14, rax
sub rsi, rax
cmp rax, rbx
jne 0x75b8b86b0
cmp rsi, rbx
ja 0x75b8b8668
test rsi, rsi
je 0x75b8b86b0
mov r9, qword [rdi + 0x80]
mov r8, rsi
mov edx, 1
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub rsi, rax
sub rbp, rsi
mov rax, rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x75b8b8b10
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x47]
sub rsp, 0x90
mov rax, qword [0x75b923ae8]
xor rax, rsp
mov qword [rbp + 0x3f], rax
or edi, 0xffffffff
mov esi, edx
mov rbx, rcx
cmp edx, edi
jne 0x75b8b8b4b
xor eax, eax
jmp 0x75b8b8c89
mov rax, qword [rcx + 0x40]
xor r14d, r14d
cmp qword [rax], r14
je 0x75b8b8b87
mov rdx, qword [rcx + 0x58]
movsxd r8, dword [rdx]
mov rcx, r8
add rcx, qword [rax]
cmp qword [rax], rcx
jae 0x75b8b8b87
lea ecx, [r8 - 1]
mov eax, esi
mov dword [rdx], ecx
mov rdx, qword [rbx + 0x40]
mov r8, qword [rdx]
lea rcx, [r8 + 1]
mov qword [rdx], rcx
mov byte [r8], sil
jmp 0x75b8b8c89
cmp qword [rbx + 0x80], r14
je 0x75b8b8c87
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x75b8b8bc1
mov rcx, qword [rbx + 0x88]
mov rdx, qword [rbx + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rbx + 0x38]
mov qword [rax], rcx
mov rax, qword [rbx + 0x50]
mov dword [rax], edx
mov rcx, qword [rbx + 0x68]
test rcx, rcx
jne 0x75b8b8be5
movsx ecx, sil
mov rdx, qword [rbx + 0x80]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
cmp eax, edi
cmovne edi, esi
jmp 0x75b8b8c87
mov byte [rbp + 7], sil
lea rdx, [rbx + 0x74]
mov qword [rbp + 0x17], r14
mov qword [rbp + 0xf], r14
mov rax, qword [rcx]
movabs r10, 0xba452fa050dd0070
mov rax, qword [rax + 0x38]
lea r8, [rbp + 0xf]
mov qword [rsp + 0x38], r8
lea r9, [rbp + 8]
lea r8, [rbp + 0x3f]
mov qword [rsp + 0x30], r8
lea r8, [rbp + 0x1f]
mov qword [rsp + 0x28], r8
lea r8, [rbp + 0x17]
mov qword [rsp + 0x20], r8
lea r8, [rbp + 7]
call qword [0x75b8e0a70]
test eax, eax
je 0x75b8b8c4c
sub eax, 1
je 0x75b8b8c4c
cmp eax, 2
jne 0x75b8b8c87
movsx ecx, byte [rbp + 7]
jmp 0x75b8b8bce
mov r14, qword [rbp + 0xf]
lea rax, [rbp + 0x1f]
sub r14, rax
je 0x75b8b8c77
mov r9, qword [rbx + 0x80]
lea rcx, [rbp + 0x1f]
mov r8, r14
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp r14, rax
jne 0x75b8b8c87
lea rax, [rbp + 7]
mov byte [rbx + 0x71], 1
cmp qword [rbp + 0x17], rax
mov eax, esi
jne 0x75b8b8c89
mov eax, edi
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.75b8bde70
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x75b8b94e0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x60
mov rax, qword [0x75b923ae8]
xor rax, rsp
mov qword [rsp + 0x58], rax
cmp qword [rcx + 0x68], 0
mov rbx, rcx
je 0x75b8b9577
cmp byte [rcx + 0x71], 0
je 0x75b8b9577
mov rax, qword [rcx]
movabs r10, 0x85e0a7255cd10370
mov rax, qword [rax + 0x18]
or edx, 0xffffffff
call qword [0x75b8e0a70]
cmp eax, 0xffffffff
je 0x75b8b95cc
mov rcx, qword [rbx + 0x68]
lea rdx, [rbx + 0x74]
and qword [rsp + 0x30], 0
mov rax, qword [rcx]
movabs r10, 0xd275361c54538b70
mov rax, qword [rax + 0x40]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x20], r8
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x38]
call qword [0x75b8e0a70]
test eax, eax
je 0x75b8b9591
sub eax, 1
je 0x75b8b9595
cmp eax, 2
jne 0x75b8b95cc
mov byte [rbx + 0x71], 0
mov al, 1
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.75b8bde70
mov rbx, qword [rsp + 0x78]
add rsp, 0x60
pop rdi
ret
mov byte [rbx + 0x71], 0
mov rdi, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
sub rdi, rax
je 0x75b8b95c3
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 0x75b8b95cc
cmp byte [rbx + 0x71], 0
sete al
jmp 0x75b8b9579
xor al, al
jmp 0x75b8b9579