joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400c1c00
Capabilities:
Query environment variable

Disassembly:
sub rsp, 0x138
call qword [sym.imp.msvcrt.dll_getenv]
mov byte [rsp + 0x20], 0
test rax, rax
je 0x1400c1c45
lea rdx, [rsp + 0x20]
mov r8d, 0x104
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsA]
cmp byte [rsp + 0x20], 0
je 0x1400c1c45
lea rcx, [rsp + 0x20]
call qword [str._E_n_]
add rsp, 0x138
ret
xor eax, eax
add rsp, 0x138
ret

Function at 0x1400c3890
Capabilities:
Generate random numbers via winapi

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rdi, rcx
mov rbx, rdx
lea rcx, [rsp + 0x50]
mov r9d, 1
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x20], 0xf0000040
call qword [sym.imp.ADVAPI32.DLL_CryptAcquireContextA]
test eax, eax
je 0x1400c38ec
mov rcx, qword [rsp + 0x50]
mov r8, rdi
mov edx, ebx
call qword [sym.imp.ADVAPI32.DLL_CryptGenRandom]
mov rcx, qword [rsp + 0x50]
xor edx, edx
test eax, eax
jne 0x1400c38fc
call qword [sym.imp.ADVAPI32.DLL_CryptReleaseContext]
mov eax, 1
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
call qword [sym.imp.ADVAPI32.DLL_CryptReleaseContext]
mov rbx, qword [rsp + 0x40]
xor eax, eax
add rsp, 0x30
pop rdi
ret

Function at 0x1400c72e0
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x28
xor eax, eax
test edx, edx
lea r8, [rsp + 0x38]
setne al
mov edx, 0x8004667e
mov dword [rsp + 0x38], eax
call qword [sym.imp.WSOCK32.DLL_ioctlsocket]
add rsp, 0x28
ret
Function at 0x1400c7360
Capabilities:
Resolve dns

Disassembly:
push rbx
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor r13d, r13d
mov r12, r9
mov qword [r9], r13
lea r9, [rsp + 0x68]
mov ebx, r13d
mov r15d, r13d
call qword [sym.imp.WS2_32.DLL_getaddrinfo]
mov r14d, eax
test eax, eax
jne 0x1400c7524
mov qword [rsp + 0x58], rsi
mov rsi, qword [rsp + 0x68]
mov qword [rsp + 0x60], rdi
test rsi, rsi
je 0x1400c7504
mov qword [rsp + 0x50], rbp
mov eax, dword [rsi + 4]
cmp eax, 2
jne 0x1400c73bd
lea ebp, [rax + 0xe]
jmp 0x1400c73c9
cmp eax, 0x17
jne 0x1400c7471
lea ebp, [rax + 5]
cmp qword [rsi + 0x20], r13
je 0x1400c7471
mov rax, qword [rsi + 0x10]
test rax, rax
je 0x1400c7471
cmp rax, rbp
jb 0x1400c7471
mov ecx, 0x30
call qword [sub.msvcrt.dll_malloc]
mov rdi, rax
test rax, rax
je 0x1400c74ac
mov ecx, dword [rsi]
mov dword [rax], ecx
mov ecx, dword [rsi + 4]
mov dword [rax + 4], ecx
mov ecx, dword [rsi + 8]
mov dword [rax + 8], ecx
mov ecx, dword [rsi + 0xc]
mov dword [rax + 0x10], ebp
mov dword [rax + 0xc], ecx
mov rcx, rbp
mov qword [rax + 0x20], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x28], r13
call qword [sub.msvcrt.dll_malloc]
mov qword [rdi + 0x20], rax
test rax, rax
je 0x1400c749b
mov rdx, qword [rsi + 0x20]
mov r8, rbp
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsi + 0x18]
test rcx, rcx
je 0x1400c745e
call qword [str._E_n_]
mov qword [rdi + 0x18], rax
test rax, rax
je 0x1400c7480
test rbx, rbx
cmove rbx, rdi
test r15, r15
je 0x1400c746e
mov qword [r15 + 0x28], rdi
mov r15, rdi
mov rsi, qword [rsi + 0x28]
test rsi, rsi
jne 0x1400c73b0
jmp 0x1400c74b2
mov rcx, qword [rdi + 0x20]
mov r14d, 8
call qword [sub.msvcrt.dll_free]
mov rcx, rdi
call qword [sub.msvcrt.dll_free]
jmp 0x1400c74b2
mov rcx, rdi
mov r14d, 8
call qword [sub.msvcrt.dll_free]
jmp 0x1400c74b2
mov r14d, 8
mov rcx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x50]
test rcx, rcx
je 0x1400c74c7
call qword [sym.imp.WS2_32.DLL_freeaddrinfo]
test r14d, r14d
je 0x1400c74ff
test rbx, rbx
je 0x1400c74fa
mov rcx, qword [rbx + 0x20]
call qword [sub.msvcrt.dll_free]
mov rcx, qword [rbx + 0x18]
call qword [sub.msvcrt.dll_free]
mov rdi, qword [rbx + 0x28]
mov rcx, rbx
call qword [sub.msvcrt.dll_free]
mov rbx, rdi
test rdi, rdi
jne 0x1400c74d1
mov rbx, r13
jmp 0x1400c7513
test rbx, rbx
jne 0x1400c7513
mov r14d, 0x2af9
mov ecx, r14d
call qword [sym.imp.WSOCK32.DLL_WSASetLastError]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov qword [r12], rbx
mov eax, r14d
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rbx
ret
Function at 0x1400c94f0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
mov rcx, qword [rcx]
mov rdi, r8
cmp dword [rcx + 8], 2
mov rsi, rdx
jne 0x1400c953a
mov rax, qword [rbx + 0x18]
test rax, rax
jne 0x1400c952a
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov r9, qword [rcx + 0x10]
mov edx, 1
mov rcx, rsi
call rax
jmp 0x1400c9584
cmp qword [rbx + 0x10], 0
jne 0x1400c956f
mov rcx, qword [rcx + 0x10]
lea rdx, [0x1400e99d4]
call qword [sym.imp.msvcrt.dll_fopen]
mov qword [rbx + 0x10], rax
test rax, rax
jne 0x1400c956f
or rax, 0xffffffffffffffff
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov r9, qword [rbx + 0x10]
mov r8, rdi
mov edx, 1
mov rcx, rsi
call qword [sym.imp.msvcrt.dll_fread]
mov rdi, rax
test rax, rax
jne 0x1400c95a8
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1400c959f
call qword [sym.imp.msvcrt.dll_fclose]
mov qword [rbx + 0x10], rdi
mov rax, qword [rbx]
mov rcx, qword [rax]
mov qword [rbx], rcx
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rax, rdi
add rsp, 0x20
pop rdi
ret

Function at 0x1400cb7b0
Capabilities:
Get hostname

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
movsxd rbx, edx
mov rdi, rcx
mov byte [rcx], 0
mov edx, ebx
call qword [sym.imp.WSOCK32.DLL_gethostname]
mov byte [rbx + rdi - 1], 0
test eax, eax
jne 0x1400cb7ea
lea edx, [rax + 0x2e]
mov rcx, rdi
call qword [sym.imp.msvcrt.dll_strchr]
test rax, rax
je 0x1400cb7e8
mov byte [rax], 0
xor eax, eax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400cdb30
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rdi
push r14
sub rsp, 0x20
mov eax, dword [rcx + 0x18]
mov rbx, rcx
mov ebp, r8d
lea ecx, [rax + rax]
mov eax, dword [rbx + 0x20]
mov r14, rdx
add rax, 0x18
add rcx, rax
call qword [sub.msvcrt.dll_malloc]
mov rdi, rax
test rax, rax
jne 0x1400cdb72
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop rdi
pop rbp
ret
lea rcx, [rax + 0x18]
mov qword [rax], rbx
mov qword [rsp + 0x48], rsi
mov qword [rax + 8], rcx
mov eax, dword [rbx + 0x18]
add rax, rcx
mov qword [rdi + 0x10], rax
cmp ebp, dword [rbx + 0x1c]
jbe 0x1400cdbb5
call qword [rbx]
mov rcx, qword [rdi + 8]
mov r8d, ebp
mov rdx, r14
call qword [rbx + 8]
mov r14d, dword [rbx + 0x18]
mov rdx, qword [rdi + 8]
add r14, qword [rdi + 0x10]
mov rcx, r14
call qword [rbx + 0x10]
mov ebp, dword [rbx + 0x20]
mov rcx, qword [rdi + 8]
call qword [rbx]
mov rcx, qword [rdi + 0x10]
call qword [rbx]
xor esi, esi
test rbp, rbp
je 0x1400cdc11
mov rsi, rbp
nop dword [rax + rax]
movzx eax, byte [r14]
lea rdx, [rsp + 0x40]
mov r8d, 1
xor al, 0x36
mov byte [rsp + 0x40], al
mov rcx, qword [rdi + 8]
call qword [rbx + 8]
movzx eax, byte [r14]
lea rdx, [rsp + 0x40]
xor al, 0x5c
mov r8d, 1
lea r14, [r14 + 1]
mov byte [rsp + 0x40], al
mov rcx, qword [rdi + 0x10]
call qword [rbx + 8]
dec rbp
jne 0x1400cdbd0
mov eax, dword [rbx + 0x1c]
cmp rsi, rax
jae 0x1400cdc53
nop dword [rax]
mov rcx, qword [rdi + 8]
lea rdx, [0x1400f6902]
mov r8d, 1
call qword [rbx + 8]
mov rcx, qword [rdi + 0x10]
lea rdx, [0x1400f6903]
mov r8d, 1
call qword [rbx + 8]
mov eax, dword [rbx + 0x1c]
inc rsi
cmp rsi, rax
jb 0x1400cdc20
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
mov rax, rdi
add rsp, 0x20
pop r14
pop rdi
pop rbp
ret
Function at 0x140008660
Capabilities:
Write file on windows

Disassembly:
mov r11, rsp
sub rsp, 0x98
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rcx, qword [0x140042fb8]
cmp dword [rcx + 0x12cc310], 1
jne 0x140008830
mov r9d, 0xa
mov qword [r11 - 8], rdi
add rcx, 0x12cb2e0
mov qword [r11 + 8], rbx
lea rdx, str.K_0_0_c_c
lea r8d, [r9 + 3]
call fcn.1400010b0
mov rdx, qword [0x140042fb8]
xor edi, edi
cmp dword [rdx + 0x12cc310], 1
jne 0x140008708
mov rbx, qword [rdx + 0x1436720]
cmp dword [rbx + 8], 1
je 0x140008708
add rdx, 0x12cb2e0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], dil
jne 0x1400086e2
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], edi
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
mov r8d, 0x1f4
call fcn.14000b7c0
movsxd r8, eax
test eax, eax
je 0x140008820
mov rbx, qword [0x140042fb8]
mov edx, edi
mov rcx, qword [rbx + 0x1436720]
jle 0x140008769
mov r9d, dword [rcx + 0xe00018]
mov eax, dword [rcx + 0xe0001c]
cmp r9d, eax
je 0x140008769
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x140008762
mov dword [rcx + 0xe0001c], edi
inc edx
cmp edx, r8d
jl 0x140008742
xorps xmm0, xmm0
mov byte [r8 + rbx + 0xbb12e0], dil
movups xmmword [rsp + 0x60], xmm0
lea r11, [rbx + 0xbb12e6]
mov r10, rdi
movups xmmword [rsp + 0x70], xmm0
nop dword [rax + rax]
mov r8d, edi
mov r9d, edi
mov rax, rdi
nop dword [rax]
movzx edx, byte [rax + r11]
lea ecx, [rdx - 0x30]
cmp cl, 9
ja 0x1400087ba
movsx ecx, cl
lea edx, [r8 + r8*4]
lea r8d, [rcx + rdx*2]
jmp 0x1400087c5
cmp dl, 0x2d
jne 0x1400087d0
mov r9d, 1
inc rax
cmp rax, 0x10
jl 0x1400087a0
jmp 0x1400087d8
cmp dl, 0x2c
jne 0x1400087d8
inc rax
add r11, rax
mov eax, r8d
neg eax
cmp r9d, 1
movzx ecx, byte [r11]
cmovne eax, r8d
mov dword [rsp + r10*4 + 0x40], eax
lea eax, [rcx - 0x30]
cmp al, 9
jbe 0x140008800
sub cl, 0x2c
cmp cl, 1
ja 0x14000880c
inc r10
cmp r10, 0x1000
jl 0x140008790
cmp dword [rsp + 0x6c], 0x128e0
jl 0x140008820
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x14366b0], eax
mov rbx, qword [rsp + 0xa0]
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140013b30
add rsp, 0x98
ret
Function at 0x140009110
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0xa0
movaps xmmword [rsp + 0x90], xmm6
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r9, qword [0x140042fb8]
lea rdx, str.RAMP__d__d_r_n
movsd xmm6, qword [0x14003ccc0]
movsd xmm0, qword [r9 + 0x600818]
lea rcx, [r9 + 0x12cb2e0]
mov r9d, dword [r9 + 0x600850]
mulsd xmm0, xmm6
cvttsd2si r8d, xmm0
call fcn.1400010b0
mov rdx, qword [0x140042fb8]
xor edi, edi
cmp dword [rdx + 0x12cc310], 1
jne 0x1400091c6
mov rbx, qword [rdx + 0x1436720]
cmp dword [rbx + 8], 1
je 0x1400091c6
add rdx, 0x12cb2e0
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rdx + r8], dil
jne 0x1400091a0
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], edi
mov r8d, 0x1f4
call fcn.14000b7c0
movsxd r8, eax
test eax, eax
jg 0x1400091e2
mov eax, 0xffffffff
jmp 0x140009319
mov rbx, qword [0x140042fb8]
mov edx, edi
mov byte [r8 + rbx + 0xbb12e0], dil
mov rcx, qword [rbx + 0x1436720]
mov r9d, dword [rcx + 0xe00018]
mov eax, dword [rcx + 0xe0001c]
cmp r9d, eax
je 0x140009228
inc eax
mov dword [rcx + 0xe0001c], eax
cmp eax, 0x700000
jb 0x140009221
mov dword [rcx + 0xe0001c], edi
inc edx
cmp edx, r8d
jl 0x140009201
xorps xmm0, xmm0
lea r11, [rbx + 0xbb12e5]
movups xmmword [rsp + 0x40], xmm0
mov r10, rdi
movups xmmword [rsp + 0x50], xmm0
nop
mov r8d, edi
mov r9d, edi
mov rdx, rdi
nop dword [rax]
movzx ecx, byte [rdx + r11]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x140009269
movsx eax, al
lea ecx, [r8 + r8*4]
lea r8d, [rax + rcx*2]
jmp 0x140009274
cmp cl, 0x2d
jne 0x14000927f
mov r9d, 1
inc rdx
cmp rdx, 0x10
jl 0x140009250
jmp 0x140009287
cmp cl, 0x2c
jne 0x140009287
inc rdx
add r11, rdx
mov eax, r8d
neg eax
cmp r9d, 1
movzx ecx, byte [r11]
cmovne eax, r8d
mov dword [rsp + r10*4 + 0x40], eax
lea eax, [rcx - 0x30]
cmp al, 9
jbe 0x1400092af
sub cl, 0x2c
cmp cl, 1
ja 0x1400092bb
inc r10
cmp r10, 0x1000
jl 0x140009240
movd xmm0, dword [rsp + 0x48]
movd xmm1, dword [rsp + 0x58]
mov eax, dword [rsp + 0x50]
mov ecx, dword [rsp + 0x4c]
cvtdq2pd xmm0, xmm0
mov dword [rbx + 0x600810], eax
xor eax, eax
mov dword [rbx + 0x600814], ecx
mov dword [rbx + 0x14366b0], ecx
cvtdq2pd xmm1, xmm1
divsd xmm0, xmm6
divsd xmm1, xmm6
movsd qword [rbx + 0x12cc348], xmm0
movd xmm0, dword [rsp + 0x54]
cvtdq2pd xmm0, xmm0
movsd qword [rbx + 0x12cc318], xmm1
divsd xmm0, xmm6
movsd qword [rbx + 0x600808], xmm0
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140013b30
mov rbx, qword [rsp + 0xb0]
movaps xmm6, xmmword [rsp + 0x90]
add rsp, 0xa0
pop rdi
ret
Function at 0x140009350
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0xd0
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0xc0], rax
mov r9d, 0xa
lea rdx, str.DELSAMPLE_0_0_c_c
lea rcx, [rsp + 0x80]
lea r8d, [r9 + 3]
call fcn.1400010b0
mov rdi, qword [0x140042fb8]
xor ebx, ebx
cmp dword [rdi + 0x12cc310], 1
jne 0x1400093ee
mov rdi, qword [rdi + 0x1436720]
cmp dword [rdi + 8], 1
je 0x1400093ee
lea rax, [rsp + 0x80]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], bl
jne 0x1400093c0
mov rcx, qword [rdi + 0xe00028]
lea r9, [rsp + 0x30]
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rdi + 0xe00020], ebx
call fcn.14000cf50
mov rcx, qword [0x140042fb8]
test eax, eax
jne 0x140009505
mov qword [rsp + 0xe0], rsi
add rcx, 0xbb12e0
movabs rsi, 0x100100002401
mov edx, ebx
nop dword [rax]
movzx eax, byte [rcx]
cmp al, 0x2c
ja 0x14000942d
bt rsi, rax
jb 0x14000943a
inc rcx
inc edx
cmp edx, 0x100
jl 0x140009420
lea rdx, [rsp + 0x38]
mov r8d, ebx
lea rdi, [rcx + 1]
movzx ecx, byte [rdi]
cmp cl, 0x2c
ja 0x140009454
bt rsi, rcx
jb 0x14000946a
mov byte [rdx], cl
inc rdi
inc rdx
inc r8d
cmp r8d, 0x100
jl 0x140009446
jmp 0x14000946c
mov byte [rdx], bl
lea rcx, [rsp + 0x38]
call fcn.14001c780
lea rdx, [rsp + 0x38]
inc rdi
mov r8d, ebx
movzx ecx, byte [rdi]
cmp cl, 0x2c
ja 0x14000948f
bt rsi, rcx
jb 0x1400094a5
mov byte [rdx], cl
inc rdi
inc rdx
inc r8d
cmp r8d, 0x100
jl 0x140009481
jmp 0x1400094a7
mov byte [rdx], bl
lea rcx, [rsp + 0x38]
call fcn.14001c780
lea rax, [rsp + 0x58]
sub rdi, rax
lea rcx, [rsp + 0x58]
nop
movzx edx, byte [rdi + rcx + 1]
cmp dl, 0x2c
ja 0x1400094d0
bt rsi, rdx
jb 0x1400094e1
mov byte [rcx], dl
inc ebx
inc rcx
cmp ebx, 0x100
jl 0x1400094c0
jmp 0x1400094e4
mov byte [rcx], 0
lea rcx, [rsp + 0x58]
call fcn.14001c780
mov rcx, qword [0x140042fb8]
mov rsi, qword [rsp + 0xe0]
mov dword [rcx + 0x60086c], eax
jmp 0x140009516
mov eax, dword [rcx + 0x12cc3d4]
test eax, eax
cmovg ebx, eax
mov dword [rcx + 0x60086c], ebx
mov rcx, qword [rsp + 0xc0]
xor rcx, rsp
call fcn.140013b30
mov rbx, qword [rsp + 0xe8]
add rsp, 0xd0
pop rdi
ret
Function at 0x140009970
Capabilities:
Create directory

Disassembly:
push rbx
sub rsp, 0x1a0
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov rax, qword [0x140042fb8]
lea rcx, [rsp + 0x70]
mov dword [rax + 0x12cc38c], 0
call fcn.14001b8ec
lea rcx, [rsp + 0x70]
call fcn.14001bc58
mov r8, qword [0x140042fb8]
mov rbx, rax
movups xmm0, xmmword [rax]
cmp dword [r8 + 0x12cc374], 0
movups xmmword [r8 + 0x14366c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r8 + 0x14366d0], xmm1
mov ecx, dword [rax + 0x20]
mov dword [r8 + 0x14366e0], ecx
je 0x140009b95
add r8, 0xbb0be0
lea rdx, str._sLogFile
lea rcx, [rsp + 0x90]
call fcn.1400010b0
lea rcx, [rsp + 0x90]
call qword [sym.imp.SHLWAPI.dll_PathIsDirectoryA]
cmp eax, 1
je 0x140009a27
xor edx, edx
lea rcx, [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov rax, qword [0x140042fb8]
cmp dword [rax + 0x12cc3b4], 0
jne 0x140009a97
cmp dword [rax + 0x12cc378], 2
jne 0x140009a97
mov edx, dword [rbx + 0x10]
lea rcx, [rax + 0xbb0ce0]
mov eax, dword [rbx]
lea r8, [rsp + 0x90]
mov r9d, dword [rbx + 0x14]
inc edx
mov dword [rsp + 0x48], 0x2e
add r9d, 0x76c
mov dword [rsp + 0x40], eax
mov eax, dword [rbx + 4]
mov dword [rsp + 0x38], eax
mov eax, dword [rbx + 8]
mov dword [rsp + 0x30], eax
mov eax, dword [rbx + 0xc]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edx
lea rdx, str._slog__04d__02d_02d__02d_02d_02d_RAW_cbin
call fcn.1400010b0
jmp 0x140009b42
cmp dword [rax + 0x14366e8], 1
lea rcx, [0x14003b7f8]
lea rdx, [0x14003b7f4]
cmovne rdx, rcx
lea rcx, [rsp + 0x78]
call fcn.1400010b0
mov rax, qword [0x140042fb8]
lea r10, [rsp + 0x78]
mov r8d, dword [rbx + 0x10]
mov r9d, dword [rbx + 0x14]
inc r8d
mov dword [rsp + 0x60], 0x2e
add r9d, 0x76c
movsd xmm0, qword [rax + 0x600818]
lea rcx, [rax + 0xbb0ce0]
mov eax, dword [rax + 0x60085c]
mulsd xmm0, qword [0x14003ccc0]
mov qword [rsp + 0x58], r10
mov dword [rsp + 0x50], eax
mov eax, dword [rbx]
cvttsd2si edx, xmm0
mov dword [rsp + 0x48], edx
lea rdx, str._slog__04d__02d_02d__02d_02d_02d_R_05d_Th_02d__s_ccsv
mov dword [rsp + 0x40], eax
mov eax, dword [rbx + 4]
mov dword [rsp + 0x38], eax
mov eax, dword [rbx + 8]
mov dword [rsp + 0x30], eax
mov eax, dword [rbx + 0xc]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
lea r8, [rsp + 0x90]
call fcn.1400010b0
mov rax, qword [0x140042fb8]
xorps xmm0, xmm0
mov dword [rax + 0x14366bc], 1
movups xmmword [rax + 0xbb0b50], xmm0
movups xmmword [rax + 0xbb0b60], xmm0
movups xmmword [rax + 0xbb0b70], xmm0
movups xmmword [rax + 0xbb0b80], xmm0
movups xmmword [rax + 0xbb0b90], xmm0
movups xmmword [rax + 0xbb0ba0], xmm0
movups xmmword [rax + 0xbb0bb0], xmm0
movups xmmword [rax + 0xbb0bc0], xmm0
movups xmmword [rax + 0xbb0bd0], xmm0
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.140013b30
add rsp, 0x1a0
pop rbx
ret
Function at 0x14000d020
Capabilities:
Write file on windows

Disassembly:
sub rsp, 0x48
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov r8, qword [0x140042fb8]
cmp dword [r8 + 0x143675c], 0
je 0x14000d0e4
lea rcx, [r8 + 0x12cb2e0]
mov dword [rsp + 0x20], 0xa
mov r8d, dword [r8 + 0x1436758]
lea rdx, str.AVERAGE__d_c_c
mov r9d, InitCommonControls
call fcn.1400010b0
mov rdx, qword [0x140042fb8]
cmp dword [rdx + 0x12cc310], 1
jne 0x14000d0d4
mov qword [rsp + 0x40], rbx
mov rbx, qword [rdx + 0x1436720]
cmp dword [rbx + 8], 1
je 0x14000d0cf
add rdx, 0x12cb2e0
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x14000d0a0
mov rcx, qword [rbx + 0xe00028]
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rbx + 0xe00020], 0
mov rbx, qword [rsp + 0x40]
call fcn.14000cf50
mov ecx, 0x32
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140013b30
add rsp, 0x48
ret
Function at 0x14000e490
Capabilities:
Read file on windows

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x140042fb8]
lea rdx, [0x14003b918]
add rcx, 0xbb0ee0
call fcn.140017e84
mov rbx, rax
test rax, rax
jne 0x14000e4be
add rsp, 0x20
pop rbx
ret
mov rcx, qword [0x140042fb8]
mov edx, 0x80
add rcx, 0xbb12e0
mov qword [rsp + 0x30], rdi
mov r9, rbx
lea r8d, [rdx - 0x7f]
call fcn.14002006c
mov rcx, qword [0x140042fb8]
xor edi, edi
add rcx, 0xbb12e0
mov r9, rbx
lea edx, [rdi + 0x20]
lea r8d, [rdi + 1]
call fcn.14002006c
cmp eax, 1
jl 0x14000e57d
mov r8, qword [0x140042fb8]
mov r9, rbx
movzx ecx, byte [r8 + 0xbb12e8]
movzx eax, byte [r8 + 0xbb12e9]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0xbb12ea]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0xbb12eb]
shl ecx, 8
or ecx, eax
sub ecx, 0x20
movsxd rdx, ecx
lea rcx, [r8 + 0xbb1300]
mov r8d, 1
call fcn.14002006c
mov rcx, qword [0x140042fb8]
mov edx, 0x20
add rcx, 0xbb12e0
mov r9, rbx
inc edi
lea r8d, [rdx - 0x1f]
call fcn.14002006c
cmp eax, 1
jge 0x14000e506
mov rcx, rbx
call fcn.140018404
mov rcx, rbx
call fcn.140018404
mov eax, edi
mov rdi, qword [rsp + 0x30]
add rsp, 0x20
pop rbx
ret
Function at 0x14000eb30
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
sub rsp, 0x28
mov rcx, qword [0x140042fb8]
lea rdx, [0x14003b918]
add rcx, 0xbb0ee0
call fcn.140017e84
mov rbp, rax
test rax, rax
jne 0x14000eb76
mov rax, qword [0x140042fb8]
xor ebx, ebx
mov dword [rax + 0x143672c], ebx
lea eax, [rbp - 1]
add rsp, 0x28
pop rbp
pop rbx
ret
mov rcx, qword [0x140042fb8]
mov edx, 0x80
mov qword [rsp + 0x48], rsi
add rcx, 0xbb12e0
mov qword [rsp + 0x50], rdi
mov r9, rbp
mov qword [rsp + 0x20], r14
lea r8d, [rdx - 0x7f]
call fcn.14002006c
mov rcx, qword [0x140042fb8]
xor ebx, ebx
mov r14d, ebx
mov eax, dword [rcx + 0x12cc38c]
lea edi, [rbx + 0x20]
inc eax
test eax, eax
jle 0x14000ecc8
nop dword [rax]
nop word [rax + rax]
add rcx, 0xbb12e0
mov r9, rbp
mov r8d, 1
mov rdx, rdi
call fcn.14002006c
cmp eax, 1
jl 0x14000ec98
mov rcx, qword [0x140042fb8]
mov r9, rbp
mov r8d, 1
movzx eax, byte [rcx + 0xbb12e9]
movzx esi, byte [rcx + 0xbb12e8]
shl esi, 8
or esi, eax
movzx eax, byte [rcx + 0xbb12ea]
shl esi, 8
or esi, eax
movzx eax, byte [rcx + 0xbb12eb]
shl esi, 8
or esi, eax
movzx eax, byte [rcx + 0xbb12fc]
mov byte [rsp + 0x40], al
movzx eax, byte [rcx + 0xbb12fd]
mov byte [rsp + 0x41], al
movzx eax, byte [rcx + 0xbb12fe]
mov byte [rsp + 0x42], al
movzx eax, byte [rcx + 0xbb12ff]
mov byte [rsp + 0x43], al
lea eax, [rsi - 0x20]
movss xmm0, dword [rsp + 0x40]
cvtps2pd xmm0, xmm0
movsxd rdx, eax
movsd qword [rcx + 0x12cc3e8], xmm0
add rcx, 0xbb1300
call fcn.14002006c
mov rcx, qword [0x140042fb8]
inc r14d
mov eax, dword [rcx + 0x12cc38c]
inc eax
cmp r14d, eax
jl 0x14000ebd0
jmp 0x14000eccc
mov rcx, rbp
call fcn.140018404
mov rax, qword [0x140042fb8]
mov dword [rax + 0x143672c], ebx
or dword [rax + 0xbb0b44], 0x400
or dword [rax + 0xbb0b48], 0x80000
mov eax, 0xffffffff
jmp 0x14000ed30
mov esi, dword [rsp + 0x40]
mov rcx, rbp
call fcn.140018404
mov r8, qword [0x140042fb8]
movzx eax, byte [r8 + 0xbb12f9]
movzx edx, byte [r8 + 0xbb12f8]
movzx ecx, byte [r8 + 0xbb12f2]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [r8 + 0xbb12f3]
add edx, 6
or ecx, eax
imul edx, ecx
lea eax, [rdx + rdx*2]
shl eax, 2
cmp esi, edi
jle 0x14000ed22
add edi, 2
inc ebx
cmp eax, ebx
jle 0x14000ed22
cmp edi, esi
jl 0x14000ed15
mov dword [r8 + 0x12cc2e0], ebx
call fcn.14000ed50
xor eax, eax
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x48]
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop rbp
pop rbx
ret
Function at 0x14000f180
Capabilities:
Create thread

Disassembly:
push rbx
push rdi
sub rsp, 0x78
mov rax, qword [0x140041010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword [rcx + 0xe00028]
mov edi, r8d
dec rax
mov r10, rdx
mov rbx, rcx
cmp rax, 0xfffffffffffffffd
ja 0x14000f1b6
mov eax, 1
jmp 0x14000f201
mov qword [rsp + 0x70], rsi
xor r9d, r9d
xor esi, esi
xor r8d, r8d
mov qword [rsp + 0x30], rsi
mov edx, 0xc0000000
mov dword [rsp + 0x28], 0x80
mov rcx, r10
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rbx + 0xe00028], rax
cmp rax, 0xffffffffffffffff
jne 0x14000f215
mov dword [rbx + 8], 1
xor eax, eax
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140013b30
add rsp, 0x78
pop rdi
pop rbx
ret
mov edx, 0x100000
mov dword [rbx + 8], esi
mov r8d, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetupComm]
test eax, eax
je 0x14000f1fa
mov rcx, qword [rbx + 0xe00028]
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetCommState]
mov eax, dword [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov rcx, qword [rbx + 0xe00028]
and eax, 0xffff8001
or eax, 1
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x48], eax
mov word [rsp + 0x52], 8
mov byte [rsp + 0x54], sil
call qword [sym.imp.KERNEL32.dll_SetCommState]
test eax, eax
je 0x14000f1fa
mov qword [rsp + 0x28], rsi
lea r8, [0x14000f2b0]
mov r9, rbx
mov dword [rsp + 0x20], esi
xor edx, edx
xor ecx, ecx
call fcn.140017ce8
mov qword [rbx + 0xe00030], rax
mov eax, 1
jmp 0x14000f1fc

Function at 0x140014814
Capabilities:
Parse pe header

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

Function at 0x14002064c
Capabilities:
Parse pe header

Disassembly:
xor r8d, r8d
xor edx, edx
jmp 0x14002043c