joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400092c0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbx
push rsi
push rdi
push r14
push r15
sub rsp, 0x490
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov rax, qword [0x14003d088]
xor rax, rsp
mov qword [rsp + 0x480], rax
mov r15, r9
mov rsi, r8
mov rbx, rdx
xor r14d, r14d
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], r14
xor edx, edx
mov r8d, 0x408
lea rcx, [rsp + 0x70]
call fcn.140010630
mov qword [rsp + 0x70], r14
xor edx, edx
lea r8d, [r14 + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rdi, rax
mov qword [rsp + 0x38], rax
test rax, rax
jne 0x140009360
xor edx, edx
lea r8d, [r14 + 2]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rdi, rax
mov qword [rsp + 0x38], rax
test rax, rax
jne 0x140009360
call fcn.1400073e0
mov ebx, eax
jmp 0x140009488
mov r8, r15
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
jne 0x140009381
call fcn.1400073e0
jmp 0x140009477
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rsi, rax
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x1400093a4
call fcn.1400073e0
jmp 0x140009477
mov rdx, rbx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov ebx, eax
mov dword [rsp + 0x30], eax
inc eax
cmp eax, ebx
jae 0x1400093c6
mov ebx, 0x8007000e
jmp 0x140009479
mov ecx, eax
test eax, eax
je 0x1400093fe
xor edx, edx
or rax, 0xffffffffffffffff
div rcx
cmp rax, 2
jb 0x1400093f4
lea rdx, [rcx + rcx]
cmp rdx, 0x400
jbe 0x1400093fe
lea rcx, [rsp + 0x70]
call fcn.1400073b0
jmp 0x140009408
mov ecx, 0x80070216
call fcn.1400081a0
lea rax, [rsp + 0x78]
mov qword [rsp + 0x70], rax
jmp 0x14000941b
cmp qword [rsp + 0x70], 0
jne 0x14000942a
mov ebx, 0x8007000e
jmp 0x140009479
mov dword [rsp + 0x28], ebx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov r8, rsi
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
jne 0x140009454
call fcn.1400073e0
jmp 0x140009477
mov ecx, eax
mov rax, qword [rsp + 0x70]
mov word [rax + rcx*2], r14w
mov r8d, dword [rsp + 0x4e0]
mov rdx, qword [rsp + 0x70]
lea rcx, [rsp + 0x50]
call fcn.1400090d0
mov ebx, eax
test rdi, rdi
je 0x140009488
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
lea rax, [rsp + 0x78]
cmp qword [rsp + 0x70], rax
je 0x14000949f
lea rcx, [rsp + 0x70]
call fcn.140007390
nop
mov eax, ebx
mov rcx, qword [rsp + 0x480]
xor rcx, rsp
call fcn.14000d750
add rsp, 0x490
pop r15
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x1400172e4
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push r15
sub rsp, 0x20
mov esi, r8d
mov ebx, edx
mov r14d, ecx
test r8d, r8d
jne 0x1400170b8
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1400170b8
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x1400170b8
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x1400170b8
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x1400170b8
cmp dword [rcx + 0x84], 0xe
jbe 0x1400170b8
cmp dword [rcx + 0xf8], esi
je 0x1400170b8
mov ecx, r14d
call fcn.140017200
mov ecx, 2
call fcn.140013810
nop
cmp byte [0x14003f410], 0
jne 0x140017182
mov r15d, 1
mov eax, r15d
xchg dword [0x14003f400], eax
test ebx, ebx
jne 0x14001712b
mov rdi, qword [0x14003d088]
mov edx, edi
and edx, 0x3f
lea ecx, [rbx + 0x40]
sub ecx, edx
xor eax, eax
ror rax, cl
xor rax, rdi
mov rcx, qword [0x14003f408]
cmp rcx, rax
je 0x140017122
xor rdi, rcx
mov ecx, edx
ror rdi, cl
mov rcx, rdi
call qword [fcn.140006810]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rdi
lea rcx, [0x14003f650]
jmp 0x140017137
cmp ebx, r15d
jne 0x14001713d
lea rcx, [0x14003f668]
call fcn.140017d74
nop
test ebx, ebx
jne 0x140017154
lea rdx, [0x1400274d8]
lea rcx, [0x1400274b8]
call fcn.14001809c
lea rdx, [0x1400274e8]
lea rcx, [0x1400274e0]
call fcn.14001809c
movzx eax, byte [0x14003f410]
test esi, esi
cmove eax, r15d
mov byte [0x14003f410], al
jmp 0x140017182
mov ecx, 2
call fcn.140013864
test esi, esi
jne 0x140017199
mov ecx, r14d
call fcn.1400171b4
int3
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
add rsp, 0x20
pop r15
ret
xor r8d, r8d
xor edx, edx
jmp 0x140017048

Function at 0x14001a904
Capabilities:
Get geographical location

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 edi, r9d
mov rsi, r8
mov ebp, edx
lea r9, [0x140030578]
mov r14, rcx
lea r8, [0x140030570]
lea rdx, str.GetLocaleInfoEx
mov ecx, 0xc
call fcn.14001a45c
mov rbx, rax
test rax, rax
je 0x14001a967
mov rcx, rax
call qword [fcn.140006810]
mov r9d, edi
mov r8, rsi
mov edx, ebp
mov rcx, r14
call rbx
jmp 0x14001a981
xor edx, edx
mov rcx, r14
call fcn.14001ac6c
mov ecx, eax
mov r9d, edi
mov r8, rsi
mov edx, ebp
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
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 0x14001b7c8
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 8], rcx
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x20
test rcx, rcx
jne 0x14001b62e
call fcn.140011eb8
mov dword [rax], 0x16
call fcn.140011d68
mov eax, 0xffff
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop rbp
ret
mov eax, dword [rcx + 0x14]
shr eax, 0xd
test al, 1
je 0x14001b610
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
shr ecx, 0xc
test cl, 1
jne 0x14001b610
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
mov rax, qword [rbp + 0x20]
shr ecx, 1
test cl, 1
je 0x14001b660
lock or dword [rax + 0x14], 0x10
jmp 0x14001b610
lock or dword [rax + 0x14], 1
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
test ecx, 0x4c0
jne 0x14001b67d
mov rcx, qword [rbp + 0x20]
call fcn.14001bd64
mov rax, qword [rbp + 0x20]
cmp dword [rax + 0x10], 1
jne 0x14001b692
mov rcx, qword [rax]
mov sil, 1
mov r14b, byte [rcx]
jmp 0x14001b698
xor sil, sil
xor r14b, r14b
mov rcx, qword [rax + 8]
mov qword [rax], rcx
mov rbx, qword [rbp + 0x20]
mov rcx, rbx
call fcn.14001b40c
mov rdx, qword [rbp + 0x20]
mov ecx, eax
mov r8d, dword [rdx + 0x20]
mov rdx, qword [rdx + 8]
call fcn.1400237f8
mov dword [rbx + 0x10], eax
mov rax, qword [rbp + 0x20]
mov edx, dword [rax + 0x10]
lea ecx, [rdx + 1]
cmp ecx, 2
ja 0x14001b6eb
neg edx
sbb ecx, ecx
and ecx, 8
add ecx, 8
lock or dword [rax + 0x14], ecx
mov rax, qword [rbp + 0x20]
and dword [rax + 0x10], 0
jmp 0x14001b610
mov ecx, dword [rax + 0x14]
test cl, 6
jne 0x14001b757
mov rcx, qword [rbp + 0x20]
call fcn.14001b40c
cmp eax, 0xffffffff
je 0x14001b73e
mov rcx, qword [rbp + 0x20]
call fcn.14001b40c
cmp eax, 0xfffffffe
je 0x14001b73e
mov rbx, qword [rbp + 0x20]
mov rcx, rbx
call fcn.14001b40c
movsxd rdi, eax
lea r15, [0x14003f890]
mov rcx, rbx
sar rdi, 6
call fcn.14001b40c
and eax, 0x3f
shl rax, 6
add rax, qword [r15 + rdi*8]
jmp 0x14001b745
lea rax, [0x14003d430]
mov al, byte [rax + 0x38]
and al, 0x82
cmp al, 0x82
jne 0x14001b757
mov rax, qword [rbp + 0x20]
lock or dword [rax + 0x14], 0x20
mov rax, qword [rbp + 0x20]
cmp dword [rax + 0x20], 0x200
jne 0x14001b78d
mov ecx, dword [rax + 0x14]
shr ecx, 6
test cl, 1
je 0x14001b789
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
shr ecx, 8
test cl, 1
jne 0x14001b789
mov rax, qword [rbp + 0x20]
mov dword [rax + 0x20], 0x1000
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax]
test sil, sil
je 0x14001b7ab
movzx edx, byte [rcx]
dec dword [rax + 0x10]
shl dx, 8
movzx ecx, r14b
or dx, cx
inc qword [rax]
jmp 0x14001b7b6
movzx edx, word [rcx]
add dword [rax + 0x10], 0xfffffffe
add qword [rax], 2
movzx eax, dx
jmp 0x14001b615
jmp 0x14001b5dc
Function at 0x14001247c
Capabilities:
Receive http response

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r14
sub rsp, 0x48
mov qword [rax - 0x38], 0xfffffffffffffffe
xor ebx, ebx
and dword [rax + 0x18], ebx
lea edi, [rbx + 0xa]
mov eax, edi
dec edi
mov dword [rsp + 0x20], edi
test eax, eax
jle 0x1400125a5
mov r14, qword [rsp + 0x70]
lea rdx, [rsp + 0x80]
mov rcx, qword [r14 + 0x88]
call qword [sym.imp.WINHTTP.dll_WinHttpQueryDataAvailable]
test eax, eax
jne 0x1400124f1
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov ebx, 0x80004005
test ecx, ecx
cmovs ebx, ecx
jmp 0x1400125a5
mov r8d, dword [rsp + 0x80]
mov ecx, ebx
test r8d, r8d
je 0x140012599
lea rdx, str.You_are_reading__d_bytes
call fcn.14000dff8
mov ecx, dword [rsp + 0x80]
inc ecx
lea rdx, [0x140036e60]
call fcn.1400203c8
mov rsi, rax
mov qword [rsp + 0x28], rax
test rax, rax
jne 0x140012539
mov ebx, 0x8007000e
jmp 0x1400125a5
lea r9, [rsp + 0x80]
mov r8d, dword [rsp + 0x80]
mov rdx, rsi
mov rcx, qword [r14 + 0x88]
call qword [sym.imp.WINHTTP.dll_WinHttpReadData]
test eax, eax
je 0x1400124ce
mov eax, dword [rsp + 0x80]
mov byte [rax + rsi], 0
mov rdx, rsi
mov rcx, qword [rsp + 0x78]
call fcn.1400143d0
nop
jmp 0x14001258c
mov rcx, rsi
call fcn.14001fe5c
jmp 0x1400124a0
lea rdx, str.You_have_completed_reading_as_dataSize_is_0
call fcn.14000dff8
test edi, edi
jne 0x1400125c9
cmp dword [rsp + 0x80], edi
jbe 0x1400125c9
mov ebx, 0x8000ffff
lea r8d, [rdi + 0xa]
lea rdx, str.You_exceeded_the_maximum_number_of_reads_of__d._Something_is_probably_wrong_creating_a_read_loop_or_data_in_OneSettings_too_large
mov ecx, ebx
call fcn.14000dff8
test ebx, ebx
je 0x1400125db
lea rdx, str.An_error_occurrred_during_the_read_of_OneSettings_data
mov ecx, ebx
call fcn.14000dff8
mov eax, ebx
add rsp, 0x48
pop r14
pop rdi
pop rsi
pop rbx
ret

