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

Disassembly:
push rsi
push rdi
sub rsp, 0x28
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1400045ab
lea rax, [rdx - 1]
mov qword [rsp + 0x50], rbx
mov rbx, qword [rsi + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x20], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.1400031a0
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140004574
mov qword [rsp + 0x58], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rbp
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x14]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x15]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x16]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x17]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, qword [rsi + 0x30]
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1400044ed
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140004563
mov rdx, qword [r11 + 8]
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x14000452a
mov r10, qword [rdx]
cmp r10, rax
je 0x140004524
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x140004563
cmp r9, rdx
je 0x14000453f
nop
mov rdx, qword [rdx + 8]
cmp r8, qword [rdx + 0x10]
je 0x140004585
cmp r9, rdx
jne 0x140004530
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
jne 0x140004471
mov rbp, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop rdi
pop rsi
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x140004563
lea rcx, str.invalid_hash_bucket_count
call fcn.140005df0
int3

Function at 0x140005068
Capabilities:
Parse pe header

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

Function at 0x14000c790
Capabilities:
Parse pe header

Disassembly:
xor r8d, r8d
xor edx, edx
jmp 0x14000c58c
Function at 0x14000f02c
Capabilities:
Query environment variable

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor ebp, ebp
mov rbx, rax
test rax, rax
je 0x14000f0b3
mov rsi, rbx
cmp word [rax], bp
je 0x14000f072
or rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2], bp
jne 0x14000f05c
lea rsi, [rsi + rax*2]
add rsi, 2
cmp word [rsi], bp
jne 0x14000f058
sub rsi, rbx
add rsi, 2
sar rsi, 1
add rsi, rsi
mov rcx, rsi
call fcn.14000dab8
mov rdi, rax
test rax, rax
je 0x14000f0a0
mov r8, rsi
mov rdx, rbx
mov rcx, rax
call fcn.140007850
mov rbp, rdi
xor ecx, ecx
call fcn.14000db18
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rbp
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140013fe0
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x140014008
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
cmp dword [rdx], 0x4550
jne 0x140014008
xor eax, eax
mov ecx, 0x20b
cmp word [rdx + 0x18], cx
sete al
ret
xor eax, eax
ret

Function at 0x140075ea8
Capabilities:
Encode data using xor

Disassembly:
push r14
call fcn.140062cdd
out dx, eax
fiadd word [rbx - 0x714821e]
mov edi, 0xeb2db7ac
clc
mov edi, 0xebd50f77
clc
mov edi, 0xeb25bfaf
clc
mov edi, 0xeb35efd7
clc
mov edi, 0xeb9d2787
clc
mov edi, 0xebc5dc8f
clc
mov edi, 0xebcd77f7
clc
mov edi, 0xd3871faf
enter 0x1046, 0x50
adc ch, dl
add bh, al
xor eax, dword [rdx]
invalid

Function at 0x140078a41
Capabilities:
Authenticate hmac

Disassembly:
jns 0x1400903cd
call fcn.14006c0f8
neg r8w
add qword [rsp], 0x14ef5
shl r8w, 0x56
test r8w, r8w
nop
lea r8, [r8 + r8*2 - 0x7370ae78]
jg 0x140029b71
jns 0x14002cb5e
test rdi, 0x60d5520
jbe 0x14002fd51
xchg qword [rsp + 0x20], rcx
js 0x140092dea
sete dil
shr dil, 0xb2
shr di, 0x1c
mov rdi, qword [rsp + 0x18]
mov qword [rsp + 0x18], rcx
push r13
movabs r13, 0xc8a29da7c896d98c
add qword [rsp + 8], 0xfffffffffffe7ca6
and r13, r13
mov rcx, r13
push rbp
add qword [rsp + 0x20], 0x1e2b7
movabs rbp, 0x47ae7425f1aa9abe
push qword [rsp + 0x18]
popfq
mov rcx, qword [rsp + 0x10]
mov r13, qword [rsp + 8]
mov rbp, qword [rsp]
lea rsp, [rsp + 0x20]
shr r8w, 0xac
shr r10d, 0x41
shr r8, 0x4d
cmovs r8d, dword [rsp + r10 - 0x7ffbe30d]
mov r10, qword [rsp + r10 - 0x7ffbe325]
shl r8, 0xb8
cmove r8w, word [rsp + 0x53]
mov word [rsp + 0x50], 0x1002
call fcn.14008daac

Function at 0x140087ae3
Capabilities:
Terminate process

Disassembly:
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0xc0000409
add rsp, 0x20
pop rbx
jmp qword [sym.imp.KERNEL32.dll_TerminateProcess]
add qword [rsp + 0x10], 0xda3e
push rbp
and r8d, 0xc19a55b1
jb 0x1400049b8

Function at 0x140095e86
Capabilities:
Authenticate hmac

Disassembly:
call fcn.140093fe9
add qword [rsp], 0xffffffffffffb920
shr qword [rsp + r11*8 + 0x38], 0xd3
push 0xffffffff9e02fd81
lea r10, [r11*2 + 0x7abe013e]
mov rbx, qword [rsp + r10 - 0x7abe0136]
mov rbx, qword [rbx + r11*2]
mov qword [rsp + r11*8 + 8], r11
shr r11d, 0xb
je 0x140081d37

Function at 0x14009b0cf
Capabilities:
Encode data using xor

Disassembly:
call fcn.14006ec82
jne 0x140029511

Function at 0x140130c36
Capabilities:
Encode data using base64

Disassembly:
adc rbx, rdx
not qword [rsp + rcx - 0x3ffffffe]
xchg sil, dil
sar r11b, 0x42
pop rcx
pop r11
pop rcx
jnp fcn.1400c6302
pop rax
jle 0x14010f35a
Function at 0x140138dae
Capabilities:
Authenticate hmac

Disassembly:
or bpl, byte [rsp + rax*2 - 3]
dec edx
ror edi, 0x7c
sar qword [rsp + rax - 5], 0x8c
neg edx
ror edx, 2
bswap edx
mov esi, 0x1ad78f
shr edi, 0x8c
xor edx, 0x2019716
dec edx
xor edx, 0xea120e8e
lea rcx, [rsi + rax*4 - 0x31580be0]
call fcn.1400cea98
mov ebp, 0x8e053537
sub r8, 1
movzx r11d, byte [r8]
xor r11b, r9b
lea rcx, [rbp + rbp - 0x4d572c47]
movsx eax, cx
mov esi, ebp
inc r11b
rol r11b, 1
neg r11b
neg ecx
push rcx
ror r11b, 1
inc r11b
inc word [rsp + rcx - 0x314cc1d8]
xchg word [rsp + rcx - 0x314cc1d5], si
sar al, 0xe4
not r11b
xor r9b, r11b
sub dword [rsp + rcx - 0x314cc1d7], ebp
lea r11, [rsp + r11 + 8]
xor sil, byte [rcx + r11 - 0x314cc1d9]
lea r10, [r10 + rcx - 0x314cc1db]
xchg word [rsp + rcx - 0x314cc1d8], ax
movzx edx, bp
movzx edi, byte [rsp + rcx*2 - 0x629983b2]
mov word [rcx + r10 - 0x314cc1d9], si
lea r8, [r8 + rcx - 0x314cc1dd]
lea r11, [rax + rbp*8 - 0x4b6f5e76]
shr word [rsp + rcx*2 - 0x629983ad], 0x6e
mov edx, dword [rcx + r8 - 0x314cc1d9]
sete byte [rsp + rcx*2 - 0x629983ad]
shr ax, 0x8a
xor edx, r9d
ror edx, 3
neg ecx
js 0x1400bc9d1
sub sil, al
mov qword [rsp + rax - 0x3284b409], rbp
rol edx, 1
dec r11
jnp 0x14013be01
jmp 0x1401081dd
Function at 0x140009510
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
mov r9, rcx
add qword [rcx + 0x10], r8
mov r11, qword [rcx + 0x40]
test r11, r11
je 0x14000954b
mov r15d, 8
sub r15, r11
cmp r15, r8
mov rax, r8
cmovb rax, r15
cmp rax, 4
jb 0x140009553
mov r14d, dword [rdx]
mov r10d, 4
jmp 0x140009559
xor r15d, r15d
jmp 0x140009609
xor r10d, r10d
xor r14d, r14d
mov rcx, r10
or rcx, 1
cmp rcx, rax
jae 0x14000957c
movzx edi, word [rdx + r10]
lea ecx, [r10*8]
shl rdi, cl
or r14, rdi
or r10, 2
cmp r10, rax
jae 0x140009593
movzx eax, byte [rdx + r10]
shl r10d, 3
mov ecx, r10d
shl rax, cl
or r14, rax
lea ecx, [r11*8]
shl r14, cl
or r14, qword [r9 + 0x38]
mov qword [r9 + 0x38], r14
cmp r15, r8
jbe 0x1400095b3
add r11, r8
jmp 0x1400096de
mov rcx, qword [r9 + 0x30]
mov rdi, qword [r9 + 0x28]
mov rax, qword [r9 + 0x18]
add rax, rdi
rol rdi, 0xd
xor rcx, r14
xor rdi, rax
rol rax, 0x20
mov rsi, qword [r9 + 0x20]
add rsi, rcx
rol rcx, 0x10
xor rcx, rsi
add rax, rcx
rol rcx, 0x15
xor rcx, rax
add rsi, rdi
rol rdi, 0x11
mov qword [r9 + 0x30], rcx
xor rdi, rsi
rol rsi, 0x20
mov qword [r9 + 0x28], rdi
mov qword [r9 + 0x20], rsi
xor rax, r14
mov qword [r9 + 0x18], rax
sub r8, r15
mov r11d, r8d
and r11d, 7
and r8, 0xfffffffffffffff8
cmp r15, r8
jae 0x140009683
mov rax, qword [r9 + 0x30]
mov rsi, qword [r9 + 0x18]
mov rcx, qword [r9 + 0x20]
mov rdi, qword [r9 + 0x28]
nop dword [rax]
add rsi, rdi
rol rdi, 0xd
mov rbx, qword [rdx + r15]
xor rdi, rsi
rol rsi, 0x20
xor rax, rbx
add rcx, rax
rol rax, 0x10
xor rax, rcx
add rsi, rax
rol rax, 0x15
add rcx, rdi
rol rdi, 0x11
xor rdi, rcx
rol rcx, 0x20
xor rax, rsi
xor rsi, rbx
add r15, 8
cmp r15, r8
jb 0x140009630
mov qword [r9 + 0x30], rax
mov qword [r9 + 0x18], rsi
mov qword [r9 + 0x28], rdi
mov qword [r9 + 0x20], rcx
cmp r11d, 4
jb 0x140009695
mov eax, dword [rdx + r15]
mov r8d, 4
jmp 0x14000969a
xor r8d, r8d
xor eax, eax
mov rcx, r8
or rcx, 1
cmp rcx, r11
jae 0x1400096c0
lea rcx, [r8 + r15]
movzx edi, word [rdx + rcx]
lea ecx, [r8*8]
shl rdi, cl
or rax, rdi
or r8, 2
cmp r8, r11
jae 0x1400096da
add r15, r8
movzx edx, byte [rdx + r15]
shl r8d, 3
mov ecx, r8d
shl rdx, cl
or rax, rdx
mov qword [r9 + 0x38], rax
mov qword [r9 + 0x40], r11
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
Function at 0x14004d010
Capabilities:
Get system information on windows

