joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1801b6b60
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0xc0
mov rax, qword [0x180e681c0]
xor rax, rsp
mov qword [rsp + 0xb0], rax
xor esi, esi
mov qword [rsp + 0xd8], rbx
mov dword [rcx + 0x130], esi
mov rdi, rcx
mov edx, esi
mov ebp, 0x5a4d
nop
mov rcx, qword [rdi + 0x10]
xor r8d, r8d
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1800a0c66.0]
mov rcx, qword [rdi + 0x10]
lea rdx, [rsp + 0x30]
mov r8d, 0x40
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [case.0x1800a0c66.0]
movzx eax, word [rsp + 0x30]
cmp ax, bp
jne 0x1801b6c63
movzx eax, word [rsp + 0x48]
cmp ax, 0x40
jae 0x1801b6c0a
movzx r8d, word [rsp + 0x34]
mov ebx, 0x200
movzx edx, word [rsp + 0x32]
movzx eax, word [rsp + 0x32]
shl r8d, 9
sub r8d, eax
add r8d, edx
jne 0x1801b6c0e
mov ebx, dword [rsp + 0x6c]
mov eax, dword [rdi + 0x130]
lea ecx, [rax + rbx]
cmp ecx, ebx
jb 0x1801b6c20
cmp ecx, dword [rdi + 0x18]
jbe 0x1801b6c4d
mov r9d, ebx
mov dword [rsp + 0x20], eax
lea r8, str.bad_PE_delta__x_at_offset__x
mov edx, 0x40
lea rcx, [rsp + 0x70]
call fcn.1800a9160
lea rcx, [rsp + 0x70]
call fcn.180164a50
mov eax, dword [rdi + 0x130]
inc esi
lea edx, [rax + rbx]
mov dword [rdi + 0x130], edx
cmp esi, 0x14
jl 0x1801b6ba0
jmp 0x1801b6c6e
mov eax, dword [rsp + 0x30]
cmp eax, 0x4550
jne 0x1801b6ce7
cmp esi, 0x14
je 0x1801b6ce7
mov rcx, qword [rdi + 0x10]
xor r8d, r8d
mov edx, dword [rdi + 0x130]
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1800a0c66.0]
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x1e8]
call qword [case.0x1800a0c66.0]
mov rcx, qword [rdi + 0x10]
xor r8d, r8d
mov edx, 0x200
mov rax, qword [rcx]
mov rax, qword [rax + 0x48]
call qword [case.0x1800a0c66.0]
mov rcx, qword [rdi + 0x10]
lea rdx, [rsp + 0x30]
mov r8d, 6
mov rax, qword [rcx]
mov rax, qword [rax + 0x38]
call qword [case.0x1800a0c66.0]
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 0x18]
call qword [case.0x1800a0c66.0]
jmp 0x1801b6ce9
xor eax, eax
mov rbx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.18024b290
lea r11, [rsp + 0xc0]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1801c19a0
Capabilities:
Decompress data using ucl

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
mov esi, dword [r9]
xor r14d, r14d
mov r12, r9
mov rbp, r8
mov edi, edx
mov rbx, rcx
mov r10d, r14d
mov eax, r14d
lea r15d, [r14 + 1]
mov r11d, r14d
test r10b, 0x7f
je 0x1801c19e3
add r10d, r10d
jmp 0x1801c19f3
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
bt r10d, 8
jae 0x1801c1a1e
cmp eax, edi
jae 0x1801c1bf7
cmp r11d, esi
jae 0x1801c1bca
mov ecx, eax
mov edx, r11d
inc r11d
inc eax
movzx ecx, byte [rcx + rbx]
mov byte [rdx + rbp], cl
jmp 0x1801c19d8
mov r8d, 1
test r10b, 0x7f
je 0x1801c1a2f
add r10d, r10d
jmp 0x1801c1a3f
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
mov ecx, r10d
shr ecx, 8
and ecx, 1
lea r8d, [rcx + r8*2]
cmp eax, edi
jae 0x1801c1bf7
cmp r8d, 0x1000002
ja 0x1801c1bf0
test r10b, 0x7f
je 0x1801c1a6c
add r10d, r10d
jmp 0x1801c1a7c
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
bt r10d, 8
jae 0x1801c1a24
cmp r8d, 2
je 0x1801c1ab6
cmp eax, edi
jae 0x1801c1bf7
lfence
mov ecx, eax
inc eax
shl r8d, 8
movzx edx, byte [rcx + rbx]
add edx, r8d
cmp edx, 0x2ff
je 0x1801c1bd1
lea r15d, [rdx - 0x2ff]
mov r9d, r15d
test r10b, 0x7f
je 0x1801c1ac4
add r10d, r10d
jmp 0x1801c1ad4
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
mov r8d, r10d
shr r8d, 8
and r8d, 1
test r10b, 0x7f
je 0x1801c1aea
add r10d, r10d
jmp 0x1801c1afa
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
mov ecx, r10d
shr ecx, 8
and ecx, 1
lea r8d, [rcx + r8*2]
test r8d, r8d
jne 0x1801c1b71
mov r8d, 1
test r10b, 0x7f
je 0x1801c1b1d
add r10d, r10d
jmp 0x1801c1b2d
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
mov ecx, r10d
shr ecx, 8
and ecx, 1
lea r8d, [rcx + r8*2]
cmp eax, edi
jae 0x1801c1bf7
cmp r8d, esi
jae 0x1801c1bca
test r10b, 0x7f
je 0x1801c1b56
add r10d, r10d
jmp 0x1801c1b66
mov ecx, eax
inc eax
movzx edx, byte [rcx + rbx]
lea r10d, [rdx*2 + 1]
bt r10d, 8
jae 0x1801c1b12
add r8d, 2
mov ecx, r14d
cmp r9d, 0xd00
seta cl
add r8d, ecx
lea ecx, [r8 + r11]
cmp ecx, esi
ja 0x1801c1bca
cmp r9d, r11d
ja 0x1801c1bf0
mov ecx, r9d
mov r9d, r11d
sub r9, rcx
mov edx, r11d
add r9, rbp
inc r11d
movzx ecx, byte [r9]
inc r9
mov byte [rdx + rbp], cl
nop word [rax + rax]
movzx ecx, byte [r9]
lea r9, [r9 + 1]
mov byte [r11 + rbp], cl
inc r11d
add r8d, 0xffffffff
jne 0x1801c1bb0
jmp 0x1801c19d8
mov eax, 0xffffff36
jmp 0x1801c1bfc
lfence
mov dword [r12], r11d
cmp eax, edi
je 0x1801c1beb
mov ecx, 0xffffff33
mov r14d, 0xffffff37
cmovb r14d, ecx
mov eax, r14d
jmp 0x1801c1c00
mov eax, 0xffffff35
jmp 0x1801c1bfc
mov eax, 0xffffff37
mov dword [r12], r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
pop r15
pop r14
pop r12
ret
Function at 0x1801c1f60
Capabilities:
Decompress data using ucl

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r13
push r14
push r15
mov ebp, dword [r9]
xor r15d, r15d
mov rdi, rcx
mov r13, r9
mov r14, r8
mov esi, edx
mov ecx, r15d
mov r11d, r15d
lea r12d, [r15 + 1]
mov r10d, r15d
mov ebx, r15d
nop dword [rax]
test ecx, ecx
je 0x1801c1fb0
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
jmp 0x1801c1fc6
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
test eax, eax
je 0x1801c1fef
cmp r10d, esi
jae 0x1801c21d9
cmp ebx, ebp
jae 0x1801c21ab
mov eax, r10d
mov edx, ebx
inc ebx
inc r10d
movzx eax, byte [rax + rdi]
mov byte [rdx + r14], al
jmp 0x1801c1fa0
mov edx, 1
test ecx, ecx
je 0x1801c2004
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
jmp 0x1801c201a
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
lea edx, [rax + rdx*2]
cmp r10d, esi
jae 0x1801c21d9
cmp edx, 0x1000002
ja 0x1801c21d2
test ecx, ecx
je 0x1801c2042
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
jmp 0x1801c2058
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
test eax, eax
je 0x1801c1ff4
cmp edx, 2
je 0x1801c2092
cmp r10d, esi
jae 0x1801c21d9
lfence
mov eax, r10d
inc r10d
shl edx, 8
movzx r8d, byte [rax + rdi]
add r8d, edx
cmp r8d, 0x2ff
je 0x1801c21b2
lea r12d, [r8 - 0x2ff]
mov r9d, r12d
test ecx, ecx
je 0x1801c20bf
dec ecx
mov edx, r11d
shr edx, cl
and edx, 1
test ecx, ecx
jne 0x1801c20d5
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
jmp 0x1801c20df
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov edx, r11d
shr edx, 0x1f
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
lea r8d, [rax + rdx*2]
test r8d, r8d
jne 0x1801c215a
mov r8d, 1
nop
test ecx, ecx
je 0x1801c2100
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
jmp 0x1801c2116
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
lea r8d, [rax + r8*2]
cmp r10d, esi
jae 0x1801c21d9
cmp r8d, ebp
jae 0x1801c21ab
test ecx, ecx
je 0x1801c213c
dec ecx
mov eax, r11d
shr eax, cl
and eax, 1
jmp 0x1801c2152
mov eax, r10d
mov ecx, 0x1f
add r10d, 4
mov r11d, dword [rax + rdi]
mov eax, r11d
shr eax, 0x1f
test eax, eax
je 0x1801c20f0
add r8d, 2
mov eax, r15d
cmp r9d, 0xd00
seta al
add r8d, eax
lea eax, [r8 + rbx]
cmp eax, ebp
ja 0x1801c21ab
cmp r9d, ebx
ja 0x1801c21d2
mov eax, r9d
mov r9d, ebx
sub r9, rax
mov edx, ebx
add r9, r14
inc ebx
movzx eax, byte [r9]
inc r9
mov byte [rdx + r14], al
movzx eax, byte [r9]
lea r9, [r9 + 1]
mov byte [rbx + r14], al
inc ebx
add r8d, 0xffffffff
jne 0x1801c2192
jmp 0x1801c1fa0
mov eax, 0xffffff36
jmp 0x1801c21de
lfence
mov dword [r13], ebx
cmp r10d, esi
je 0x1801c21cd
mov eax, 0xffffff33
mov r15d, 0xffffff37
cmovb r15d, eax
mov eax, r15d
jmp 0x1801c21e2
mov eax, 0xffffff35
jmp 0x1801c21de
mov eax, 0xffffff37
mov dword [r13], ebx
mov rbx, qword [rsp + 0x28]
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
pop r15
pop r14
pop r13
pop r12
ret
Function at 0x1801c35e0
Capabilities:
Decompress data using ucl

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
mov edi, dword [r9]
lea ebx, [rdx + r8]
xor esi, esi
mov r11, rcx
mov r14, r9
mov ecx, esi
mov r10d, esi
lea ebp, [rsi + 1]
cmp edi, ebx
jb 0x1801c3620
mov dword [r9], esi
mov eax, 0xffffff32
jmp 0x1801c37fe
test cl, 0x7f
je 0x1801c3629
add ecx, ecx
jmp 0x1801c3639
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
bt ecx, 8
jae 0x1801c3660
cmp edx, ebx
jae 0x1801c37f6
cmp r10d, edi
jae 0x1801c37cd
cmp r10d, edx
ja 0x1801c37c6
inc r10d
inc edx
jmp 0x1801c3620
mov r8d, 1
test cl, 0x7f
je 0x1801c366f
add ecx, ecx
jmp 0x1801c367f
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
lea r8d, [rax + r8*2]
cmp edx, ebx
jae 0x1801c37f6
cmp r8d, 0x1000002
ja 0x1801c37ef
test cl, 0x7f
je 0x1801c36a9
add ecx, ecx
jmp 0x1801c36b9
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
bt ecx, 8
jae 0x1801c3666
cmp r8d, 2
je 0x1801c36f1
cmp edx, ebx
jae 0x1801c37f6
mov eax, edx
inc edx
shl r8d, 8
movzx r9d, byte [rax + r11]
add r9d, r8d
cmp r9d, 0x2ff
je 0x1801c37d4
lea ebp, [r9 - 0x2ff]
mov r9d, ebp
test cl, 0x7f
je 0x1801c36fd
add ecx, ecx
jmp 0x1801c370d
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov r8d, ecx
shr r8d, 8
and r8d, 1
test cl, 0x7f
je 0x1801c3721
add ecx, ecx
jmp 0x1801c3731
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
lea r8d, [rax + r8*2]
test r8d, r8d
jne 0x1801c379d
mov r8d, 1
test cl, 0x7f
je 0x1801c3751
add ecx, ecx
jmp 0x1801c3761
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
lea r8d, [rax + r8*2]
cmp edx, ebx
jae 0x1801c37f6
cmp r8d, edi
jae 0x1801c37cd
test cl, 0x7f
je 0x1801c3783
add ecx, ecx
jmp 0x1801c3793
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
bt ecx, 8
jae 0x1801c3748
add r8d, 2
cmp r9d, 0xd00
mov eax, esi
seta al
add r8d, eax
add r8d, r10d
cmp r8d, edi
ja 0x1801c37cd
cmp r9d, r10d
ja 0x1801c37ef
lea r10d, [r8 + 1]
cmp r10d, edx
jbe 0x1801c3620
mov eax, 0xffffff32
jmp 0x1801c37fb
mov eax, 0xffffff36
jmp 0x1801c37fb
lfence
mov dword [r14], r10d
cmp edx, ebx
je 0x1801c37eb
mov esi, 0xffffff37
mov eax, 0xffffff33
cmovb esi, eax
mov eax, esi
jmp 0x1801c37fe
mov eax, 0xffffff35
jmp 0x1801c37fb
mov eax, 0xffffff37
mov dword [r14], r10d
mov rbx, qword [rsp + 0x10]
mov rbp, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
pop r14
ret
Function at 0x1801c3b40
Capabilities:
Decompress data using ucl

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
mov ebp, dword [r9]
lea esi, [rdx + r8]
xor r14d, r14d
mov rdi, rcx
mov r15, r9
mov ecx, r14d
mov r10d, r14d
mov r11d, r14d
lea r12d, [r14 + 1]
cmp ebp, esi
jb 0x1801c3b83
mov dword [r9], r14d
mov eax, 0xffffff32
jmp 0x1801c3d9b
mov qword [rsp + 0x20], rbx
test ecx, ecx
je 0x1801c3b98
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
jmp 0x1801c3bac
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
test eax, eax
je 0x1801c3bd1
cmp edx, esi
jae 0x1801c3d8e
cmp r11d, ebp
jae 0x1801c3d62
cmp r11d, edx
ja 0x1801c3d5b
inc r11d
inc edx
jmp 0x1801c3b88
mov r8d, 1
test ecx, ecx
je 0x1801c3be7
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
jmp 0x1801c3bfb
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
lea r8d, [rax + r8*2]
cmp edx, esi
jae 0x1801c3d8e
cmp r8d, 0x1000002
ja 0x1801c3d87
test ecx, ecx
je 0x1801c3c24
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
jmp 0x1801c3c38
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
test eax, eax
je 0x1801c3bd7
cmp r8d, 2
je 0x1801c3c6e
cmp edx, esi
jae 0x1801c3d8e
mov eax, edx
inc edx
shl r8d, 8
movzx r9d, byte [rax + rdi]
add r9d, r8d
cmp r9d, 0x2ff
je 0x1801c3d69
lea r12d, [r9 - 0x2ff]
mov ebx, r12d
test ecx, ecx
je 0x1801c3c9b
dec ecx
mov r8d, r10d
shr r8d, cl
and r8d, 1
test ecx, ecx
jne 0x1801c3cb0
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
jmp 0x1801c3cba
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov r8d, r10d
shr r8d, 0x1f
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
lea r9d, [rax + r8*2]
test r9d, r9d
jne 0x1801c3d31
mov r9d, 1
nop dword [rax]
test ecx, ecx
je 0x1801c3ce0
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
jmp 0x1801c3cf4
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
lea r9d, [rax + r9*2]
cmp edx, esi
jae 0x1801c3d8e
cmp r9d, ebp
jae 0x1801c3d62
test ecx, ecx
je 0x1801c3d15
dec ecx
mov eax, r10d
shr eax, cl
and eax, 1
jmp 0x1801c3d29
mov eax, edx
mov ecx, 0x1f
add edx, 4
mov r10d, dword [rax + rdi]
mov eax, r10d
shr eax, 0x1f
test eax, eax
je 0x1801c3cd0
add r9d, 2
cmp ebx, 0xd00
mov eax, r14d
seta al
lea r8d, [r9 + rax]
add r8d, r11d
cmp r8d, ebp
ja 0x1801c3d62
cmp ebx, r11d
ja 0x1801c3d87
lea r11d, [r8 + 1]
cmp r11d, edx
jbe 0x1801c3b88
mov eax, 0xffffff32
jmp 0x1801c3d93
mov eax, 0xffffff36
jmp 0x1801c3d93
lfence
mov dword [r15], r11d
cmp edx, esi
je 0x1801c3d82
mov eax, 0xffffff33
mov r14d, 0xffffff37
cmovb r14d, eax
mov eax, r14d
jmp 0x1801c3d96
mov eax, 0xffffff35
jmp 0x1801c3d93
mov eax, 0xffffff37
mov dword [r15], r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
pop r15
pop r14
pop r12
ret
Function at 0x1801c3dc0
Capabilities:
Decompress data using ucl

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
mov esi, dword [r9]
lea edi, [rdx + r8]
xor ebp, ebp
mov r11, rcx
mov r14, r9
mov ecx, ebp
mov r10d, ebp
lea r15d, [rbp + 1]
cmp esi, edi
jb 0x1801c3e0b
mov dword [r9], ebp
mov eax, 0xffffff32
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
mov qword [rsp + 0x18], rbx
test cl, 0x7f
je 0x1801c3e19
add ecx, ecx
jmp 0x1801c3e29
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
bt ecx, 8
jae 0x1801c3e50
cmp edx, edi
jae 0x1801c4043
cmp r10d, esi
jae 0x1801c401a
cmp r10d, edx
ja 0x1801c4013
inc r10d
inc edx
jmp 0x1801c3e10
mov r9d, 1
test cl, 0x7f
je 0x1801c3e61
lea r8d, [rcx + rcx]
jmp 0x1801c3e72
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea r8d, [rcx*2 + 1]
mov eax, r8d
shr eax, 8
and eax, 1
lea r9d, [rax + r9*2]
cmp edx, edi
jae 0x1801c4043
cmp r9d, 0x1000002
ja 0x1801c403c
test r8b, 0x7f
je 0x1801c3e9f
add r8d, r8d
jmp 0x1801c3eb0
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea r8d, [rcx*2 + 1]
bt r8d, 8
jb 0x1801c3ef6
test r8b, 0x7f
je 0x1801c3ed2
lea ecx, [r8 + r8]
mov eax, ecx
shr eax, 8
and eax, 1
dec r9d
lea r9d, [rax + r9*2]
jmp 0x1801c3e56
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
dec r9d
lea r9d, [rax + r9*2]
jmp 0x1801c3e56
cmp r9d, 2
jne 0x1801c3f2b
mov ebx, r15d
test r8b, 0x7f
je 0x1801c3f11
add r8d, r8d
mov r9d, r8d
shr r9d, 8
jmp 0x1801c3f5f
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea r8d, [rcx*2 + 1]
mov r9d, r8d
shr r9d, 8
jmp 0x1801c3f5f
cmp edx, edi
jae 0x1801c4043
mov eax, edx
inc edx
shl r9d, 8
movzx ecx, byte [rax + r11]
lea ebx, [r9 - 0x300]
add ebx, ecx
cmp ebx, 0xffffffff
je 0x1801c4021
mov r9d, ebx
shr ebx, 1
inc ebx
not r9d
mov r15d, ebx
and r9d, 1
test r8b, 0x7f
je 0x1801c3f6f
lea ecx, [r8 + r8]
jmp 0x1801c3f7f
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
lea r8d, [rax + r9*2]
test r8d, r8d
jne 0x1801c3feb
mov r8d, 1
test cl, 0x7f
je 0x1801c3f9f
add ecx, ecx
jmp 0x1801c3faf
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
mov eax, ecx
shr eax, 8
and eax, 1
lea r8d, [rax + r8*2]
cmp edx, edi
jae 0x1801c4043
cmp r8d, esi
jae 0x1801c401a
test cl, 0x7f
je 0x1801c3fd1
add ecx, ecx
jmp 0x1801c3fe1
mov eax, edx
inc edx
movzx ecx, byte [rax + r11]
lea ecx, [rcx*2 + 1]
bt ecx, 8
jae 0x1801c3f96
add r8d, 2
cmp ebx, 0x500
mov eax, ebp
seta al
add r8d, eax
add r8d, r10d
cmp r8d, esi
ja 0x1801c401a
cmp ebx, r10d
ja 0x1801c403c
lea r10d, [r8 + 1]
cmp r10d, edx
jbe 0x1801c3e10
mov eax, 0xffffff32
jmp 0x1801c4048
mov eax, 0xffffff36
jmp 0x1801c4048
lfence
mov dword [r14], r10d
cmp edx, edi
je 0x1801c4038
mov ebp, 0xffffff37
mov eax, 0xffffff33
cmovb ebp, eax
mov eax, ebp
jmp 0x1801c404b
mov eax, 0xffffff35
jmp 0x1801c4048
mov eax, 0xffffff37
mov dword [r14], r10d
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
Function at 0x1801d3f80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xor ebx, ebx
mov r11, rdx
mov r9, rcx
mov r10d, ebx
cmp r8, 8
jb 0x1801d3fc7
mov rcx, r8
shr rcx, 3
imul rax, rcx, 0xfffffffffffffff8
add r8, rax
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r9]
add r9, 8
xor rax, qword [r11]
add r11, 8
or r10, rax
sub rcx, 1
jne 0x1801d3fb0
mov rdx, r10
shr rdx, 0x20
or edx, r10d
mov eax, edx
mov ecx, edx
shr eax, 8
or eax, edx
shr ecx, 0x10
and eax, 0xff00
or eax, ecx
movzx ecx, dl
shr eax, 8
or eax, ecx
test r8, r8
je 0x1801d40c7
cmp r8, 8
jb 0x1801d40a3
mov rdx, r8
lea r10, [r11 + 4]
and rdx, 0xfffffffffffffff8
mov rcx, r9
sub rcx, r11
xorps xmm4, xmm4
xorps xmm3, xmm3
nop word [rax + rax]
movd xmm2, dword [rcx + r10 - 4]
xorps xmm0, xmm0
movd xmm1, dword [r10 - 4]
lea r10, [r10 + 8]
punpcklbw xmm2, xmm0
add rbx, 8
punpcklwd xmm2, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
pxor xmm2, xmm1
movd xmm1, dword [r10 - 8]
punpcklbw xmm1, xmm0
por xmm4, xmm2
movd xmm2, dword [rcx + r10 - 8]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklwd xmm1, xmm0
pxor xmm2, xmm1
por xmm3, xmm2
cmp rbx, rdx
jb 0x1801d4020
por xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
por xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
por xmm3, xmm0
movd ecx, xmm3
or eax, ecx
cmp rbx, r8
jae 0x1801d40c7
sub r9, r11
lea r10, [rbx + r11]
sub r8, rbx
nop dword [rax]
movzx edx, byte [r10 + r9]
movzx ecx, byte [r10]
lea r10, [r10 + 1]
xor edx, ecx
or eax, edx
sub r8, 1
jne 0x1801d40b0
mov rbx, qword [rsp + 8]
test eax, eax
sete al
ret
Function at 0x1801e6cb0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x20
mov rbx, qword [rcx + 0x28]
mov rsi, rcx
mov edx, dword [rbx + 0x4c]
call fcn.1801e6bc0
mov r8d, eax
mov edx, eax
test eax, eax
js 0x1801e6d93
lea r14, [0x180e7a910]
xor ebp, ebp
nop
mov ecx, dword [0x180e7b910]
mov dword [r14 + rcx*4], r8d
inc ecx
cmp ecx, 0x400
cmovae ecx, ebp
mov dword [0x180e7b910], ecx
cmp r8d, 0x100
jne 0x1801e6db1
cmp dword [rbx + 0x38], ebp
je 0x1801e6db1
movsxd r8, dword [rbx + 0x4c]
xor edx, edx
mov rax, qword [rbx + 0x20]
div r8
mov eax, r8d
mov dword [rbx + 0x1c], ebp
sub eax, edx
cdq
idiv r8d
mov edi, edx
test edx, edx
jle 0x1801e6d57
mov edx, 8
mov rcx, rsi
dec edi
call fcn.1801e6bc0
test eax, eax
js 0x1801e6d96
test edi, edi
jg 0x1801e6d40
mov qword [rbx + 0x20], rbp
mov rcx, rsi
mov dword [rbx + 0x4c], 9
mov dword [rbx + 0x48], 0x1ff
mov dword [rbx + 0x58], 0x101
mov dword [rbx + 0x50], 0xffffffff
mov rbx, qword [rsi + 0x28]
mov edx, dword [rbx + 0x4c]
call fcn.1801e6bc0
mov r8d, eax
mov edx, eax
test eax, eax
jns 0x1801e6cf0
mov eax, r8d
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
mov eax, dword [rbx + 0x58]
cmp r8d, eax
jg 0x1801e6ea5
jne 0x1801e6dcb
cmp dword [rbx + 0x50], ebp
jl 0x1801e6ea5
cmp r8d, eax
jl 0x1801e6de4
mov rcx, qword [rbx + 0x30060]
movzx eax, byte [rbx + 0x54]
mov byte [rcx], al
inc qword [rbx + 0x30060]
mov edx, dword [rbx + 0x50]
mov rax, qword [rbx + 0x30060]
cmp edx, 0x100
jl 0x1801e6e32
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rbx + 0x30060]
movsxd rdx, edx
movzx eax, byte [rdx + rbx + 0x5c]
mov byte [rcx], al
mov rax, qword [rbx + 0x30060]
inc rax
mov qword [rbx + 0x30060], rax
movzx edx, word [rbx + rdx*2 + 0x1005c]
cmp edx, 0x100
jae 0x1801e6e00
mov dword [rbx + 0x54], edx
mov byte [rax], dl
movsxd rax, dword [rbx + 0x58]
inc qword [rbx + 0x30060]
mov ecx, eax
cmp eax, dword [rbx + 0x40]
jge 0x1801e6e69
mov edx, dword [rbx + 0x50]
test edx, edx
js 0x1801e6e69
mov word [rbx + rax*2 + 0x1005c], dx
mov rcx, rax
movzx eax, byte [rbx + 0x54]
mov byte [rcx + rbx + 0x5c], al
inc dword [rbx + 0x58]
mov ecx, dword [rbx + 0x58]
cmp ecx, dword [rbx + 0x48]
jle 0x1801e6e9a
inc dword [rbx + 0x4c]
mov ecx, dword [rbx + 0x4c]
mov qword [rbx + 0x20], rbp
cmp ecx, dword [rbx + 0x44]
jne 0x1801e6e8e
mov eax, dword [rbx + 0x40]
mov dword [rbx + 0x48], eax
xor eax, eax
mov dword [rbx + 0x50], r8d
jmp 0x1801e6d96
mov eax, 1
shl eax, cl
dec eax
mov dword [rbx + 0x48], eax
mov dword [rbx + 0x50], r8d
xor eax, eax
jmp 0x1801e6d96
mov rcx, qword [rsi + 0x18]
lea r8, str.Invalid_compressed_data
mov edx, 0xffffffff
call fcn.1801e5fd0
mov eax, 0xffffffe2
jmp 0x1801e6d96
Function at 0x1801f9cc0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 8
mov r11, r8
mov r10, rdx
test r8, r8
je 0x1801f9de4
mov qword [rsp], rdi
lea rdi, [0x180e7b920]
test r10b, 1
je 0x1801f9cfe
movzx edx, byte [rdx]
movzx eax, cx
xor rdx, rax
shr cx, 8
movzx eax, dl
xor cx, word [rdi + rax*2]
inc r10
dec r11
cmp r11, 8
jb 0x1801f9dbc
mov qword [rsp + 0x10], rbx
mov rbx, r11
shr rbx, 3
imul rax, rbx, 0xfffffffffffffff8
add r11, rax
nop dword [rax + rax]
movzx edx, word [r10]
movzx eax, cx
lea rcx, [r10 + 6]
xor rdx, rax
mov rax, rdx
shr rax, 8
movzx r8d, word [rdi + rax*2]
movzx eax, dl
movzx eax, word [rdi + rax*2 + 0x200]
xor r8, rax
movzx eax, word [r10 + 2]
xor r8, rax
mov rax, r8
shr rax, 8
movzx r9d, word [rdi + rax*2]
movzx eax, r8b
movzx eax, word [rdi + rax*2 + 0x200]
xor r9, rax
movzx eax, word [r10 + 4]
xor r9, rax
lea r10, [rcx + 2]
mov rax, r9
shr rax, 8
movzx edx, word [rdi + rax*2]
movzx eax, r9b
movzx eax, word [rdi + rax*2 + 0x200]
xor rdx, rax
movzx eax, word [rcx]
xor rdx, rax
mov rcx, rdx
movzx eax, dl
shr rcx, 8
movzx ecx, word [rdi + rcx*2]
xor cx, word [rdi + rax*2 + 0x200]
sub rbx, 1
jne 0x1801f9d20
mov rbx, qword [rsp + 0x10]
test r11, r11
je 0x1801f9de0
movzx edx, byte [r10]
lea r10, [r10 + 1]
movzx eax, cx
xor rdx, rax
shr cx, 8
movzx eax, dl
xor cx, word [rdi + rax*2]
sub r11, 1
jne 0x1801f9dc1
mov rdi, qword [rsp]
movzx eax, cx
add rsp, 8
ret