Function at 0x1400125e8
Capabilities:
Query or enumerate registry value
Read http header
Receive http response
Set http header

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
invalid
invalid
Function at 0x140007790
Capabilities:
Get common file path

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x478
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x3f0], 0xfffffffffffffffe
mov qword [rbp + 0x3e0], rcx
mov qword [rbp + 0x3c8], 2
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d0], xmm0
mov r8d, 0x200
mov eax, 2
mov qword [rbp + 0x3e8], rax
xor edi, edi
xor ebx, ebx
xor r12d, r12d
cmp r8, 0x201
jae 0x140007820
jmp 0x14000780f
jae 0x1400078e0
cmp r8, 0x201
jae 0x140007820
mov esi, 0x200
lea r13, [rbp - 0x58]
mov r15, r8
jmp 0x140007878
sub r8, r12
sub rbx, r12
cmp rbx, r8
jae 0x14000784f
lea rcx, [rbp + 0x3c8]
mov rdx, r12
call fcn.140020e70
mov rax, qword [rbp + 0x3c8]
mov qword [rbp + 0x3e8], rax
mov rdi, qword [rbp + 0x3d0]
mov eax, 0xffffffff
cmp rdi, rax
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rbp + 0x3d8], r12
mov rbx, rdi
mov rsi, r12
mov r13, qword [rbp + 0x3e8]
mov r15, r12
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, r15d
mov rdx, r13
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov r14d, eax
test eax, eax
jne 0x1400078a1
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140007948
mov r8d, r14d
cmp r15, r8
jne 0x140007800
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14000796b
add r15, r15
mov eax, 0xffffffff
cmp r15, rax
cmovae r15, rax
mov r8, r15
cmp r8, 0x201
jb 0x14000780f
jmp 0x140007820
cmp rsi, r8
jb 0x140007985
lea rcx, [rbp + 0x3a8]
mov rdx, r13
call fcn.14000a9a0
movups xmm0, xmmword [rbp + 0x3a8]
movups xmm1, xmmword [rbp + 0x3b8]
mov rsi, qword [rbp + 0x3e0]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
test rdi, rdi
je 0x140007931
add rdi, rdi
mov r8d, 2
mov rcx, qword [rbp + 0x3e8]
mov rdx, rdi
call fcn.140002020
mov rax, rsi
add rsp, 0x478
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rsi, qword [rbp + 0x3e0]
mov qword [rsi], rax
mov byte [rsi + 0x18], 2
test rdi, rdi
jne 0x140007919
jmp 0x140007931
lea rcx, str.internal_error:_entered_unreachable_code_rustc_5680fa18feaa87f3ff04063800aec256c3d4b4belibrary_alloc_src_vecmod.rs
lea r8, str.library_std_src_syswindowsmod.rs
mov edx, 0x28
call fcn.140021e40
jmp 0x14000799a
lea rax, str.library_std_src_syswindowsmod.rs
mov rcx, r8
mov rdx, rsi
mov r8, rax
call fcn.140022290
ud2
Function at 0x14000b3a0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rdi, rdx
movzx ebp, byte [rdx + 0x38]
xor ebx, ebx
cmp bpl, 1
setne dl
mov eax, 0
sbb eax, eax
mov rsi, rcx
or al, dl
movzx ecx, al
cmp cl, 0xff
je 0x14000b3d0
test ecx, ecx
jne 0x14000b420
movzx ebx, byte [rdi + 0x3a]
cmp al, 0xff
je 0x14000b3dc
test ecx, ecx
jne 0x14000b420
mov rcx, rdi
call fcn.14000b280
movzx eax, al
test bpl, bpl
jne 0x14000b427
lea rdx, [rdi + 0x10]
xor ecx, ecx
cmp byte [rdi + 0x10], 6
cmove rdx, rcx
je case.0x14000b413.2
movzx r8d, byte [rdx]
mov ecx, 6
lea r9, [0x14000b598]
movsxd r8, dword [r9 + r8*4]
add r8, r9
jmp r8
mov rcx, qword [rdx + 0x10]
add rcx, 4
jmp case.0x14000b413.2
xor eax, eax
test bpl, bpl
je 0x14000b3ec
xor ecx, ecx
add rax, rcx
movzx r10d, bl
lea rcx, [rax + r10]
mov rdx, qword [rdi + 8]
cmp rdx, rcx
jb 0x14000b579
mov r11, qword [rdi]
lea r8, [r11 + rcx]
cmp rdx, rcx
jne 0x14000b45a
movzx r9d, byte [rdi + 0x10]
xor r10d, r10d
jmp 0x14000b4d9
movzx r9d, byte [rdi + 0x10]
add rax, r10
sub rax, rdx
inc rax
lea rdi, [rdx + r11]
dec rdi
xor r10d, r10d
cmp r9b, 3
jae 0x14000b4a0
nop dword [rax + rax]
cmp byte [rdi], 0x5c
je 0x14000b4bb
inc rax
dec rdi
cmp rax, 1
jne 0x14000b480
jmp 0x14000b4d9
movzx ebx, byte [rdi]
cmp ebx, 0x2f
je 0x14000b4bb
cmp ebx, 0x5c
je 0x14000b4bb
inc rax
dec rdi
cmp rax, 1
jne 0x14000b4a0
jmp 0x14000b4d9
neg rax
add rcx, rax
inc rcx
cmp rdx, rcx
jb 0x14000b587
add r11, rcx
mov r10d, 1
mov r8, r11
sub rdx, rcx
je 0x14000b503
mov al, 9
cmp rdx, 2
je 0x14000b507
cmp rdx, 1
jne 0x14000b517
cmp byte [r8], 0x2e
jne 0x14000b517
xor eax, eax
cmp r9b, 3
setae al
lea eax, [rax + rax*2]
add eax, 7
jmp 0x14000b517
mov al, 0xa
jmp 0x14000b517
cmp byte [r8], 0x2e
jne 0x14000b517
cmp byte [r8 + 1], 0x2e
sete al
xor al, 9
add r10, rdx
mov qword [rsi], r10
mov byte [rsi + 8], al
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret
mov rcx, qword [rdx + 0x10]
mov rdx, qword [rdx + 0x20]
lea r8, [rdx + 1]
test rdx, rdx
cmove r8, rdx
add rcx, r8
add rcx, 8
jmp case.0x14000b413.2
mov rcx, qword [rdx + 0x10]
mov rdx, qword [rdx + 0x20]
lea r8, [rdx + 1]
test rdx, rdx
cmove r8, rdx
add rcx, r8
add rcx, 2
jmp case.0x14000b413.2
mov ecx, 2
jmp case.0x14000b413.2
lea r8, str.library_std_srcpath.rs
call fcn.140022210
ud2
lea r8, str.library_std_srcpath.rs
call fcn.140022210
ud2
Function at 0x14000fd60
Capabilities:
Write file on windows

