joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1404e0fe3
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov ax, 0x40ab
mov qword [rsp + 0x18], rbp
push rsi
movzx rax, r14w
bswap eax
mov eax, r15d
push rdi
push r14
movsxd rax, r14d
lahf
movsx rax, si
mov eax, 0x1450
jmp 0x1404e1010
call fcn.14044d4b5
sub rsp, rax
sub r10b, r8b
btc r14w, di
ror r10b, 0xb7
mov rax, qword [0x1400b7288]
cmp si, ax
sar dil, cl
shrd r10w, dx, 0x90
xor rax, rsp
bsf si, r10w
shl r14d, cl
mov qword [rsp + 0x1440], rax
rcr dil, cl
cbw
adc si, 0x40b
movsxd r10, edx
mov rdi, rcx
rcr sil, cl
add r14w, cx
cdqe
mov rax, r10
add cx, 0x75f8
mov ebp, r9d
test r12b, 0xac
sub r14b, 0xfe
cmova rsi, r15
sar rax, 6
rcl dx, cl
bts dx, r10w
lea rcx, [0x1400ba940]
rcr si, cl
and r14b, 0x61
and r10d, 0x3f
sar r14b, 0xc9
shl dh, 0xe1
clc
add rbp, r8
sal r14b, 0x5f
neg r14
mov rsi, r8
bts r14, rsi
xadd dh, dl
mov rax, qword [rcx + rax*8]
lea rdx, [r10 + r10*8]
shrd r14w, si, 0x5e
rcr r14d, 0xc1
mov r14, qword [rax + rdx*8 + 0x28]
clc
cmp r13w, 0x78a6
test rdi, rdx
xor eax, eax
clc
jmp 0x1404e10dd
mov qword [rdi], rax
mov dword [rdi + 8], eax
cmp r8, rbp
jae 0x1404e11df
lea rbx, [rsp + 0x40]
cmp rsi, rbp
jmp 0x1404e10f9
jae 0x1404e115b
mov al, byte [rsi]
jmp 0x1404e1106
inc rsi
cmp bl, r9b
stc
cmp al, 0xa
jmp 0x1404e1114
jne 0x1404e1132
inc dword [rdi + 8]
jmp 0x1404e1122
mov byte [rbx], 0xd
jmp 0x1404e112a
inc rbx
jmp 0x1404e1132
mov byte [rbx], al
inc rbx
shl ah, 0x4e
cdqe
shr eax, 0x41
lea rax, [rsp + 0x143f]
cmp spl, 0x2d
stc
cmc
cmp rbx, rax
jmp 0x1404e1155
jb 0x1404e10f1
and qword [rsp + 0x20], 0
rol ax, 0x6d
movsx dx, r8b
lea rax, [rsp + 0x40]
sub ebx, eax
movsx ecx, bp
lea r9, [rsp + 0x30]
not dx
mov dx, 0x6f1
mov rdx, rbx
mov r8d, ebx
movsx edx, ax
movzx rcx, r11w
bswap cx
lea rdx, [rsp + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404e11a5
je 0x1404e11d7
mov eax, dword [rsp + 0x30]
add dword [rdi + 4], eax
jmp 0x1404e11b7
cmp eax, ebx
jmp 0x1404e11be
jb 0x1404e11df
cmp rsi, rbp
jmp 0x1404e11cc
jb 0x1404e10ec
jmp 0x1404e11df
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rdi], eax
mov rax, rdi
xchg ch, cl
test r13d, r10d
mov rcx, qword [rsp + 0x1440]
test sil, r11b
xor rcx, rsp
jmp 0x1404e11fa
call fcn.1404a4670
lea r11, [rsp + 0x1450]
mov rbx, qword [r11 + 0x20]
movsxd r14, ecx
mov rbp, qword [r11 + 0x30]
mov rsp, r11
movzx r14w, al
movzx r14, r8w
jmp 0x1404e1223
pop r14
pop rdi
pop rsi
ret
Function at 0x1404e1228
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
movzx eax, r12w
mov qword [rsp + 0x18], rbp
cbw
push rsi
push rdi
movsx eax, si
cbw
push r14
movsx rax, cx
bswap ax
movzx eax, cx
mov eax, 0x1450
call fcn.14044d4b5
sub rsp, rax
neg ebp
rcr bpl, 0xda
mov rax, qword [0x1400b7288]
xor rax, rsp
mov qword [rsp + 0x1440], rax
movsxd r10, edx
sar esi, 0xc0
mov rdi, rcx
mov rax, r10
rcl dl, cl
mov ebp, r9d
sar rax, 6
sub si, 0x798
lea rcx, [0x1400ba940]
sar dl, 1
add r14b, sil
test r9b, 0xcb
and r10d, 0x3f
ror dh, cl
cmp r15b, dil
bt rsi, rsi
lea rbp, [rbp + r8]
inc sil
mov rsi, r8
bts edx, r12d
shr dh, cl
mov rax, qword [rcx + rax*8]
add dx, 0x157f
lea rdx, [r10 + r10*8]
shr r14b, 0x9b
stc
mov r14, qword [rax + rdx*8 + 0x28]
clc
test r11b, spl
sub eax, eax
mov qword [rdi], rax
mov dword [rdi + 8], eax
clc
jmp 0x1404e12e2
cmp r8, rbp
jmp 0x1404e12ea
jae 0x1404e1434
lea rbx, [rsp + 0x40]
test r11, 0x182014bc
stc
cmp rsi, rbp
jmp 0x1404e1305
jae 0x1404e1375
movzx eax, word [rsi]
test al, dl
add rsi, 2
cmp ax, 0xa
jmp 0x1404e131d
jne 0x1404e134b
add dword [rdi + 8], 2
sar cx, 0xd9
sbb ch, 0xb5
movzx rcx, r15w
mov ecx, 0xd
cmc
mov word [rbx], cx
add rbx, 2
test r15d, 0x54322804
clc
cmp r14w, si
mov word [rbx], ax
test ch, 0x94
shl ah, cl
add rbx, 2
xadd rax, rax
sets al
lea rax, [rsp + 0x143e]
clc
cmp rbx, rax
jmp 0x1404e136f
jb 0x1404e12fd
and qword [rsp + 0x20], 0
cmovl r8w, r12w
xor r8w, bx
lea rax, [rsp + 0x40]
movzx dx, r11b
bsr r9, r10
movsx r8w, r8b
sub rbx, rax
lea r9, [rsp + 0x30]
btc r8w, r13w
sar rbx, 1
bsf edx, r14d
neg cl
bts r8w, r13w
lea rdx, [rsp + 0x40]
or r8d, 0x1b55542d
bt r8w, 0x65
add ebx, ebx
mov cx, r13w
movzx r8, dx
mov rcx, r14
jmp 0x1404e13db
mov r8d, ebx
jmp 0x1404e13e3
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jmp 0x1404e13f0
je 0x1404e1426
mov eax, dword [rsp + 0x30]
cmp r10b, 0xd6
jmp 0x1404e1403
add dword [rdi + 4], eax
cmp eax, ebx
jmp 0x1404e140d
jb 0x1404e1434
cmp rsi, rbp
jmp 0x1404e141b
jb 0x1404e12f0
jmp 0x1404e1434
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rdi], eax
sal ecx, 0x56
adc cl, r13b
mov rax, rdi
neg ecx
mov rcx, qword [rsp + 0x1440]
test al, 0xda
xor rcx, rsp
jmp 0x1404e144b
call fcn.1404a4670
lea r11, [rsp + 0x1450]
mov rbx, qword [r11 + 0x20]
movzx bp, al
movzx r14d, ax
cmovbe r14d, eax
mov rbp, qword [r11 + 0x30]
mov rsp, r11
sete dil
mov di, 0x74a3
bswap di
pop r14
mov si, 0x4bf0
pop rdi
movsx rsi, si
movzx esi, sp
xchg sil, sil
pop rsi
ret
Function at 0x1404e4cad
Capabilities:
Allocate thread local storage