Disassembly:
push rsi
sub rsp, 0x50
mov rsi, rcx
lea rcx, [rsp + 0x20]
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x48]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d06c
lea rax, [rsi + rcx]
add rax, 0xffffffffffffffff
mov rdx, rax
shr rdx, 0x20
je 0x14004d04e
xor edx, edx
div rcx
jmp 0x14004d052
xor edx, edx
div ecx
test rax, rax
mov ecx, 1
cmovne rcx, rax
mov eax, ecx
and eax, 1
add rax, rcx
add rsp, 0x50
pop rsi
ret
lea rcx, str.attempt_to_divide_by_zero__
lea r8, str.C:UsersAdministrator.cargo_registry_srcgithub.com_1ecc6299db9ec823_slice_deque_0.3.0_srcmirrored_buffer.rs
mov edx, 0x19
call fcn.14019e390
ud2

Function at 0x14004d0f0
Capabilities:
Get system information on windows

Disassembly:
sub rsp, 0x58
lea rcx, [rsp + 0x28]
call sub.KERNEL32.dll_GetSystemInfo
mov ecx, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x50]
cmp rcx, rax
cmova rax, rcx
add rsp, 0x58
ret
Function at 0x14004d660
Capabilities:
Get system information on windows

Disassembly:
push rsi
push rdi
sub rsp, 0x58
test rcx, rcx
je 0x14004d71e
mov rdi, rdx
test rdx, rdx
je 0x14004d738
mov rsi, rcx
lea rcx, [rsp + 0x28]
call sub.KERNEL32.dll_GetSystemInfo
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x50]
cmp rax, rcx
cmova rcx, rax
test rcx, rcx
je 0x14004d704
mov rax, rdi
shr rax, 0x20
je 0x14004d6df
mov rax, rdi
xor edx, edx
div rcx
test rdx, rdx
jne 0x14004d6ea
mov rcx, rsi
call sub.KERNEL32.dll_UnmapViewOfFile
test eax, eax
je 0x14004d752
shr rdi, 1
add rsi, rdi
mov rcx, rsi
call sub.KERNEL32.dll_UnmapViewOfFile
test eax, eax
je 0x14004d77d
add rsp, 0x58
pop rdi
pop rsi
ret
mov eax, edi
xor edx, edx
div ecx
test rdx, rdx
je 0x14004d6b2
lea rcx, str.assertion_failed:_size___allocation_granularity____0
lea r8, [0x1401afc88]
mov edx, 0x36
call fcn.14019e390
ud2
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zeroassertion_failed:_half_size___allocation_granularity____0
lea r8, [0x1401afc38]
mov edx, 0x39
call fcn.14019e390
ud2
lea rcx, str.assertion_failed:__ptr.is_null__
lea r8, [0x1401afc08]
mov edx, 0x20
call fcn.14019e390
ud2
lea rcx, str.assertion_failed:_size___0C:UsersAdministrator.cargo_registry_srcgithub.com_1ecc6299db9ec823_slice_deque_0.3.0_srcmirroredwinapi.rs
lea r8, [0x1401afc20]
mov edx, 0x1b
call fcn.14019e390
ud2
lea rax, [0x1401afcc8]
mov qword [rsp + 0x20], rax
lea rcx, str.unmapping_first_buffer_half_failed
lea r9, fcn.140001270
lea r8, [rsp + 0x28]
mov edx, 0x22
call fcn.14019e510
ud2
lea rax, [0x1401afd08]
mov qword [rsp + 0x20], rax
lea rcx, str.unmapping_second_buffer_half_failed
lea r9, fcn.140001270
lea r8, [rsp + 0x28]
mov edx, 0x23
call fcn.14019e510
ud2
Function at 0x14006dc60
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rax
add qword [rdx + 0x10], 8
mov rcx, qword [rcx]
mov qword [rsp], rcx
mov r9, qword [rdx + 0x40]
test r9, r9
je 0x14006dd03
mov eax, 8
mov r11d, 8
sub r11, r9
cmovae rax, r11
xor r10d, r10d
xor r8d, r8d
cmp rax, 3
seta r8b
mov ecx, ecx
cmova r10, rcx
lea rcx, [r8*4 + 1]
shl r8, 2
cmp rcx, rax
jae 0x14006dcca
movzx esi, word [rsp + r8]
lea ecx, [r8*8]
shl rsi, cl
or r10, rsi
or r8, 2
cmp r8, rax
jae 0x14006dce1
movzx eax, byte [rsp + r8]
shl r8d, 3
mov ecx, r8d
shl rax, cl
or r10, rax
lea ecx, [r9*8]
shl r10, cl
or r10, qword [rdx + 0x38]
mov qword [rdx + 0x38], r10
cmp r9, 8
jbe 0x14006dd08
add r9, 8
jmp 0x14006de3e
xor r11d, r11d
jmp 0x14006dd5e
mov rcx, qword [rdx + 0x30]
mov rsi, qword [rdx + 0x28]
mov r8, qword [rdx + 0x18]
add r8, rsi
rol rsi, 0xd
xor rcx, r10
xor rsi, r8
rol r8, 0x20
mov rax, qword [rdx + 0x20]
add rax, rcx
rol rcx, 0x10
xor rcx, rax
add r8, rcx
rol rcx, 0x15
xor rcx, r8
add rax, rsi
rol rsi, 0x11
mov qword [rdx + 0x30], rcx
xor rsi, rax
rol rax, 0x20
mov qword [rdx + 0x28], rsi
mov qword [rdx + 0x20], rax
xor r8, r10
mov qword [rdx + 0x18], r8
mov r8d, 8
sub r8, r11
mov r9d, r8d
and r9d, 7
and r8, 0xfffffffffffffff8
cmp r11, r8
jae 0x14006dde3
mov rcx, qword [rdx + 0x30]
mov rax, qword [rdx + 0x18]
mov r10, qword [rdx + 0x20]
mov rsi, qword [rdx + 0x28]
nop word [rax + rax]
add rax, rsi
rol rsi, 0xd
mov rdi, qword [rsp + r11]
xor rsi, rax
rol rax, 0x20
xor rcx, rdi
add r10, rcx
rol rcx, 0x10
xor rcx, r10
add rax, rcx
rol rcx, 0x15
add r10, rsi
rol rsi, 0x11
xor rsi, r10
rol r10, 0x20
xor rcx, rax
xor rax, rdi
add r11, 8
cmp r11, r8
jb 0x14006dd90
mov qword [rdx + 0x30], rcx
mov qword [rdx + 0x18], rax
mov qword [rdx + 0x28], rsi
mov qword [rdx + 0x20], r10
cmp r9d, 4
jb 0x14006ddf5
mov eax, dword [rsp + r11]
mov r8d, 4
jmp 0x14006ddfa
xor r8d, r8d
xor eax, eax
mov rcx, r8
or rcx, 1
cmp rcx, r9
jae 0x14006de20
lea rcx, [r8 + r11]
movzx esi, word [rsp + rcx]
lea ecx, [r8*8]
shl rsi, cl
or rax, rsi
or r8, 2
cmp r8, r9
jae 0x14006de3a
add r11, r8
movzx esi, byte [rsp + r11]
shl r8d, 3
mov ecx, r8d
shl rsi, cl
or rax, rsi
mov qword [rdx + 0x38], rax
mov qword [rdx + 0x40], r9
add rsp, 8
pop rdi
pop rsi
ret
Function at 0x1400b2520
Capabilities:
Open clipboard

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x50
lea rbp, [rsp + 0x50]
mov qword [rbp - 8], 0xfffffffffffffffe
mov r14, rcx
mov rax, qword [0x1401c12d0]
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x28], rax
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b260b
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
je 0x1400b2690
lea rcx, [rbp - 0x28]
call fcn.1400b2a70
mov rdi, rax
mov r15d, edi
cmp dil, 4
jne 0x1400b263a
mov rsi, qword [rbp - 0x28]
mov rdi, qword [rbp - 0x20]
mov rbx, rdi
shr rbx, 8
shld rdi, rsi, 0x38
mov r12, qword [rbp - 0x18]
jmp 0x1400b2661
mov rbx, rdx
mov rdx, qword [rbp - 0x20]
shrd rdi, rbx, 8
shr rbx, 8
test rdx, rdx
je 0x1400b265e
mov rcx, qword [rbp - 0x28]
mov r8d, 1
call fcn.1400012f0
mov esi, r15d
lea rcx, [rbp - 0x10]
call fcn.1400b2a40
cmp r15b, 4
jne 0x1400b26b7
shld rbx, rdi, 8
shl rdi, 8
movzx eax, sil
or rax, rdi
mov qword [r14 + 0x10], rbx
mov qword [r14 + 8], rax
mov qword [r14 + 0x18], r12
xor eax, eax
jmp 0x1400b26f6
call sub.KERNEL32.dll_GetLastError
mov edi, eax
xor ebx, ebx
mov rdx, qword [rbp - 0x20]
test rdx, rdx
je 0x1400b26b1
mov rcx, qword [rbp - 0x28]
mov r8d, 1
call fcn.1400012f0
shl rdi, 0x18
xor esi, esi
mov ecx, 0x10
mov edx, 8
call fcn.1400012e0
test rax, rax
je 0x1400b270b
shld rbx, rdi, 8
shl rdi, 8
movzx ecx, sil
or rcx, rdi
mov qword [rax + 8], rbx
mov qword [rax], rcx
mov qword [r14 + 8], rax
lea rax, [0x1401c12e0]
mov qword [r14 + 0x10], rax
mov eax, 1
mov qword [r14], rax
mov rax, r14
add rsp, 0x50
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
mov ecx, 0x10
mov edx, 8
call fcn.14019e1f0
ud2
Function at 0x1400b2790
Capabilities:
Open clipboard

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov qword [rbp - 8], 0xfffffffffffffffe
mov r14, qword [rdx]
mov qword [rbp - 0x18], rdx
mov rdi, qword [rdx + 0x10]
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
jne 0x1400b2869
call sub.KERNEL32.dll_GetLastError
xor ecx, ecx
call sub.USER32.dll_OpenClipboard
test eax, eax
je 0x1400b28a8
mov rcx, r14
mov rdx, rdi
call fcn.1400b2d30
mov rdi, rax
mov rbx, rdx
lea rcx, [rbp - 0x10]
call fcn.1400b2a40
cmp dil, 4
jne 0x1400b28bb
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1400b28a4
mov r8d, 1
mov rcx, r14
call fcn.1400012f0
xor esi, esi
jmp 0x1400b28f4
call sub.KERNEL32.dll_GetLastError
mov edi, eax
shl rdi, 0x20
xor ebx, ebx
cmp dil, 4
je 0x1400b2889
mov ecx, 0x10
mov edx, 8
call fcn.1400012e0
test rax, rax
je 0x1400b2909
mov rsi, rax
mov qword [rax], rdi
mov qword [rax + 8], rbx
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1400b28f4
mov r8d, 1
mov rcx, r14
call fcn.1400012f0
lea rdx, [0x1401c12e0]
mov rax, rsi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
mov ecx, 0x10
mov edx, 8
call fcn.14019e1f0
ud2
Function at 0x1400b2a70
Capabilities:
Read clipboard data

Disassembly:
push rbp
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x80
lea rbp, [rsp + 0x80]
mov qword [rbp - 8], 0xfffffffffffffffe
mov r14, rcx
mov ecx, 0xd
call sub.USER32.dll_GetClipboardData
test rax, rax
je 0x1400b2c1b
mov r15, rax
mov rcx, rax
call sub.KERNEL32.dll_GlobalLock
test rax, rax
je 0x1400b2c1b
mov rdi, rax
mov qword [rbp - 0x10], r15
mov rcx, r15
call sub.KERNEL32.dll_GlobalSize
mov rsi, rax
shr rsi, 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov ecx, 0xfde9
xor edx, edx
mov r8, rdi
mov r9d, esi
call sub.KERNEL32.dll_WideCharToMultiByte
test eax, eax
je 0x1400b2c2f
movsxd r12, eax
mov rax, qword [r14 + 8]
mov rbx, qword [r14 + 0x10]
sub rax, rbx
cmp rax, r12
jae 0x1400b2b28
mov rcx, r14
mov rdx, rbx
mov r8, r12
call fcn.140190b80
mov rbx, qword [r14 + 0x10]
mov rax, qword [r14]
add rax, rbx
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], rax
mov ecx, 0xfde9
xor edx, edx
mov r8, rdi
mov r9d, esi
call sub.KERNEL32.dll_WideCharToMultiByte
add rbx, r12
mov qword [r14 + 0x10], rbx
mov rsi, qword [r14]
xor edi, edi
mov r8, rbx
xor edx, edx
jmp 0x1400b2b7b
xor edx, edx
mov r8, rbx
sub r8, rdx
mov rdi, rax
add rdx, rsi
cmp r8, 0x10
jae 0x1400b2bb0
test r8, r8
je 0x1400b2bc5
lea rax, [rdx + r8]
xor ecx, ecx
nop
cmp byte [rdx], 0
je 0x1400b2bd5
add rdx, 1
add rcx, 1
cmp rdx, rax
jne 0x1400b2b90
jmp 0x1400b2bc8
xor ecx, ecx
call fcn.1401848e0
mov r8, rdx
cmp rax, 1
je 0x1400b2bf0
jmp 0x1400b2ca8
xor r8d, r8d
xor eax, eax
cmp rax, 1
je 0x1400b2bf0
jmp 0x1400b2ca8
mov eax, 1
mov r8, rcx
cmp rax, 1
jne 0x1400b2ca8
nop word [rax + rax]
add rdi, r8
mov rax, rdi
inc rax
je 0x1400b2b70
cmp rax, rbx
ja 0x1400b2c0a
cmp byte [rsi + rdi], 0
je 0x1400b2c48
mov rdx, rax
cmp rbx, rax
jae 0x1400b2b72
jmp 0x1400b2ca8
call sub.KERNEL32.dll_GetLastError
mov edi, eax
shl rdi, 0x18
xor esi, esi
xor eax, eax
jmp 0x1400b2cb2
call sub.KERNEL32.dll_GetLastError
mov edi, eax
shl rdi, 0x18
xor esi, esi
mov rcx, r15
call sub.KERNEL32.dll_GlobalUnlock
xor eax, eax
jmp 0x1400b2cb2
mov rdx, qword [r14 + 0x10]
cmp rdx, rdi
jb 0x1400b2cd6
mov rax, qword [r14]
test rdi, rdi
je 0x1400b2c84
cmp rdx, rdi
jbe 0x1400b2c82
cmp byte [rax + rdi], 0xbf
jg 0x1400b2c84
lea rcx, str.assertion_failed:_self.is_char_boundary_start_
lea r8, str._rustc_6d820866a27b1949e237be79b9c8c0145fe728b7library_alloc_src_string.rs
mov edx, 0x2e
call fcn.14019e390
jmp 0x1400b2ce5
jne 0x1400b2c68
lea rcx, [rax + rdi]
add rax, rdx
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], rdx
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
lea rcx, [rbp - 0x38]
call fcn.14017b5a0
mov rcx, r15
call sub.KERNEL32.dll_GlobalUnlock
mov al, 4
shld rsi, rdi, 8
shl rdi, 8
movzx eax, al
or rax, rdi
mov rdx, rsi
add rsp, 0x80
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
pop rbp
ret
lea r8, str._rustc_6d820866a27b1949e237be79b9c8c0145fe728b7library_alloc_src_string.rs
mov rcx, rdi
call fcn.14019e6b0
ud2