Disassembly:
push rsi
push rdi
sub rsp, 0xa8
mov rdi, rdx
mov rsi, rcx
mov rcx, qword [rsp + 0xe0]
movups xmm0, xmmword [0x140025f38]
movaps xmmword [rsp + 0x60], xmm0
mov eax, 0xffffffff
cmp r9, rax
cmovb rax, r9
test rcx, rcx
je 0x14000fda4
mov rdx, qword [rsp + 0xe8]
mov qword [rsp + 0x80], rdx
test rcx, rcx
mov qword [rsp + 0x78], rcx
lea rdx, [rsp + 0x80]
cmove rdx, rcx
mov qword [rsp + 0x38], rdx
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r8
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x40], 0
mov rcx, rdi
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ntdll.dll_NtWriteFile]
cmp eax, 0x103
jne 0x14000fe0a
mov rcx, rdi
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [rsp + 0x60]
cmp eax, 0x103
je 0x14000fe41
test eax, eax
js 0x14000fe1b
mov rax, qword [rsp + 0x68]
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14000fe34
mov ecx, eax
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosError]
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
add rsp, 0xa8
pop rdi
pop rsi
ret
mov byte [rsp + 0x5c], 0
mov dword [rsp + 0x58], 0
lea rax, str.fatal_runtime_error:_I_O_error:_operation_failed_to_complete_synchronously_n
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x88], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x90], xmm0
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0x78]
call fcn.14000a680
mov rcx, rax
call fcn.1400053c0
mov ecx, 7
int 0x29
ud2