Disassembly:
push rbx
shl ebx, cl
sub rsp, 0x20
bswap rdx
mov rbx, rcx
rol r8w, cl
movsx r8d, r8w
btr dx, r10w
lea r9, [0x1400c8e90]
neg r8b
btc r8w, r10w
sub ecx, ecx
movsxd rdx, r13d
lea r8, [0x1400c8e88]
lea rdx, [0x1400cfb70]
jmp 0x1404e4cef
call fcn.1404e4f9f
test rax, rax
jmp 0x1404e4cfc
je 0x1404e4d19
mov rcx, rbx
add rsp, 0x20
bswap bx
pop rbx
jmp 0x1404e4d12
jmp qword [case.0x14044d43c.0]
add rsp, 0x20
jmp 0x1404e4d27
pop rbx
jmp 0x1404e4d2d
jmp qword [sym.imp.KERNEL32.dll_TlsAlloc]

Function at 0x1404e4e28
Capabilities:
Set thread local storage value

Disassembly:
mov qword [rsp + 8], rbx
stc
cmp bx, bp
rol bx, cl
push rdi
shl dil, cl
shrd rdi, rbx, 0xef
sal dil, 0x4d
sub rsp, 0x20
movsx r9d, r8w
mov rbx, rdx
cwd
bswap rdi
cqo
lea r9, [0x1400c8ea8]
xchg dx, dx
cwd
movsx dx, r13b
mov edi, ecx
lea rdx, [0x1400cf748]
movsx cx, dl
bswap rcx
xchg rcx, rcx
mov ecx, 3
xchg r8b, r8b
lea r8, [0x1400c8ea0]
jmp 0x1404e4e8b
call fcn.1404e4f9f
mov rdx, rbx
bt ecx, r8d
mov ecx, edi
clc
cmp ecx, 0x3bc844a2
test rax, rax
jmp 0x1404e4ea8
je 0x1404e4eb9
call qword [case.0x14044d43c.0]
jmp 0x1404e4ebf
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
mov rbx, qword [rsp + 0x30]
bt di, sp
bsr edi, edx
xchg edi, edi
add rsp, 0x20
movzx di, r8b
pop rdi
jmp 0x1404e4edc
ret
Function at 0x1404e60d9
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
cmp r13b, dl
mov qword [rsp + 0x18], rbp
dec bpl
movzx ebp, r14w
shl bpl, 0x56
push rdi
push r12
rcl r12b, cl
ror r12w, 0x1d
clc
push r13
push r14
test r10b, 0xc5
rcr bpl, cl
rol bp, cl
push r15
sub dil, 0x9d
sub rsp, 0x20
mov rdi, qword [rdx]
sub r13d, r13d
mov r12, r9
movzx r14w, r13b
or ebp, r15d
btr bp, r15w
mov rbp, r8
sbb r14d, 0x61706a69
sbb r14b, r9b
mov r14, rdx
mov r15b, 0x91
sub r15b, 0xb8
mov r15, rcx
test rcx, rcx
jmp 0x1404e614d
je 0x1404e632e
mov rbx, rcx
test r8, r8
je 0x1404e62a3
cmp byte [rdi], r13b
jne 0x1404e6178
mov r8d, 1
jmp 0x1404e6173
jmp 0x1404e61b4
cmp byte [rdi + 1], r13b
jmp 0x1404e6181
jne 0x1404e6192
mov r8d, 2
jmp 0x1404e61b4
mov al, byte [rdi + 2]
stc
adc r9b, spl
neg al
not r9b
movsx ecx, ax
sbb r8, r8
cmp sil, 0x1e
sub edx, esi
neg r8
setp dl
add r8, 3
mov r9, r12
lea rcx, [rsp + 0x50]
movsx edx, r14w
mov rdx, rdi
call fcn.1404eaf95
mov rdx, rax
cmc
clc
cmp r13b, 0x47
cmp rax, 0xffffffffffffffff
je 0x1404e62dd
test rax, rax
jmp 0x1404e61e3
je 0x1404e62c7
mov ecx, dword [rsp + 0x50]
clc
cmp r8w, cx
test r12b, spl
cmp ecx, 0xffff
jmp 0x1404e6200
jbe 0x1404e627a
cmp rbp, 1
jbe 0x1404e62a3
add ecx, 0xffff0000
cmp esi, r14d
movsx ax, ah
mov r8d, 0xd800
mov eax, ecx
cmp r9, 0x2552109f
stc
cmc
mov dword [rsp + 0x50], ecx
clc
test dl, r13b
shr eax, 0xa
jmp 0x1404e623e
dec rbp
or ax, r8w
cmp r12b, 0xca
mov word [rbx], ax
xadd ah, al
sal rax, cl
rcl rax, cl
mov eax, 0x3ff
and cx, ax
add rbx, 2
shr ah, cl
mov ah, 0xae
ror ax, 0x2c
mov eax, 0xdc00
test rbx, 0x597e28b0
or cx, ax
stc
mov word [rbx], cx
add rdi, rdx
test r10b, 0x14
jmp 0x1404e628a
add rbx, 2
test rax, 0x1b796a49
sub rbp, 1
jmp 0x1404e629d
jne 0x1404e615f
sub rbx, r15
xor ah, 0xb3
shld rax, r11, 0x94
mov qword [r14], rdi
rcl ax, cl
sar rbx, 1
mov al, r10b
mov rax, rbx
jmp 0x1404e62c2
jmp 0x1404e62fc
mov rdi, r13
jmp 0x1404e62cf
mov word [rbx], r13w
jmp 0x1404e62d8
jmp 0x1404e62a3
mov qword [r14], rdi
jmp 0x1404e62e5
call fcn.1404ba009
mov dword [rax], 0x2a
or rax, 0xffffffffffffffff
mov dil, 0x55
bswap ebp
rcr dil, cl
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
shr r12d, 0x30
shr r15b, cl
add rsp, 0x20
mov r14w, 0x56b
pop r15
movzx r14d, r13w
pop r14
mov r13b, 0x83
pop r13
movsxd r12, r12d
movsx rdi, r8w
pop r12
pop rdi
ret
mov rbx, r13
test r9, 0x2a721822
cmp rbp, 0x50e87e7c
cmp byte [rdi], r13b
jmp 0x1404e6347
jne 0x1404e635d
mov r8d, 1
jmp 0x1404e6358
jmp 0x1404e6396
cmp byte [rdi + 1], r13b
jmp 0x1404e6366
jne 0x1404e6377
mov r8d, 2
jmp 0x1404e6396
mov al, byte [rdi + 2]
rol r9w, 0x82
neg al
sbb r8, r8
ror rdx, 0x46
neg r8
add r8, 3
adc r9, 0x76ba23ac
mov r9, r12
rcr edx, 0xcb
movzx dx, bh
movzx rdx, r11w
mov rdx, rdi
cmp cl, bpl
test r14b, bl
xor ecx, ecx
jmp 0x1404e63b4
call fcn.1404eaf95
cmp rax, 0xffffffffffffffff
jmp 0x1404e63c2
je 0x1404e62e5
test rax, rax
jmp 0x1404e63d0
je 0x1404e62ba
cmp rax, 4
jmp 0x1404e63df
jne 0x1404e63e8
inc rbx
add rdi, rax
jmp 0x1404e63f0
inc rbx
jmp 0x1404e63f8
jmp 0x1404e633f
Function at 0x1404eaab8
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
btc eax, 0x36
cmovge ebp, edx
add rsi, 0x2ec27ac3
push rdi
bswap rax
push r12
push r13
push r14
or rbp, 0x107b2eab
cbw
push r15
sub rsp, 0x40
mov rax, qword [0x1400b7288]
ror r14b, 0xd6
sal sil, 0xb8
xor rax, rsp
btr r14d, 0xb1
mov qword [rsp + 0x30], rax
shr r15b, 0xb
movzx ebp, si
mov rsi, qword [rdx]
mov rbp, r9
ror r14b, cl
mov qword [rsp + 0x20], r9
mov r13, r8
mov r14, rdx
mov r15, rcx
test rcx, rcx
je 0x1404eac5c
mov rbx, rcx
xchg r8b, cl
sal dh, cl
mov rdi, rsi
cdq
xadd cl, dh
movzx edx, word [rsi]
btc r8d, 0x84
or r12w, r15w
add r12b, r10b
lea r12, [rsp + 0x28]
or cx, di
adc r8, 0x323455e
or r8, 0x74ca6ac7
cmp r13, 4
mov cl, r13b
movzx cx, ch
mov r8, rbp
bswap cx
cmovno cx, sp
movzx cx, r11b
cmovae r12, rbx
seto cl
mov rcx, rcx
jmp 0x1404eab86
mov rcx, r12
call fcn.1404eb9fa
mov rbp, rax
cmc
test bl, bl
clc
cmp rax, 0xffffffffffffffff
jmp 0x1404eab9e
je 0x1404eac48
cmp r12, rbx
je 0x1404eabd1
cmp r13, rax
jmp 0x1404eabb5
jb 0x1404eac2e
mov r8, rax
mov dl, spl
mov rdx, r12
mov rcx, rbx
jmp 0x1404eabcc
call fcn.1404a81fb
test rbp, rbp
jmp 0x1404eabd9
je 0x1404eabf2
lea rax, [rbx + rbp]
cmp byte [rax - 1], 0
jmp 0x1404eabec
je 0x1404eac1f
add rsi, 2
test rbp, rbp
cmovne rdi, rsi
jmp 0x1404eac02
sub r13, rbp
cmc
test r13w, r10w
add rbx, rbp
mov bp, di
mov rbp, qword [rsp + 0x20]
jmp 0x1404eac1a
jmp 0x1404eab38
xor edi, edi
cmp edi, ebx
shrd ebx, esi, 0x27
rol bl, 0x1a
lea rbx, [rax - 1]
sub rbx, r15
movsx rax, r11w
cwde
cbw
mov qword [r14], rdi
movzx ax, r13b
mov rax, rbx
jmp 0x1404eacc7
mov qword [r14], rdi
test cx, si
or rax, 0xffffffffffffffff
jmp 0x1404eac57
jmp 0x1404eacc7
sub ebx, ebx
movzx edx, word [rsi]
setle r8b
lea rcx, [rsp + 0x28]
mov r8, rbp
call fcn.1404eb9fa
cmp rax, 0xffffffffffffffff
jmp 0x1404eac7b
je 0x1404eacc7
test rax, rax
jmp 0x1404eac89
je 0x1404eac9f
cmp byte [rsp + rax + 0x27], 0
jmp 0x1404eac99
je 0x1404eacb3
add rbx, rax
test r11, rbp
add rsi, 2
jmp 0x1404eacae
jmp 0x1404eac5e
dec rax
shl ch, 0x3f
test r10d, 0x2d011938
lea rax, [rax + rbx]
rcr cx, cl
mov rcx, qword [rsp + 0x30]
test ecx, r8d
xor rcx, rsp
jmp 0x1404eacd7
call fcn.1404a4670
mov rbx, qword [rsp + 0x90]
mov r14d, 0x4daf37f7
sar bpl, cl
add rsp, 0x40
cmovae r13w, r8w
not r13w
pop r15
pop r14
movzx r13, r8w
movzx r13w, r13b
pop r13
movzx esi, si
movsx rbp, r13w
pop r12
not bpl
mov edi, 0x6e6105f2
pop rdi
movsx ebp, r8w
movzx esi, dx
pop rsi
mov ebp, r14d
movzx ebp, bx
pop rbp
ret
Function at 0x1400040f0
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push rdi
cmp dword [0x140041a64], 0
lea rdi, [0x140041a60]
mov r11d, r8d
mov r9d, edx
mov r10, rcx
jne 0x1400041c8
mov qword [rsp + 0x10], rbx
xor edx, edx
mov rbx, rdi
nop dword [rax]
mov r8d, edx
lea rbx, [rbx + 4]
and r8d, 1
mov eax, edx
shr eax, 1
neg r8d
and r8d, 0xedb88320
inc edx
xor r8d, eax
mov eax, r8d
shr r8d, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, r8d
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
neg ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
neg eax
and eax, 0xedb88320
xor eax, ecx
mov dword [rbx - 4], eax
cmp edx, 0x100
jb 0x140004120
mov rbx, qword [rsp + 0x10]
not r11d
mov eax, r11d
test r9d, r9d
jle 0x1400041fe
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r10]
lea r10, [r10 + 1]
movzx edx, al
xor rdx, rcx
shr eax, 8
xor eax, dword [rdi + rdx*4]
sub r9d, 1
jne 0x1400041e0
not eax
pop rdi
ret
movzx r9d, byte [r10]
lea r8, [r10 + 1]
test r9b, r9b
je 0x14000423f
nop dword [rax + rax]
cmp r9b, 0x23
jne 0x140004223
cmp byte [r8], r9b
jne 0x140004223
cmp byte [r8 + 1], r9b
cmove eax, r11d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [rdi + rdx*4]
test r9b, r9b
jne 0x140004210
not eax
pop rdi
ret
Function at 0x140004440
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x20
mov rdi, r8
test r8, r8
je 0x140004459
mov qword [r8], 0
lea rdx, [0x14003a5b8]
call fcn.140004250
mov rbx, rax
test rax, rax
jne 0x140004478
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
xor edx, edx
mov qword [rsp + 0x30], rbp
mov rcx, rbx
mov qword [rsp + 0x38], rsi
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x140004538
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rsi, eax
cmp esi, 0xffffffff
je 0x140004538
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x140004538
mov rax, qword [0x140041928]
mov rbp, rsi
test rax, rax
je 0x1400044d5
inc dword [rax + 0x3c8]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rsi, rax
test rax, rax
je 0x140004538
mov r9, rbx
mov r8, rbp
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rcx, rbx
cmp rax, rbp
je 0x140004525
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x140041928]
test rax, rax
je 0x14000451a
dec dword [rax + 0x3c8]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140004541
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rdi, rdi
je 0x140004533
mov qword [rdi], rbp
mov rax, rsi
jmp 0x140004543
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor eax, eax
mov rbp, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140013980
Capabilities:
Write file on windows

Disassembly:
push rsi
push rdi
push r15
sub rsp, 0x20
mov rdi, qword [0x140041928]
xor esi, esi
mov r15, rcx
mov dword [rdi + 0x2d9c], esi
test rcx, rcx
je 0x140013a9a
mov qword [rsp + 0x40], rbx
lea rbx, [rdi + 0x2da0]
mov dword [rdi + 0x2d9c], esi
mov ecx, dword [rbx + 4]
mov qword [rsp + 0x48], rbp
test ecx, ecx
jns 0x1400139da
mov eax, ecx
cdq
sub eax, edx
mov edx, esi
sar eax, 1
add eax, ecx
mov rcx, rbx
test eax, eax
cmovg edx, eax
call fcn.1400149b0
mov dword [rbx], esi
cmp dword [rbx + 4], esi
jne 0x1400139ee
mov edx, 8
mov rcx, rbx
call fcn.1400149b0
movsxd rcx, dword [rbx]
mov ebp, esi
mov rax, qword [rbx + 8]
mov byte [rcx + rax], sil
inc dword [rbx]
cmp dword [rdi + 0x2db0], esi
jle 0x140013a3a
mov qword [rsp + 0x50], r14
mov r14, rsi
nop dword [rax]
mov r9, qword [rdi + 0x2db8]
mov r8, rbx
add r9, r14
mov rcx, rdi
mov rdx, r9
call qword [r9 + 0x20]
inc ebp
add r14, 0x30
cmp ebp, dword [rdi + 0x2db0]
jl 0x140013a10
mov r14, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
cmp qword [rbx + 8], rsi
je 0x140013a49
mov esi, dword [rbx]
dec esi
mov rax, qword [rdi + 0x2da8]
lea rdx, [0x14003a5bc]
test rax, rax
movsxd rsi, esi
lea rdi, [0x14004191c]
mov rcx, r15
cmovne rdi, rax
call fcn.140004250
mov rbx, rax
test rax, rax
je 0x140013a95
mov r9, rax
mov r8, rsi
mov edx, 1
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r15
pop rdi
pop rsi
ret
Function at 0x14001b9b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov r11, rsp
push r13
push r14
sub rsp, 0xb8
mov r13, rcx
movsxd rax, r9d
xor ecx, ecx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0xe8], ecx
mov r14, rdx
test r9d, r9d
jle 0x14001bc12
mov qword [r11 + 8], rbx
lea rbx, [r8 + 0x20]
mov qword [r11 + 0x10], rbp
movzx ebp, byte [r13 + 0x24]
mov qword [r11 + 0x18], rsi
mov qword [r11 - 0x18], rdi
mov edi, pe_nt_image_headers64
mov qword [r11 - 0x20], r12
xor r12d, r12d
mov qword [r11 - 0x28], r15
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x48], xmm7
xorps xmm7, xmm7
movaps xmmword [r11 - 0x58], xmm8
movzx r11d, byte [r13 + 0x20]
movss xmm8, dword [0x14003ab70]
nop word [rax + rax]
movss xmm6, dword [rbx - 0x20]
comiss xmm6, xmm7
jbe 0x14001ba7a
movsxd r10, dword [r14 + 0x24]
mov r9, qword [r14 + 8]
movsx ecx, di
movzx eax, byte [r10 + r9 + 7]
movzx edx, byte [r10 + r9 + 6]
imul edx, ecx
movsx ecx, di
add dx, ax
movzx eax, byte [r10 + r9 + 5]
movsx r8d, dx
movzx edx, byte [r10 + r9 + 4]
imul edx, ecx
add ax, dx
cwde
sub eax, r8d
movd xmm0, eax
jmp 0x14001ba99
movsxd rdx, dword [r14 + 0x1c]
xorps xmm6, xmm8
mov rax, qword [r14 + 8]
movzx ecx, byte [rdx + rax + 0x12]
movzx eax, byte [rdx + rax + 0x13]
shl ecx, 8
add ecx, eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
xor edi, edi
mov byte [rbx], r11b
mov byte [rbx + 1], bpl
divss xmm6, xmm0
cmp dword [rbx - 0x10], edi
jle 0x14001bbb0
mov r15, qword [rsp + 0xf0]
mov rax, r12
shl rax, 4
add r15, 6
xor esi, esi
add r15, rax
nop word [rax + rax]
mov rax, qword [rbx - 0x18]
test rax, rax
jne 0x14001bae0
mov edx, dword [rbx - 0x1c]
add edx, edi
jmp 0x14001bae3
mov edx, dword [rax + rsi]
mov eax, dword [r13 + 0x24]
xorps xmm3, xmm3
xorps xmm2, xmm2
mov rcx, r14
cvtsi2ss xmm3, rax
mov eax, dword [r13 + 0x20]
cvtsi2ss xmm2, rax
mulss xmm3, xmm6
mulss xmm2, xmm6
call fcn.140016cb0
mov edx, eax
mov rcx, r14
lea rax, [rsp + 0x5c]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x54]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
movss dword [rsp + 0x28], xmm7
movss dword [rsp + 0x20], xmm7
call fcn.140019600
movzx ecx, word [r13 + 0x1c]
inc r12
movzx r11d, word [r13 + 0x20]
movzx eax, cx
sub ax, word [rsp + 0x50]
dec cx
movzx ebp, word [r13 + 0x24]
dec ax
add ax, r11w
inc edi
add ax, word [rsp + 0x54]
add rsi, 4
mov word [r15 - 2], ax
movzx eax, bp
sub ax, word [rsp + 0x58]
add ax, cx
mov ecx, dword [rsp + 0xe8]
add ax, word [rsp + 0x5c]
inc ecx
mov word [r15], ax
add r15, 0x10
mov dword [rsp + 0xe8], ecx
cmp edi, dword [rbx - 0x10]
jl 0x14001bad0
jmp 0x14001bbb7
mov ecx, dword [rsp + 0xe8]
add rbx, 0x28
mov edi, pe_nt_image_headers64
sub qword [rsp + 0x60], 1
jne 0x14001ba30
movaps xmm8, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x90]
mov r15, qword [rsp + 0xa0]
mov r12, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0xe0]
mov rbp, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xd0]
mov eax, ecx
add rsp, 0xb8
pop r14
pop r13
ret
Function at 0x140020060
Capabilities:
Resolve function by parsing pe exports

Disassembly:
test r9d, 0xff000000
je 0x140020217
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
movss xmm3, dword [rsp + 0x70]
xorps xmm0, xmm0
comiss xmm3, xmm0
mov esi, r9d
mov rdi, r8
mov rbp, rdx
mov rbx, rcx
jbe 0x1400200f6
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call fcn.14001f9d0
mov r8d, dword [rbx + 0x80]
mov r9d, esi
mov rdx, qword [rbx + 0x88]
mov rcx, rbx
call fcn.14001efe0
mov ecx, dword [rbx + 0x84]
test ecx, ecx
jns 0x1400200e7
mov eax, ecx
cdq
sub eax, edx
xor edx, edx
sar eax, 1
add eax, ecx
lea rcx, [rbx + 0x80]
test eax, eax
cmovg edx, eax
call fcn.140014630
mov dword [rbx + 0x80], 0
jmp 0x140020203
mov edx, 6
movaps xmmword [rsp + 0x30], xmm6
lea r8d, [rdx - 2]
call fcn.14001ded0
movzx edx, word [rbx + 0x48]
mov rax, qword [rbx + 0x38]
movss xmm1, dword [rdi]
movss xmm2, dword [rbp + 4]
movss xmm3, dword [rbp]
lea ecx, [rdx + 1]
movss xmm6, dword [rax + 4]
movss xmm5, dword [rax]
movss xmm4, dword [rdi + 4]
mov rax, qword [rbx + 0x58]
mov word [rax], dx
mov rax, qword [rbx + 0x58]
mov word [rax + 2], cx
lea ecx, [rdx + 2]
mov rax, qword [rbx + 0x58]
mov word [rax + 4], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 6], dx
add dx, 3
mov rax, qword [rbx + 0x58]
mov word [rax + 8], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 0xa], dx
movsd xmm0, qword [rbp]
mov rax, qword [rbx + 0x50]
movsd qword [rax], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 8], xmm5
movss dword [rax + 0xc], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x10], esi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x14], xmm1
movss dword [rax + 0x18], xmm2
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x1c], xmm5
movss dword [rax + 0x20], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x24], esi
movsd xmm0, qword [rdi]
mov rax, qword [rbx + 0x50]
movsd qword [rax + 0x28], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x30], xmm5
movss dword [rax + 0x34], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x38], esi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x3c], xmm3
movss dword [rax + 0x40], xmm4
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x44], xmm5
movss dword [rax + 0x48], xmm6
mov rax, qword [rbx + 0x50]
movaps xmm6, xmmword [rsp + 0x30]
mov dword [rax + 0x4c], esi
add qword [rbx + 0x50], 0x50
add dword [rbx + 0x48], 4
add qword [rbx + 0x58], 0xc
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret