joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140046e88
Capabilities:
Load windows common language runtime

Disassembly:
push rbx
sub rsp, 0x20
xor ebx, ebx
cmp qword [0x140126c78], rbx
jne 0x140046f33
and qword [rsp + 0x38], rbx
lea r8, [rsp + 0x38]
lea rdx, [0x1400c3538]
lea rcx, [0x1400c3548]
call sub.mscoree.dll_CLRCreateInstance
mov ebx, eax
test eax, eax
js 0x140046f33
mov rcx, qword [rsp + 0x38]
lea r9, [rsp + 0x30]
and qword [rsp + 0x30], 0
lea r8, [0x1400c3558]
lea rdx, str.v4.0.30319
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetElement]
mov ebx, eax
test eax, eax
js 0x140046f28
mov rcx, qword [rsp + 0x30]
lea r9, [0x140126c78]
lea r8, [0x1400c3528]
lea rdx, [0x1400c3518]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov ebx, eax
test eax, eax
js 0x140046f1d
mov rcx, qword [0x140126c78]
mov rax, qword [rcx]
call qword [rax + 0x50]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov eax, ebx
add rsp, 0x20
pop rbx
ret

Function at 0x140046f3c
Capabilities:
Load windows common language runtime

Disassembly:
push rbx
sub rsp, 0x30
xor ebx, ebx
cmp qword [0x140126c78], rbx
jne 0x140046f88
lea rax, [0x140126c78]
xor edx, edx
lea r9, [0x1400c3528]
mov qword [rsp + 0x20], rax
lea r8, [0x1400c3518]
lea rcx, str.v2.0.50727
call sub.mscoree.dll_CorBindToRuntime
mov ebx, eax
test eax, eax
js 0x140046f88
mov rcx, qword [0x140126c78]
mov rdx, qword [rcx]
call qword [rdx + 0x50]
mov eax, ebx
add rsp, 0x30
pop rbx
ret
Function at 0x140048968
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x30
mov rbx, rdx
mov rdi, rcx
mov ecx, 8
call fcn.14008ba4c
mov r9, rax
test rax, rax
je 0x140048992
mov rax, qword [rbx]
mov qword [r9], rax
jmp 0x140048995
xor r9d, r9d
mov qword [rsp + 0x40], r9
lea rbx, [rdi + 8]
mov qword [rsp + 0x28], rbx
and dword [rsp + 0x20], 0
lea r8, [0x140047f70]
xor edx, edx
xor ecx, ecx
call fcn.14009fa78
mov qword [rdi], rax
test rax, rax
je 0x1400489cb
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
and dword [rbx], 0
mov ecx, 6
call fcn.140089b68
int3
Function at 0x14004b6b0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x20]
sub rsp, 0x120
mov rax, qword [0x140113440]
xor rax, rsp
mov qword [rbp + 0x10], rax
mov edi, r9d
mov r14d, r8d
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x48], rdx
xor r15d, r15d
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x14004b6f9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
mov r8d, 0x80
lea rcx, [rbp - 0x70]
call fcn.1400b4eb0
mov r8d, r14d
lea rdx, [0x1400c0198]
lea rcx, [rbp - 0x70]
call fcn.1400433dc
mov r8, rbx
lea rdx, str..pipe_
lea rcx, [rsp + 0x70]
call fcn.140002c20
nop
lea rcx, [rbp - 0x70]
or r8, 0xffffffffffffffff
inc r8
cmp word [rcx + r8*2], r15w
jne 0x14004b73a
lea rdx, [rbp - 0x70]
mov rcx, rax
call fcn.14002549c
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x60], xmm1
mov qword [rax + 0x10], r15
mov r14d, 7
mov qword [rax + 0x18], r14
mov word [rax], r15w
lea rcx, [rsp + 0x70]
call fcn.140025108
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
sub edi, 0xa
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], r14
cmova rcx, qword [rsp + 0x50]
mov edx, 0xa
call qword [sym.imp.KERNEL32.dll_WaitNamedPipeW]
test eax, eax
jne 0x14004b7cb
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x14004b7cb
test edi, edi
jg 0x14004b78f
lea rcx, [rsp + 0x50]
cmp qword [rsp + 0x68], r14
cmova rcx, qword [rsp + 0x50]
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsi + 8], rax
cmp rax, 0xffffffffffffffff
setne dil
mov rdx, qword [rsp + 0x68]
cmp rdx, r14
jbe 0x14004b84a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004b845
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004b888
call fcn.14008ba88
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x68], r14
mov word [rsp + 0x50], r15w
mov rcx, rbx
call fcn.140025108
mov al, dil
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.14008bf00
mov rbx, qword [rsp + 0x168]
add rsp, 0x120
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.140092a80
nop
int3
Function at 0x14004b890
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ebx, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
and qword [rbp - 0x10], 0
and qword [rbp - 8], 0
mov r8d, SafeArrayUnaccessData
lea rdx, str.FLiNGTrainerNamedPipe_
lea rcx, [rbp - 0x20]
call fcn.1400034c8
mov r9d, 0x2710
mov r8d, ebx
lea rdx, [rbp - 0x20]
mov rcx, rdi
call fcn.14004b6b0
test al, al
je 0x14004b9e5
mov rcx, rdi
call fcn.1400694b8
mov rcx, rdi
call fcn.140051ac0
mov rcx, rdi
call fcn.1400514ac
mov edx, dword [0x140126c8c]
test edx, edx
je 0x14004b927
mov r8d, dword [0x140126c90]
test r8d, r8d
je 0x14004b927
mov rcx, rdi
call fcn.14004e734
mov rcx, rdi
call fcn.14004e0dc
mov rcx, rdi
call fcn.14004de18
mov rcx, rdi
call fcn.14004dd78
mov rcx, rdi
call fcn.14004e4e8
mov rcx, rdi
call fcn.14004e6a4
mov rcx, rdi
call fcn.14004db28
call fcn.14004e880
mov ecx, 8
call fcn.14008ba4c
test rax, rax
je 0x14004b96e
mov qword [rax], rdi
mov qword [rbp + 0x18], rax
lea rcx, [rbp - 0x28]
mov qword [rsp + 0x28], rcx
and dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140047f40]
xor edx, edx
xor ecx, ecx
call fcn.14009fa78
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14004b9f7
cmp dword [rbp - 0x28], 0
je 0x14004ba0c
movaps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x20], xmm0
lea rcx, [rbp - 0x20]
call fcn.14008acf8
test eax, eax
jne 0x14004ba0c
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x30], xmm0
jmp 0x14004b9d6
mov ecx, dword [0x140113388]
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, rdi
call fcn.14004b56c
cmp byte [0x140126c89], 0
je 0x14004b9c2
cmp dword [rbp - 0x28], 0
jne 0x14004ba06
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
and dword [rbp - 0x28], 0
mov ecx, 6
call fcn.140089b68
nop
call fcn.14009f914
nop
mov ecx, 1
call fcn.140089b68
int3

Function at 0x14004db28
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x50
mov rbx, rcx
mov ecx, 8
call fcn.14008ba4c
test rax, rax
je 0x14004db43
mov qword [rax], rbx
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
and dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140047de4]
xor edx, edx
xor ecx, ecx
call fcn.14009fa78
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14004dba5
cmp dword [rsp + 0x38], 0
je 0x14004db9a
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.14008acf8
test eax, eax
jne 0x14004db9a
add rsp, 0x50
pop rbx
ret
mov ecx, 1
call fcn.140089b68
nop
and dword [rsp + 0x38], 0
mov ecx, 6
call fcn.140089b68
int3
Function at 0x14004dbb8
Capabilities:
Create thread

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov rax, qword [0x140113440]
xor rax, rsp
mov qword [rbp + 0x4f], rax
mov dil, r8b
mov rbx, rdx
mov rsi, rcx
mov qword [rbp + 0x17], rdx
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2f], xmm1
cmp qword [rdx + 0x18], 0xf
jbe 0x14004dc07
mov rdx, qword [rdx]
mov r8, qword [rbx + 0x10]
lea rcx, [rbp + 0x1f]
call fcn.1400035d0
mov byte [rbp + 0x3f], dil
mov qword [rbp + 0x47], rsi
mov ecx, 0x30
call fcn.14008ba4c
test rax, rax
je 0x14004dc53
movups xmm0, xmmword [rbp + 0x1f]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbp + 0x2f]
movups xmmword [rax + 0x10], xmm1
movdqa xmm0, xmmword [0x1400bbeb0]
movdqu xmmword [rbp + 0x2f], xmm0
mov byte [rbp + 0x1f], 0
mov byte [rax + 0x20], dil
mov qword [rax + 0x28], rsi
mov qword [rbp + 7], rax
lea rcx, [rbp - 1]
mov qword [rsp + 0x28], rcx
and dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140047e14]
xor edx, edx
xor ecx, ecx
call fcn.14009fa78
mov qword [rbp - 9], rax
test rax, rax
je 0x14004dd5b
mov edi, 0x1000
mov rdx, qword [rbp + 0x37]
cmp rdx, 0xf
jbe 0x14004dcc1
inc rdx
mov rcx, qword [rbp + 0x1f]
mov rax, rcx
cmp rdx, rdi
jb 0x14004dcbc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14004dd6a
call fcn.14008ba88
cmp dword [rbp - 1], 0
je 0x14004dd50
movaps xmm0, xmmword [rbp - 9]
movdqa xmmword [rbp + 7], xmm0
lea rcx, [rbp + 7]
call fcn.14008acf8
test eax, eax
jne 0x14004dd50
xorps xmm0, xmm0
movdqa xmmword [rbp - 9], xmm0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x14004dd1b
inc rdx
mov rcx, qword [rbx]
cmp rdx, rdi
jb 0x14004dd16
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14004dd70
mov rcx, r8
call fcn.14008ba88
and qword [rbx + 0x10], 0
mov qword [rbx + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbx], 0
mov rcx, qword [rbp + 0x4f]
xor rcx, rsp
call fcn.14008bf00
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov ecx, 1
call fcn.140089b68
nop
and dword [rbp - 1], 0
mov ecx, 6
call fcn.140089b68
nop
call fcn.140092a80
nop
call fcn.140092a80
int3

Function at 0x14004dd78
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rbx, rcx
lea rdi, [0x140126d10]
mov qword [rsp + 0x48], rdi
mov rcx, rdi
call fcn.1400898ec
test eax, eax
jne 0x14004de0d
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004ddf8
lea edx, [rax + 5]
mov rcx, rbx
call fcn.140056608
lea rax, [0x14004d788]
mov qword [rsp + 0x50], rax
and dword [rsp + 0x48], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x48]
mov r8d, 8
lea rdx, [rsp + 0x50]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, rdi
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3
Function at 0x14004de18
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x30
mov rdi, rcx
lea rbx, [rcx + 0x578]
mov r8, rbx
lea rdx, str.Cover
mov ecx, 0x75
call fcn.1400565c8
mov rax, qword [rbx + 8]
cmp rax, qword [rbx]
je 0x14004deef
lea rsi, [0x140126d10]
mov qword [rsp + 0x40], rsi
mov rcx, rsi
call fcn.1400898ec
test eax, eax
jne 0x14004df14
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004deff
lea edx, [rax + 3]
mov rcx, rdi
call fcn.140056608
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rsp + 0x48], eax
and dword [rsp + 0x40], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, 4
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rax, qword [rbx]
mov qword [rsp + 0x48], rax
and dword [rsp + 0x40], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x40]
mov r8d, 8
lea rdx, [rsp + 0x48]
mov rcx, qword [rdi + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, rsi
call fcn.1400898f4
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3

Function at 0x14004df20
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x60
mov rbx, rdx
mov rdi, rcx
lea r14, [0x140126d10]
mov qword [rbp - 0x30], r14
mov rcx, r14
call fcn.1400898ec
test eax, eax
jne 0x14004e030
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004e01b
lea edx, [rax + 0xa]
mov rcx, rdi
call fcn.140056608
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
and qword [rbp - 0x18], 0
and qword [rbp - 0x10], 0
mov r8d, SafeArrayUnaccessData
lea rdx, str.SET_GAMEPASS_EXE_PATH
lea rcx, [rbp - 0x28]
call fcn.1400033e8
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.14005289c
and dword [rbp + 0x30], 0
and dword [rbp + 0x38], 0
and qword [rsp + 0x20], 0
lea r9, [rbp + 0x38]
mov r8d, 4
lea rdx, [rbp + 0x30]
mov rcx, qword [rdi + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [rbp + 0x30], 1
jne 0x14004e003
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
and qword [rbp - 0x18], 0
and qword [rbp - 0x10], 0
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 7
jbe 0x14004dfea
mov rbx, qword [rbx]
mov rdx, rbx
lea rcx, [rbp - 0x28]
call fcn.140003698
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.1400529b8
nop
mov rcx, r14
mov rbx, qword [rsp + 0x80]
add rsp, 0x60
pop r14
pop rdi
pop rbp
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3
Function at 0x14004e03c
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rbx, rcx
lea rdi, [0x140126d10]
mov qword [rsp + 0x48], rdi
mov rcx, rdi
call fcn.1400898ec
test eax, eax
jne 0x14004e0cf
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004e0ba
lea edx, [rax + 2]
mov rcx, rbx
call fcn.140056608
mov eax, dword [rbx + 0xe0]
mov dword [rsp + 0x50], eax
and dword [rsp + 0x48], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x48]
mov r8d, 4
lea rdx, [rsp + 0x50]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, rdi
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3

Function at 0x14004e3e8
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r14
sub rsp, 0x60
mov rbx, r8
mov esi, edx
mov rdi, rcx
lea r14, [0x140126d10]
mov qword [rsp + 0x38], r14
mov rcx, r14
call fcn.1400898ec
xor ebp, ebp
test eax, eax
jne 0x14004e4db
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004e4c6
xor edx, edx
mov rcx, rdi
call fcn.140056608
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x98], ebp
mov qword [rsp + 0x20], rbp
lea r9, [rsp + 0x98]
lea r8d, [rbp + 4]
lea rdx, [rsp + 0x30]
mov rcx, qword [rdi + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp qword [rbx + 0x18], 7
jbe 0x14004e46f
mov rbx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rbp
or r8, 0xffffffffffffffff
inc r8
cmp word [rbx + r8*2], bp
jne 0x14004e485
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1400034c8
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.1400529b8
nop
mov rcx, r14
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r14
pop rdi
pop rsi
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3

Function at 0x14004e5fc
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
movzx edi, dl
mov rbx, rcx
lea rsi, [0x140126d10]
mov qword [rsp + 0x50], rsi
mov rcx, rsi
call fcn.1400898ec
test eax, eax
jne 0x14004e696
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004e681
lea edx, [rax + 7]
mov rcx, rbx
call fcn.140056608
mov dword [rsp + 0x58], edi
and dword [rsp + 0x50], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x50]
mov r8d, 4
lea rdx, [rsp + 0x58]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, rsi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3
Function at 0x14004e6a4
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x50
mov rbx, rcx
mov ecx, 8
call fcn.14008ba4c
test rax, rax
je 0x14004e6bf
mov qword [rax], rbx
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
and dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140047f10]
xor edx, edx
xor ecx, ecx
call fcn.14009fa78
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14004e721
cmp dword [rsp + 0x38], 0
je 0x14004e716
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.14008acf8
test eax, eax
jne 0x14004e716
add rsp, 0x50
pop rbx
ret
mov ecx, 1
call fcn.140089b68
nop
and dword [rsp + 0x38], 0
mov ecx, 6
call fcn.140089b68
int3

Function at 0x14004e734
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push r14
sub rsp, 0x40
mov edi, r8d
mov esi, edx
mov rbx, rcx
lea r14, [0x140126d10]
mov qword [rax + 0x20], r14
mov rcx, r14
call fcn.1400898ec
test eax, eax
jne 0x14004e807
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004e7f2
lea edx, [rax + 9]
mov rcx, rbx
call fcn.140056608
mov dword [rsp + 0x30], esi
and dword [rsp + 0x68], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x68]
mov esi, 4
mov r8d, esi
lea rdx, [rsp + 0x30]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [rsp + 0x30], edi
and dword [rsp + 0x68], 0
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x68]
mov r8d, esi
lea rdx, [rsp + 0x30]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, r14
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
add rsp, 0x40
pop r14
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3
Function at 0x14004f10c
Capabilities:
Read .ini file

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r13, r9
mov r14, r8
mov rbp, rdx
mov rdi, rcx
mov dword [rax - 0x48], 1
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
and qword [rcx + 0x10], 0
and qword [rcx + 0x18], 0
mov rsi, qword [rsp + 0xa0]
mov rdx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14004f166
mov rdx, qword [rsi]
mov r8, qword [rsi + 0x10]
call fcn.140003698
nop
mov dword [rsp + 0x30], 1
mov rcx, r13
call fcn.14005a174
test al, al
je 0x14004f27e
mov r15d, 0x200
mov r12d, 0x400
mov ecx, r12d
call fcn.14008c12c
mov rbx, rax
test rax, rax
je 0x14004f1b3
mov r8d, r12d
xor edx, edx
mov rcx, rax
call fcn.1400b4eb0
jmp 0x14004f1b5
xor ebx, ebx
mov qword [rsp + 0xa0], rbx
mov r12d, 5
mov dword [rsp + 0x30], r12d
mov rax, r13
cmp qword [r13 + 0x18], 7
jbe 0x14004f1d6
mov rax, qword [r13]
mov r8, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14004f1e3
mov r8, qword [rsi]
mov rdx, r14
cmp qword [r14 + 0x18], 7
jbe 0x14004f1f0
mov rdx, qword [r14]
mov rcx, rbp
cmp qword [rbp + 0x18], 7
jbe 0x14004f1fe
mov rcx, qword [rbp]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
mov r9, rbx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea ecx, [r15 - 1]
cmp eax, ecx
jb 0x14004f264
mov rdx, rbx
mov rcx, rdi
call fcn.140025588
mov rcx, rsi
cmp qword [rsi + 0x18], 7
jbe 0x14004f231
mov rcx, qword [rsi]
mov rdx, qword [rdi + 0x10]
mov r8, rdi
cmp qword [rdi + 0x18], 7
jbe 0x14004f242
mov r8, qword [rdi]
cmp rdx, qword [rsi + 0x10]
jne 0x14004f299
test rdx, rdx
je 0x14004f264
sub r8, rcx
movzx eax, word [rcx + r8]
cmp ax, word [rcx]
jne 0x14004f299
add rcx, 2
sub rdx, 1
jne 0x14004f250
mov rdx, rbx
mov rcx, rdi
call fcn.140025588
nop
test rbx, rbx
je 0x14004f27e
mov rcx, rbx
call fcn.14008ba88
nop
mov rax, rdi
mov rbx, qword [rsp + 0x98]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
add r15d, r15d
cmp r15d, 0x6400000
ja 0x14004f264
mov ecx, r15d
mov eax, 2
mul rcx
mov r14, rax
mov rax, 0xffffffffffffffff
cmovo r14, rax
mov rcx, r14
call fcn.14008c12c
mov rbp, rax
test rax, rax
je 0x14004f2dd
mov r8, r14
xor edx, edx
mov rcx, rax
call fcn.1400b4eb0
jmp 0x14004f2df
xor ebp, ebp
or r12d, 2
mov dword [rsp + 0x30], r12d
mov rcx, rbx
mov rbx, rbp
mov qword [rsp + 0xa0], rbx
test rcx, rcx
mov r14, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
je 0x14004f1c8
call fcn.14008ba88
jmp 0x14004f1c8
Function at 0x14004f7b4
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
push rbx
push rdi
sub rsp, 0x48
mov rbx, rdx
mov rdi, rcx
and dword [rax - 0x28], 0
and dword [rax + 0x20], 0
and dword [rax + 8], 0
and dword [rax + 0x18], 0
and qword [rax - 0x38], 0
lea r9, [rax + 0x18]
mov r8d, 4
lea rdx, [rax + 8]
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
and qword [rbx + 0x10], 0
and qword [rbx + 0x10], 0
mov qword [rbx + 0x18], reloc.OLEAUT32.dll_SafeArrayDestroy
mov byte [rbx], 0
mov dword [rsp + 0x30], 1
movsxd rdx, dword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x14004f834
mov r8b, byte [rsp + 0x68]
mov rcx, rbx
call fcn.140006654
and qword [rbx + 0x10], 0
mov rdx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14004f841
mov rdx, qword [rbx]
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x78]
mov r8d, dword [rsp + 0x60]
mov rcx, qword [rdi + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov rax, rbx
add rsp, 0x48
pop rdi
pop rbx
ret

Function at 0x14004f944
Capabilities:
Create process on windows

Disassembly:
sub rsp, 0x8f8
mov rax, qword [0x140113440]
xor rax, rsp
mov qword [rsp + 0x8e0], rax
call fcn.14004d57c
mov rcx, rax
call fcn.1400619f0
xor edx, edx
lea rcx, [rsp + 0xe0]
mov r8d, 0x800
call fcn.1400b4eb0
mov r8d, 0x400
lea rdx, [rsp + 0xe0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
lea rcx, [rsp + 0x74]
xorps xmm0, xmm0
mov qword [rsp + 0x60], rax
xor edx, edx
movups xmmword [rsp + 0x50], xmm0
lea r8d, [rax + 0x64]
call fcn.1400b4eb0
lea rax, [rsp + 0x50]
mov dword [rsp + 0x70], 0x68
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0xe0]
lea rax, [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x40], rax
xor r8d, r8d
and qword [rsp + 0x38], 0
xor edx, edx
and qword [rsp + 0x30], 0
and dword [rsp + 0x28], 0
and dword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x14004fa16
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor ecx, ecx
call fcn.1400a007c
int3
Function at 0x14004fab8
Capabilities:
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x50
movzx edi, dl
mov rbx, rcx
lea r14, [0x140126d10]
mov qword [rbp + 0x30], r14
mov rcx, r14
call fcn.1400898ec
test eax, eax
jne 0x14004fbb3
cmp dword [0x140126d5c], 0x7fffffff
je 0x14004fb9e
lea edx, [rax + 0xa]
mov rcx, rbx
call fcn.140056608
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
and qword [rbp - 0x10], 0
and qword [rbp - 8], 0
mov r8d, SafeArrayUnaccessData
lea rdx, str.TRAINER_INITIALIZE
lea rcx, [rbp - 0x20]
call fcn.1400033e8
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.14005289c
and dword [rbp + 0x30], 0
and dword [rbp + 0x38], 0
and qword [rsp + 0x20], 0
lea r9, [rbp + 0x38]
mov r8d, 4
lea rdx, [rbp + 0x30]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_ReadFile]
cmp dword [rbp + 0x30], 1
jne 0x14004fb89
mov dword [rbp + 0x38], edi
and dword [rbp + 0x30], 0
and qword [rsp + 0x20], 0
lea r9, [rbp + 0x30]
mov r8d, 4
lea rdx, [rbp + 0x38]
mov rcx, qword [rbx + 8]
call qword [sym.imp.KERNEL32.dll_WriteFile]
nop
mov rcx, r14
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop r14
pop rdi
pop rbp
jmp fcn.1400898f4
mov dword [0x140126d5c], 0x7ffffffe
mov ecx, 6
call fcn.140089b68
int3
mov ecx, 5
call fcn.140089b68
int3