Function at 0x14001eb70
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
test r8, r8
je 0x14001ebea
mov rax, rdx
mov rdx, qword [rsp + 0x70]
mov esi, ecx
shr esi, 8
lea r8, [rax + r8*2]
xor r11d, r11d
mov rbx, rax
movzx edi, byte [rax + 1]
add rax, 2
lea r10, [r11 + rdi]
cmp byte [rbx], sil
jne 0x14001ebe0
cmp r10, r11
jb 0x14001ec83
cmp r10, rdx
ja 0x14001ec97
add r11, r9
xor ebx, ebx
nop dword [rax]
cmp rdi, rbx
je 0x14001ebe2
lea r14, [rbx + 1]
cmp byte [r11 + rbx], cl
mov rbx, r14
jne 0x14001ebc0
jmp 0x14001ec57
ja 0x14001ebea
mov r11, r10
cmp rax, r8
jne 0x14001eb92
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x14001ec5b
mov r8, qword [rsp + 0x78]
add rdx, r8
movzx ecx, cx
mov al, 1
nop word cs:[rax + rax]
lea r10, [r8 + 1]
movzx r9d, byte [r8]
test r9b, r9b
js 0x14001ec30
mov r8, r10
sub ecx, r9d
jns 0x14001ec4e
jmp 0x14001ec5d
cmp r10, rdx
je 0x14001ec69
movzx r10d, byte [r8 + 1]
add r8, 2
and r9d, 0x7f
shl r9d, 8
or r9d, r10d
sub ecx, r9d
js 0x14001ec5d
xor al, 1
cmp r8, rdx
jne 0x14001ec10
jmp 0x14001ec5d
xor eax, eax
jmp 0x14001ec5d
mov al, 1
and al, 1
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
lea rcx, str.called__Option::unwrap____on_a__None__valuelibrarycore_src_nummod.rsfrom_str_radix_int:_must_lie_in_the_range___2__36_____found
lea r8, str.librarycore_srcunicodeprintable.rs
mov edx, 0x2b
call fcn.140021e40
ud2
lea r8, str.librarycore_srcunicodeprintable.rs
mov rcx, r11
mov rdx, r10
call fcn.140022310
ud2
lea r8, str.librarycore_srcunicodeprintable.rs
mov rcx, r10
call fcn.140022290
ud2
Function at 0x140020754
Capabilities:
Parse pe header

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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x415326
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call fcn.004312a0
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
jne 0x4151eb
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x415200
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
sub rcx, rbx
add rax, rbx
mov rbx, rcx
nop
test rbx, rbx
jbe 0x415225
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x40], rax
mov rcx, rbx
jmp 0x415239
cmp rbx, 0x1000
jae 0x4151f5
nop dword [rax]
jmp 0x4152a9
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
nop
cmp rbx, 0x1000
jae 0x41524d
xor edx, edx
jmp 0x4152a0
mov rcx, qword [sym.imp.kernel32.dll_VirtualFree]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x4000
call fcn.004312a0
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x20], 0
sete al
mov rcx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x38]
mov edx, eax
mov rax, qword [rsp + 0x40]
nop dword [rax]
test dl, dl
jne 0x41522f
jmp 0x415214
call fcn.0045f5a0
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov qword [rsp + 0x30], rax
call fcn.004356a0
lea rax, [0x004bf9f3]
mov ebx, 0x18
call fcn.00435fa0
mov rax, qword [rsp + 0x38]
call fcn.00435ca0
lea rax, [0x004bfab3]
mov ebx, 0x19
call fcn.00435fa0
mov rax, qword [rsp + 0x30]
nop
call fcn.00435ca0
call fcn.00435900
call fcn.00435720
lea rax, [0x004c1fae]
mov ebx, 0x21
nop dword [rax + rax]
call fcn.00433d60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ba40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00415180
Function at 0x415360
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x41558a
sub rsp, 0x58
mov qword [rsp + 0x50], rbp
lea rbp, [rsp + 0x50]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
mov rcx, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
call fcn.00431320
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x60]
mov rcx, rax
cmp qword [rsp + 0x28], rax
je 0x4153d9
mov rbx, qword [rsp + 0x68]
mov rax, rbx
jmp 0x4153ec
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
sub rdx, rbx
add rcx, rbx
mov rbx, rdx
test rbx, rbx
jbe 0x415410
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov rdx, rbx
nop
jmp 0x415424
cmp rbx, 0x1000
jae 0x4153e3
jmp 0x4154a5
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
shr rbx, 1
and rbx, 0xfffffffffffff000
mov qword [rsp + 0x38], rbx
cmp rbx, 0x1000
jae 0x415436
xor esi, esi
jmp 0x415496
mov rax, qword [sym.imp.kernel32.dll_VirtualAlloc]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], 0x1000
mov qword [rsp + 0x20], 4
nop dword [rax]
call fcn.00431320
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x28], 0
sete al
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x38]
mov esi, eax
mov rax, qword [rsp + 0x68]
test sil, sil
jne 0x41541a
nop
jmp 0x415402
call fcn.0045f5a0
xorps xmm15, xmm15
mov r14, qword [0x005b6408]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov eax, dword [rsp]
mov dword [rsp + 0x34], eax
cmp eax, 8
jne 0x415525
call fcn.004356a0
lea rax, [0x004bffe0]
mov ebx, 0x19
call fcn.00435fa0
mov rax, qword [rsp + 0x68]
call fcn.00435ca0
lea rax, [0x004bfab3]
mov ebx, 0x19
call fcn.00435fa0
mov eax, dword [rsp + 0x34]
nop dword [rax]
call fcn.00435ca0
call fcn.00435900
call fcn.00435720
lea rax, [0x004bbc5b]
mov ebx, 0xd
nop dword [rax + rax]
call fcn.00433d60
cmp eax, 0x5af
je 0x4154c8
call fcn.004356a0
lea rax, [0x004bffe0]
mov ebx, 0x19
nop dword [rax]
call fcn.00435fa0
mov rax, qword [rsp + 0x38]
call fcn.00435ca0
lea rax, [0x004bfab3]
mov ebx, 0x19
nop dword [rax + rax]
call fcn.00435fa0
mov eax, dword [rsp + 0x34]
call fcn.00435ca0
call fcn.00435900
call fcn.00435720
lea rax, [0x004c19a8]
mov ebx, 0x1f
call fcn.00433d60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045ba40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00415360