Function at 0x1400a8a50
Capabilities:
Copy file
Create thread

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x468
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x450], rax
movzx r13d, byte [rsp + 0x4d0]
mov rdi, r9
mov r15, r8
mov qword [rsp + 0x98], r8
mov rbx, rdx
mov qword [rsp + 0x90], rdx
mov rbp, rcx
call qword [sym.imp.KERNEL32.dll_GetMaximumProcessorGroupCount]
xor ecx, ecx
movzx r14d, ax
lea r8d, [rcx + 0x14]
mov edx, 0x123
mov dword [rsp + 0x70], r14d
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov qword [rsp + 0x80], rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, qword [rbx + 0x10]
or rsi, 0xffffffffffffffff
mov rbx, rsi
inc rbx
cmp byte [rcx + rbx], 0
jne 0x1400a8ad4
imul ebx, edi
mov rax, rsi
inc rax
cmp byte [rax + rbp], 0
jne 0x1400a8ae3
lea rcx, [rsp + 0x340]
mov edx, 0x104
add ebx, eax
call qword [sym.imp.KERNEL32.dll_FindFirstVolumeA]
mov r12, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov qword [rsp + 0xb0], rax
imul r12d, ebx
sub r14d, r12d
sub r14d, dword [rsp + 0x80]
sub r14d, eax
movzx eax, r13b
inc r14d
mov dword [rsp + 0x60], eax
cmp r14d, eax
jae 0x1400a8b3a
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov eax, ebx
mov r9d, r14d
mov r8d, ebx
mov rdx, r15
xor ecx, ecx
mov qword [rsp + 0x88], rax
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
mov r15d, eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessorNumber]
xor ecx, ecx
lea r8d, [rcx + 0x18]
mov edx, 0x271
mov edi, eax
mov dword [rsp + 0x74], eax
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea rcx, [rsp + 0xc0]
xor edx, edx
mov r8d, 0x140
mov qword [rsp + 0xa8], rax
call fcn.1400e27d0
mov rcx, qword [rsp + 0x98]
lea rdx, [rsp + 0xc0]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rcx, rsi
nop dword [rax + rax]
inc rcx
cmp byte [rcx + rbp], 0
jne 0x1400a8bb0
mov rax, qword [rsp + 0x90]
sub r13b, r14b
add cl, r13b
add cl, byte [rax]
mov eax, edi
shl eax, 5
movzx edi, cl
sub r15d, eax
mov dword [rsp + 0x78], eax
sub r15d, edi
sub r15d, dword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
call qword [sym.imp.USER32.dll_GetActiveWindow]
lea rdx, [0x1400ed4fc]
lea rcx, [0x1400ed4d4]
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov ecx, 0xffff
mov edi, eax
mov dword [rsp + 0x64], eax
call qword [sym.imp.KERNEL32.dll_GetActiveProcessorCount]
mov dword [rsp + 0x68], eax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov r13d, eax
mov dword [rsp + 0x6c], eax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x68]
cmp r13d, eax
mov r13, qword [rsp + 0x88]
jne 0x1400a8e3a
lea rdx, [0x1400ed3f4]
mov r9d, eax
mov r8, r13
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
xor ecx, ecx
mov edx, 0x3b0
lea r8d, [rcx + 0xe]
call qword [sym.imp.KERNEL32.dll_FindResourceA]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessorNumber]
movsxd rcx, dword [rsp + 0x74]
mov eax, dword [rsp + 0x6c]
xor edx, edx
lea r8, [0x1400ed4d4]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], r15d
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x60]
lea rdx, [0x1400ed3f4]
mov r9d, edi
mov ecx, 1
mov dword [rsp + 0x20], eax
call qword [sym.imp.USER32.dll_CreateWindowExA]
call qword [sym.imp.USER32.dll_GetActiveWindow]
lea rcx, [rsp + 0x200]
xor edx, edx
mov r8d, 0x140
call fcn.1400e27d0
lea rdx, [rsp + 0x200]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, qword [rsp + 0xa0]
movzx edx, cl
mov dword [rsp + 0x60], edx
nop dword [rax + rax]
inc rsi
cmp byte [rsi + rbp], 0
jne 0x1400a8d10
mov rax, qword [rsp + 0x90]
mov rdi, qword [rsp + 0xb0]
add edi, 0xffffffe2
imul esi, dword [rax + 8]
mov eax, dword [rsp + 0x68]
imul esi, dword [rsp + 0x80]
imul esi, dword [rsp + 0x70]
lea eax, [rax*2 - 1]
imul eax, ecx
xor ecx, ecx
lea r8d, [rcx + 0xb]
add esi, eax
mov rax, qword [rsp + 0xa8]
imul eax, r15d
sub esi, eax
sub esi, dword [rsp + 0x78]
add esi, edx
mov edx, 0x1ba
add esi, r12d
add edi, esi
call qword [sym.imp.KERNEL32.dll_FindResourceA]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov r9d, dword [rsp + 0x60]
xor esi, esi
mov eax, r14d
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0x64]
lea r8, str.tabernacle
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ebx
lea rdx, [0x1400ed4fc]
mov ecx, r14d
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r15d
call qword [sym.imp.USER32.dll_CreateWindowExA]
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
lea r8d, [rsi + 0xa]
mov edx, 0x290
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea r8d, [rsi + 0xf]
mov edx, 0xf6
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
movzx ebx, byte [rsp + 0xa0]
lea rcx, [0x1400ed3f4]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, qword [rsp + 0x98]
mov r9d, ebx
mov rcx, rax
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_EnumResourceNamesA]
lea rcx, [rsp + 0x340]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_FindFirstVolumeA]
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov edi, dword [rsp + 0x64]
jmp 0x1400a8e3c
xor esi, esi
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r8d, r8d
mov edx, 0x39b
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
lea r8, [0x140001b00]
mov r9, r13
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, 0x10
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rcx, qword [rsp + 0x450]
xor rcx, rsp
call fcn.1400dd340
add rsp, 0x468
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret