joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18001f5c0
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, qword [0x18007c0c8]
mov rax, qword [0x18007c0c0]
xor ecx, ecx
sub rdx, rax
sar rdx, 2
test edx, edx
je 0x18001f7e1
cmp dword [rax], 0x6435437f
je 0x18001f605
inc ecx
add rax, 4
cmp ecx, edx
jb 0x18001f5e8
mov eax, 1
add rsp, 0x60
pop rbp
ret
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x6e65706f
mov dword [rbp - 0x1c], 0x32336c67
mov dword [rbp - 0x18], 0x6c6c642e
mov byte [rbp - 0x14], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x18001f7e1
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x65526c67
mov dword [rbp - 0x3c], 0x69506461
mov qword [rbp - 0x38], 0x736c6578
mov qword [rbp - 0x30], 0
mov dword [rbp - 0x28], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x536c6777
mov dword [rbp - 0x3c], 0x42706177
mov dword [rbp - 0x38], 0x65666675
mov qword [rbp - 0x34], 0x7372
mov qword [0x18007bae0], rax
mov qword [rbp - 0x2c], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x536c6777
mov dword [rbp - 0x3c], 0x4c706177
mov dword [rbp - 0x38], 0x72657961
mov dword [rbp - 0x34], 0x66667542
mov qword [0x18007bb28], rax
mov qword [rbp - 0x30], 0x737265
mov dword [rbp - 0x28], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x436c6777
mov dword [rbp - 0x3c], 0x74616572
mov dword [rbp - 0x38], 0x6e6f4365
mov qword [rbp - 0x34], 0x74786574
mov qword [0x18007bb48], rax
mov qword [rbp - 0x2c], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x446c6777
mov dword [rbp - 0x3c], 0x74656c65
mov dword [rbp - 0x38], 0x6e6f4365
mov qword [rbp - 0x34], 0x74786574
mov qword [0x18007bad8], rax
mov qword [rbp - 0x2c], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x40], 0x4d6c6777
mov dword [rbp - 0x3c], 0x43656b61
mov dword [rbp - 0x38], 0x65727275
mov qword [rbp - 0x34], 0x746e
mov qword [0x18007baf8], rax
mov qword [rbp - 0x2c], 0
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18007bb40], rax
mov eax, 1
add rsp, 0x60
pop rbp
ret
Function at 0x18001f9c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, qword [0x18007c0c8]
mov rax, qword [0x18007c0c0]
xor ecx, ecx
sub rdx, rax
sar rdx, 2
test edx, edx
je 0x18001face
cmp dword [rax], 0x264d4161
je 0x18001fa05
inc ecx
add rax, 4
cmp ecx, edx
jb 0x18001f9e8
mov eax, 1
add rsp, 0x60
pop rbp
ret
lea rcx, [rbp - 0x40]
mov dword [rbp - 0x40], 0x6562696c
mov dword [rbp - 0x3c], 0x642e6c67
mov word [rbp - 0x38], 0x6c6c
mov byte [rbp - 0x36], 0
mov dword [rbp - 0x20], 0x4762696c
mov dword [rbp - 0x1c], 0x7653454c
mov dword [rbp - 0x18], 0x6c642e32
mov word [rbp - 0x14], 0x6c
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x18001face
lea rcx, [rbp - 0x20]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x18001face
lea rcx, [rbp - 0x40]
mov dword [rbp - 0x10], 0x536c6765
mov dword [rbp - 0xc], 0x42706177
mov dword [rbp - 8], 0x65666675
mov word [rbp - 4], 0x7372
mov byte [rbp - 2], 0
mov dword [rbp - 0x30], 0x65526c67
mov dword [rbp - 0x2c], 0x69506461
mov dword [rbp - 0x28], 0x736c6578
mov byte [rbp - 0x24], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x10]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp - 0x20]
mov qword [0x18007bac0], rax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rbp - 0x30]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18007bb08], rax
mov eax, 1
add rsp, 0x60
pop rbp
ret
Function at 0x18001fca0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rdx, qword [0x18007c0c8]
mov rax, qword [0x18007c0c0]
xor ebx, ebx
sub rdx, rax
mov rdi, rcx
mov r8d, ebx
sar rdx, 2
test edx, edx
je 0x18001fce4
mov rcx, rax
nop
cmp dword [rcx], 0x5f141e32
je 0x18001fd28
inc r8d
add rcx, 4
cmp r8d, edx
jb 0x18001fcd0
mov dword [0x18007ba5c], ebx
mov r8d, ebx
test edx, edx
je 0x18001fd08
mov rcx, rax
cmp dword [rcx], 0x4766a246
je 0x18001fd34
inc r8d
add rcx, 4
cmp r8d, edx
jb 0x18001fcf4
mov r8d, ebx
test edx, edx
je 0x18001fd86
mov rcx, rax
cmp dword [rcx], 0x5f141e32
je 0x18001fd34
inc r8d
add rcx, 4
cmp r8d, edx
jb 0x18001fd12
jmp 0x18001fd86
mov dword [0x18007ba5c], 1
jmp 0x18001fcea
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x61726464
mov dword [rsp + 0x24], 0x6c642e77
mov word [rsp + 0x28], 0x6c
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x18001fd7f
mov ecx, dword [rdi + 0x1000438]
call fcn.18001d630
mov qword [0x18007baf0], rax
mov ecx, dword [rdi + 0x100043c]
call fcn.18001d630
mov qword [0x18007bb30], rax
mov rax, qword [0x18007c0c0]
mov rcx, qword [0x18007c0c8]
sub rcx, rax
sar rcx, 2
test ecx, ecx
je 0x18001fe15
cmp dword [rax], 0x4766a2c9
je 0x18001fdba
inc ebx
add rax, 4
cmp ebx, ecx
jb 0x18001fd98
mov eax, 1
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x39643364
mov dword [rsp + 0x24], 0x6c6c642e
mov byte [rsp + 0x28], 0
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x18001fe15
mov ecx, dword [rdi + 0x100042c]
call fcn.18001d6d0
mov qword [0x18007bb10], rax
mov ecx, dword [rdi + 0x1000430]
call fcn.18001d6d0
mov qword [0x18007bad0], rax
mov ecx, dword [rdi + 0x1000434]
call fcn.18001d6d0
mov qword [0x18007bae8], rax
mov eax, 1
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
Function at 0x180025af0
Capabilities:
Create thread

Disassembly:
mov r11, rsp
sub rsp, 0x48
xor r8d, r8d
lea rax, [r11 + 8]
mov qword [r11 - 0x18], rcx
mov qword [r11 - 0x10], rax
mov qword [r11 + 8], r8
test edx, edx
je 0x180025b68
lea rax, [r11 + 0x10]
mov dword [r11 + 0x10], r8d
lea r9, [r11 - 0x18]
mov qword [r11 - 0x20], rax
mov dword [r11 - 0x28], r8d
lea r8, [0x180025b90]
xor edx, edx
xor ecx, ecx
mov qword [r11 - 8], rbx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, rax
cmp eax, 0xffffffff
je 0x180025b59
test rax, rax
je 0x180025b59
or edx, 0xffffffff
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x40]
add rsp, 0x48
ret
call rcx
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
mov rax, qword [rsp + 0x50]
add rsp, 0x48
ret
Function at 0x180026490
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push r13
push r14
push r15
lea rbp, [rsp - 7]
sub rsp, 0x98
mov ebx, 0xc00000
mov rsi, rcx
mov r15, rdx
mov ecx, ebx
xor r14d, r14d
mov qword [rbp - 0x59], rbx
call fcn.180003210
mov r13, rax
test rax, rax
jne 0x1800264e6
add rsp, 0x98
pop r15
pop r14
pop r13
pop rsi
pop rbx
pop rbp
ret
cmp rsi, r15
ja 0x180026698
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x88], r12
nop
xor eax, eax
lea rdx, [rbp - 0x49]
mov ecx, esi
lea r8d, [rax + 0x30]
mov qword [rbp - 0x49], 0
mov qword [rbp - 0x41], rax
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x29], rax
mov qword [rbp - 0x21], rax
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
cmp rax, 0x30
jne 0x180026688
cmp dword [rbp - 0x29], 0x1000
mov rdi, qword [rbp - 0x31]
mov r12, qword [rbp - 0x49]
mov qword [rbp - 0x51], rdi
jne 0x180026677
test dword [rbp - 0x25], 0x101
jne 0x180026677
cmp rbx, rdi
jae 0x180026592
mov edx, edi
mov rcx, r13
mov rbx, r13
call fcn.180003cd4
mov r13, rax
test rax, rax
jne 0x18002658e
test rbx, rbx
je 0x180026585
mov rcx, rbx
call fcn.1800031d0
lea rsi, [rdi + r12]
jmp 0x18002667b
mov qword [rbp - 0x59], rdi
mov r8d, edi
mov rdx, r13
mov rcx, r12
call fcn.180027820
test eax, eax
je 0x180026677
mov eax, dword [rbp + 0x4f]
sub esi, r12d
mov r15d, edi
sub r15d, eax
add esi, r13d
add r15d, r13d
cmp esi, r15d
jae 0x180026673
nop word [rax + rax]
mov ecx, dword [rbp + 0x67]
mov r8, qword [rbp + 0x5f]
mov rdx, qword [rbp + 0x57]
mov dword [rsp + 0x20], ecx
mov r9d, eax
mov ecx, esi
mov ebx, esi
call qword [rbp + 0x8f]
cmp eax, 1
jne 0x18002665d
mov eax, r13d
sub rbx, rax
add rbx, r12
cmp rbx, qword [rbp + 0x47]
ja 0x18002665d
lea eax, [r14 + 0x12]
mov dword [rbp - 0x61], 0x3649257c
mov word [rbp - 0x5d], 0x5834
mov byte [rbp - 0x5b], 0
mov dword [rbp + 0x3f], 0x34364925
mov word [rbp + 0x43], 0x58
cmp eax, 0xf4240
jae 0x18002665d
mov edi, r14d
mov r9, rbx
mov edx, 0x12
add rdi, qword [rbp + 0x6f]
lea r8, [rbp - 0x61]
mov rcx, rdi
test r14d, r14d
jne 0x180026648
lea r8, [rbp + 0x3f]
call fcn.180003964
or rax, 0xffffffffffffffff
inc rax
cmp byte [rdi + rax], 0
jne 0x180026651
add r14d, eax
add esi, dword [rbp + 0x87]
mov eax, dword [rbp + 0x4f]
cmp esi, r15d
jb 0x1800265d0
mov rdi, qword [rbp - 0x51]
mov r15, qword [rbp + 0x47]
lea rsi, [r12 + rdi]
mov rbx, qword [rbp - 0x59]
cmp rsi, r15
jbe 0x180026500
mov rdi, qword [rsp + 0x90]
mov r12, qword [rsp + 0x88]
test r13, r13
je 0x1800266a5
mov rcx, r13
call fcn.1800031d0
mov eax, 1
add rsp, 0x98
pop r15
pop r14
pop r13
pop rsi
pop rbx
pop rbp
ret
Function at 0x180026c50
Capabilities:
Contain obfuscated stackstrings

Disassembly:
cmp rcx, rdx
ja 0x180026cd8
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x20
mov rdi, r9
mov r9, rcx
mov ecx, dword [r8]
lea eax, [rcx + 0x12]
mov rbx, r8
mov dword [rsp + 0x38], 0x3649257c
mov word [rsp + 0x3c], 0x5834
mov byte [rsp + 0x3e], 0
mov dword [rsp + 0x30], 0x34364925
mov word [rsp + 0x34], 0x58
cmp eax, 0xf4240
jae 0x180026cce
mov edx, 0x12
lea r8, [rsp + 0x38]
test ecx, ecx
jne 0x180026caf
lea r8, [rsp + 0x30]
add rcx, rdi
call fcn.180003964
mov edx, dword [rbx]
or rax, 0xffffffffffffffff
lea rcx, [rdi + rdx]
inc rax
cmp byte [rcx + rax], 0
jne 0x180026cc1
add eax, edx
mov dword [rbx], eax
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
repz ret

Function at 0x180027790
Capabilities:
Allocate or change rwx memory

Disassembly:
push r14
sub rsp, 0x30
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x50], rdi
mov r14, rdx
mov rdi, rcx
xor ebx, ebx
movsxd rsi, r8d
lea r9, [rsp + 0x58]
lea r8d, [rbx + 0x40]
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x1800277fc
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1800029a0
lea r9, [rsp + 0x58]
mov r8d, dword [rsp + 0x58]
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
mov ebx, 1
mov dword [rsp + 0x20], ebx
mov eax, ebx
jmp 0x180027804
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
add rsp, 0x30
pop r14
ret
Function at 0x180035150
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r14
sub rsp, 0xa0
xor edi, edi
cmp dword [0x18007c0a0], 0x40
mov rbp, r8
mov rsi, rdx
mov r14, rcx
mov ebx, edi
jae 0x180035310
mov rax, qword [0x18007c0a8]
test rax, rax
je 0x180035199
call rax
mov rbx, rax
test rax, rax
jne 0x18003527f
add rsi, r14
mov eax, 0x80000000
cmp rsi, rax
jae 0x1800351ad
mov esi, 1
jmp 0x1800351b4
sub rsi, 0x7fff0000
add rbp, r14
cmp rbp, 0xffffffff80000000
jae 0x1800351c9
add rbp, 0x7ff80000
jmp 0x1800351d0
mov rbp, 0xfffffffffff80000
xor edx, edx
lea rcx, [rsp + 0x6c]
mov dword [rsp + 0x68], edi
lea r8d, [rdx + 0x2c]
call fcn.180008040
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp rsi, rbp
jae 0x180035310
nop dword [rax + rax]
lea rdx, [rsp + 0x38]
mov r8d, 0x30
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x180035276
cmp dword [rsp + 0x58], 0x10000
jne 0x180035267
mov rax, qword [rsp + 0x50]
cmp rax, 0xa8
jb 0x180035267
mov edx, dword [rsp + 0x90]
mov ecx, edx
cmp rax, rdx
jb 0x180035267
lea eax, [rdx - 1]
xor edx, edx
add rax, rsi
div rcx
imul rax, rcx
test rax, rax
je 0x1800352a3
cmp eax, 0x10000
jae 0x1800352a3
mov ecx, 0x57
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
mov rsi, qword [rsp + 0x38]
add rsi, qword [rsp + 0x50]
cmp rsi, rbp
jb 0x180035200
test rbx, rbx
je 0x180035310
lea rcx, [0x18007c180]
mov rax, rcx
nop dword [rax]
cmp qword [rax], 0
je 0x1800352f0
inc edi
add rax, 8
cmp edi, 0x40
jb 0x180035290
jmp 0x180035310
lea r9, [rsp + 0x30]
lea rdx, [rsp + 0xd8]
or rcx, 0xffffffffffffffff
mov dword [rsp + 0x28], 0x20
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x30], 0xa8
mov dword [rsp + 0x20], 0x3000
call fcn.180012250
test eax, eax
js 0x180035264
mov rbx, qword [rsp + 0xd8]
test rbx, rbx
jne 0x18003527f
jmp 0x180035267
inc dword [0x18007c0a0]
mov eax, edi
mov qword [rcx + rax*8], rbx
mov rax, qword [0x18007bf98]
test rax, rax
je 0x180035310
mov rdx, rbx
mov rcx, r14
call rax
lea r11, [rsp + 0xa0]
mov rax, rbx
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x1800363c0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xf8]
sub rsp, 0x1d0
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov r15d, r8d
mov r13d, edx
movsxd rsi, ecx
mov eax, 1
xchg dword [0x18007c0a4], eax
cmp eax, 1
jne 0x18003642b
nop word [rax + rax]
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, 1
xchg dword [0x18007c0a4], eax
cmp eax, 1
je 0x180036410
mov r14, rsi
lea r12, [0x180000000]
shl r14, 8
test r13d, r13d
je 0x18003646b
lea rax, [r12 + 0x7c380]
add rax, r14
or rdi, 0xffffffffffffffff
mov rcx, rdi
inc rcx
cmp byte [rax + rcx], 0
jne 0x180036450
test rcx, rcx
je 0x18003648b
xor ebx, ebx
xchg dword [0x18007c0a4], ebx
jmp 0x180036606
lea rax, [r12 + 0x7ce80]
add rax, r14
or rdi, 0xffffffffffffffff
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x180036480
jmp 0x180036459
xor edx, edx
mov r8d, 0xff
lea rcx, [rbp - 0x2f]
call fcn.180008040
mov dword [rbp - 0x30], 0x61636f4c
mov word [rbp - 0x2c], 0x5c6c
mov byte [rbp - 0x2a], 0
mov dword [rbp + 0x118], 0x4e565354
mov byte [rbp + 0x11c], 0
lea r8, [rbp + 0x118]
mov edx, 0x100
lea rcx, [rbp - 0x30]
call fcn.180003440
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], rbx
mov byte [rsp + 0x20], bl
cmp byte [rbp - 0x30], bl
jne 0x1800364fb
mov r8d, ebx
jmp 0x18003650b
lea rax, [rbp - 0x30]
mov r8, rdi
inc r8
cmp byte [rax + r8], bl
jne 0x180036502
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x20]
call fcn.180001380
nop
test r15d, r15d
jne 0x18003652f
mov word [rbp - 0x60], 0x6425
mov byte [rbp - 0x5e], r15b
lea rdx, [rbp - 0x60]
jmp 0x18003656b
cmp r15d, 1
jne 0x18003654b
mov dword [rsp + 0x60], 0x25256425
mov word [rsp + 0x64], 0x64
lea rdx, [rsp + 0x60]
jmp 0x18003656b
cmp r15d, 2
jne 0x180036577
mov dword [rsp + 0x40], 0x25256425
mov dword [rsp + 0x44], 0x64252564
mov byte [rsp + 0x48], 0
lea rdx, [rsp + 0x40]
mov r8d, esi
lea rcx, [rbp - 0x80]
call fcn.180002430
cmp byte [rbp - 0x80], 0
jne 0x180036582
mov rdi, rbx
jmp 0x18003658f
lea rax, [rbp - 0x80]
inc rdi
cmp byte [rax + rdi], 0
jne 0x180036586
mov r8, rdi
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x20]
call fcn.180002490
lea r8, [rsp + 0x20]
mov edx, 0x100
test r13d, r13d
lea rdi, [r12 + 0x7c380]
jne 0x1800365bf
lea rdi, [r12 + 0x7ce80]
cmp qword [rsp + 0x38], 0x10
cmovae r8, qword [rsp + 0x20]
add rdi, r14
mov rcx, rdi
call fcn.180003354
mov ecx, ebx
xchg dword [0x18007c0a4], ecx
cmp qword [rsp + 0x38], 0x10
jb 0x1800365f0
mov rcx, qword [rsp + 0x20]
call fcn.180003020
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], rbx
mov byte [rsp + 0x20], 0
mov rax, rdi
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
Function at 0x401010
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
mov rax, qword [0x00406900]
xor edx, edx
mov dword [rax], 1
mov rax, qword [0x00406910]
mov dword [rax], 1
mov rax, qword [0x00406920]
mov dword [rax], 1
mov rax, qword [0x004068f0]
mov dword [rax], 1
mov rax, qword [0x004067e0]
cmp word [rax], 0x5a4d
je 0x4010b0
mov rax, qword [0x004068e0]
mov dword [0x00409008], edx
mov eax, dword [rax]
test eax, eax
je 0x4010a0
mov ecx, 2
call sym.__set_app_type
call sym.__p__fmode
mov rdx, qword [0x004068a0]
mov edx, dword [rdx]
mov dword [rax], edx
call sym._setargv
mov rax, qword [0x00406790]
cmp dword [rax], 1
je 0x4010f0
xor eax, eax
add rsp, 0x28
ret
mov ecx, 1
call sym.__set_app_type
jmp 0x401075
movsxd rcx, dword [rax + 0x3c]
add rax, rcx
cmp dword [rax], 0x4550
jne 0x401058
movzx ecx, word [rax + 0x18]
cmp cx, 0x10b
je 0x401103
cmp cx, 0x20b
jne 0x401058
cmp dword [rax + 0x84], 0xe
jbe 0x401058
mov ecx, dword [rax + 0xf8]
xor edx, edx
test ecx, ecx
setne dl
jmp 0x401058
lea rcx, [sym._matherr]
call sym.__mingw_setusermatherr
xor eax, eax
add rsp, 0x28
ret
cmp dword [rax + 0x74], 0xe
jbe 0x401058
mov r8d, dword [rax + 0xe8]
xor edx, edx
test r8d, r8d
setne dl
jmp 0x401058
Function at 0x401e3c
Capabilities:
Enumerate process modules

Disassembly:
push rbp
mov eax, 0x50170
call fcn.00403df0
sub rsp, rax
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x50100], rcx
mov qword [rbp + 0x50108], rdx
cmp qword [rbp + 0x50100], 0
jne 0x401e74
mov eax, 0
jmp 0x402012
mov rax, qword [rbp + 0x50100]
mov qword [rbp + 0x500e0], rax
lea rdx, [rbp + 0x100bc]
lea rax, [rbp + 0x100c0]
mov r8, rdx
mov edx, 0x40000
mov rcx, rax
call sym.EnumProcesses
test eax, eax
jne 0x401eae
mov eax, 0
jmp 0x402012
mov eax, dword [rbp + 0x100bc]
shr eax, 2
mov dword [rbp + 0x500dc], eax
mov dword [rbp + 0x500ec], 0
jmp 0x401ffb
mov eax, dword [rbp + 0x500ec]
mov eax, dword [rbp + rax*4 + 0x100c0]
mov dword [rbp + 0x500d8], eax
mov eax, dword [rbp + 0x500d8]
mov r8d, eax
mov edx, 0
mov ecx, 0x438
mov rax, qword [sym.imp.KERNEL32.dll_OpenProcess]
call rax
mov qword [rbp + 0x500d0], rax
cmp qword [rbp + 0x500d0], 0
je 0x401ff4
lea rdx, [rbp + 0x100b8]
lea rax, [rbp + 0xb0]
mov rcx, qword [rbp + 0x500d0]
mov r9, rdx
mov r8d, 0x10000
mov rdx, rax
call sym.EnumProcessModules
test eax, eax
je 0x401fe1
mov eax, dword [rbp + 0x100b8]
shr eax, 3
mov dword [rbp + 0x500cc], eax
mov dword [rbp + 0x500e8], 0
jmp 0x401fcf
mov eax, dword [rbp + 0x500e8]
mov rdx, qword [rbp + rax*8 + 0xb0]
lea rcx, [rbp - 0x60]
mov rax, qword [rbp + 0x500d0]
mov r9d, 0x104
mov r8, rcx
mov rcx, rax
call sym.GetModuleBaseNameA
lea rax, [rbp - 0x60]
mov rcx, qword [rbp + 0x500e0]
mov rdx, rax
call sym.CompareNoCase
test eax, eax
je 0x401fc8
cmp qword [rbp + 0x50108], 0
je 0x401fbf
mov eax, dword [rbp + 0x500e8]
mov rax, qword [rbp + rax*8 + 0xb0]
mov rdx, rax
mov rax, qword [rbp + 0x50108]
mov qword [rax], rdx
mov rax, qword [rbp + 0x500d0]
jmp 0x402012
add dword [rbp + 0x500e8], 1
mov eax, dword [rbp + 0x500e8]
cmp eax, dword [rbp + 0x500cc]
jb 0x401f59
mov rax, qword [rbp + 0x500d0]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
add dword [rbp + 0x500ec], 1
mov eax, dword [rbp + 0x500ec]
cmp eax, dword [rbp + 0x500dc]
jb 0x401ecc
mov eax, 0
add rsp, 0x50170
pop rbp
ret

Function at 0x4027f3
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x30
mov rax, qword [0x00409038]
test rax, rax
jne 0x40283c
mov rax, qword [0x00409030]
mov dword [rsp + 0x20], 0x40
mov r9d, 0x3000
mov r8d, pe_nt_image_headers64
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
call rax
mov qword [0x00409038], rax
jmp 0x40283d
nop
add rsp, 0x30
pop rbp
ret
Function at 0x402843
Capabilities:
Get system information on windows

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
call sym.__main
lea rcx, str.Loading...
call sym.printf
lea rax, [rbp - 0x40]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_GetSystemInfo]
call rax
mov qword [rbp - 8], 0
lea rcx, str._0_2
call sym.printf
lea rax, [0x00409998]
mov rdx, rax
lea rcx, str.Exanima.exe
call sym.GetProcessByName
mov qword [0x00409030], rax
lea rcx, str._b_b_b_b_1_2
call sym.printf
mov rax, qword [0x00409030]
test rax, rax
jne 0x4028c3
lea rcx, str.Process_not_found
call sym.puts
jmp 0x4028e7
lea rcx, str._b_b_b_b_2_2
call sym.printf
lea rcx, str._nMod_loaded._Join_our_discord:_discord.gg_CqkMnYC
call sym.puts
call sym.settings
call sym.mod
jmp 0x4028e0
add rsp, 0x60
pop rbp
ret
Function at 0x402e90
Capabilities:
Allocate or change rwx memory

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
movsxd rsi, dword [0x00409644]
test esi, esi
mov rbx, rcx
mov rbp, rdx
mov rdi, r8
jle 0x403018
mov rax, qword [0x00409648]
xor ecx, ecx
add rax, 0x18
nop
mov rdx, qword [rax]
cmp rbx, rdx
jb 0x402edc
mov r8, qword [rax + 8]
mov r8d, dword [r8 + 8]
add rdx, r8
cmp rbx, rdx
jb 0x402f65
add ecx, 1
add rax, 0x28
cmp ecx, esi
jne 0x402ec0
mov rcx, rbx
call sym.__mingw_GetSectionForAddress
test rax, rax
mov r12, rax
je 0x40304d
mov rax, qword [0x00409648]
lea rsi, [rsi + rsi*4]
shl rsi, 3
add rax, rsi
mov qword [rax + 0x20], r12
mov dword [rax], 0
call sym._GetPEImageBase
mov ecx, dword [r12 + 0xc]
lea rdx, [rsp + 0x20]
mov r8d, 0x30
add rcx, rax
mov rax, qword [0x00409648]
mov qword [rax + rsi + 0x18], rcx
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
je 0x403030
mov eax, dword [rsp + 0x44]
lea edx, [rax - 4]
and edx, 0xfffffffb
je 0x402f5e
sub eax, 0x40
and eax, 0xffffffbf
jne 0x402fc0
add dword [0x00409644], 1
cmp edi, 8
jae 0x402f93
test dil, 4
jne 0x403004
test edi, edi
je 0x402f88
movzx eax, byte [rbp]
test dil, 2
mov byte [rbx], al
jne 0x40301f
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
ret
mov eax, edi
sub edi, 1
mov rdx, qword [rbp + rax - 8]
cmp edi, 8
mov qword [rbx + rax - 8], rdx
jb 0x402f88
and edi, 0xfffffff8
xor eax, eax
mov edx, eax
add eax, 8
mov rcx, qword [rbp + rdx]
cmp eax, edi
mov qword [rbx + rdx], rcx
jb 0x402fac
jmp 0x402f88
add rsi, qword [0x00409648]
mov r8d, 0x40
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x38]
mov r9, rsi
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rdx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x402f5e
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.__VirtualProtect_failed_with_code_0x_x
mov edx, eax
call sym.__report_error
mov eax, dword [rbp]
mov edi, edi
mov dword [rbx], eax
mov eax, dword [rbp + rdi - 4]
mov dword [rbx + rdi - 4], eax
jmp 0x402f88
xor esi, esi
jmp 0x402ee7
mov edi, edi
movzx eax, word [rbp + rdi - 2]
mov word [rbx + rdi - 2], ax
jmp 0x402f88
mov rax, qword [0x00409648]
lea rcx, str.__VirtualQuery_failed_for__d_bytes_at_address__p
mov edx, dword [r12 + 8]
mov r8, qword [rax + rsi + 0x18]
call sym.__report_error
lea rcx, str.Address__p_has_no_image_section
mov rdx, rbx
call sym.__report_error
nop
nop dword [rax]

Function at 0x4037a0
Capabilities:
Get thread local storage value

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
lea rcx, [0x00409920]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rbx, qword [0x00409900]
test rbx, rbx
je 0x4037f4
mov rbp, qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov ecx, dword [rbx]
call rbp
mov rsi, rax
call rdi
test eax, eax
jne 0x4037eb
test rsi, rsi
je 0x4037eb
mov rax, qword [rbx + 8]
mov rcx, rsi
call rax
mov rbx, qword [rbx + 0x10]
test rbx, rbx
jne 0x4037d0
lea rcx, [0x00409920]
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
jmp qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]