Function at 0x1400e4300
Capabilities:
Encode data using xor
Parse pe header
Resolve function by parsing pe exports
Resume thread

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0xf0]
xorps xmm4, xmm4
movaps xmmword [rbp - 0x60], xmm4
xor eax, eax
mov qword [rbp - 0x50], rax
mov rbx, rcx
mov rsi, qword [rbx + 0x10]
mov rax, rsi
cmp word [rax], 0x5a4d
je 0x1400e433f
xor ecx, ecx
jmp 0x1400e4350
movsxd rcx, dword [rax + 0x3c]
cmp word [rsi + rcx + 0x18], 0x20b
sete cl
movzx ecx, cl
mov byte [0x1401ca714], cl
xor edi, edi
xor r14d, r14d
movzx ecx, byte [0x1401ca714]
test ecx, ecx
jne 0x1400e4371
movsxd rdi, dword [rax + 0x3c]
add rdi, rsi
mov ecx, dword [rdi]
jmp 0x1400e437b
movsxd r14, dword [rax + 0x3c]
add r14, rsi
mov ecx, dword [r14]
cmp ecx, 0x4550
jne 0x1400e4952
call fcn.1401107f0
mov ecx, 0x60
mov edx, 0x40
cmp eax, 8
cmovne ecx, edx
call fcn.1400e4a70
mov rsi, rax
call fcn.1401107f0
mov ecx, 0x18
mov edx, 0x10
cmp eax, 8
cmovne ecx, edx
movsxd rcx, ecx
call fcn.1400aa370
mov qword [rbp - 0x40], rax
mov qword [rbp + 0x10], rbx
mov r15, qword [rbx + 8]
lea rcx, [0x140152f08]
mov edx, 0xc
call fcn.140004390
xor ecx, ecx
mov edx, ecx
lea r8, [0x14011c5a0]
movzx r8d, word [r8 + rdx*2 + 0xc]
mov r10d, ecx
and r10d, 0xf
lea r9, [0x140128098]
movzx r10d, word [r9 + r10*2 + 0xc]
xor r8d, r10d
mov word [rax + rdx*2 + 0x10], r8w
inc ecx
cmp ecx, 0xc
jl 0x1400e43e0
mov rcx, rax
call fcn.140072bf0
mov r13, rax
lea rcx, [0x140152f08]
mov edx, 0xe
call fcn.140004390
xor ecx, ecx
mov edx, ecx
lea r8, [0x140124ec8]
movzx r8d, word [r8 + rdx*2 + 0xc]
mov r10d, ecx
and r10d, 0xf
lea r9, [0x14011a108]
movzx r10d, word [r9 + r10*2 + 0xc]
xor r8d, r10d
mov word [rax + rdx*2 + 0x10], r8w
inc ecx
cmp ecx, 0xe
jl 0x1400e4431
mov rcx, rax
call fcn.140072bf0
mov r12, rax
mov rcx, r13
call fcn.1400e1f90
test rax, rax
je 0x1400e4489
mov rcx, rax
mov rdx, r12
call fcn.1400e20c0
jmp 0x1400e448b
xor eax, eax
test rax, rax
je 0x1400e48f0
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rsi
mov r10, qword [rbp - 0x40]
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x50], rax
mov rcx, r15
lea rdx, [0x140119c30]
xor r8d, r8d
xor r9d, r9d
call fcn.1400680b0
test eax, eax
je 0x1400e48f0
test rsi, 0xffffffffffff0000
je 0x1400e4513
mov rcx, rsi
mov qword [rbp - 0x90], rcx
lea rcx, [rbp - 0x88]
call fcn.140005f30
mov rcx, qword [rbp - 0x90]
call sub.KERNEL32.dll_LocalFree
lea rcx, [rbp - 0x88]
call fcn.140005f80
cmp byte [0x1401ca714], 0
je 0x1400e4522
mov rsi, qword [r14 + 0x30]
jmp 0x1400e4525
mov esi, dword [rdi + 0x34]
mov r10, qword [rbp - 0x40]
mov r15, qword [r10]
call fcn.1401107f0
mov ecx, 8
mov edx, 4
cmp eax, 8
cmovne ecx, edx
movsxd rcx, ecx
mov r10, qword [rbp - 0x40]
mov r13, qword [r10 + rcx]
mov rcx, r15
mov rdx, rsi
call fcn.1400e4bc0
test r15, r15
je 0x1400e48c9
test r13, r13
je 0x1400e48c9
movzx ecx, byte [0x1401ca714]
test ecx, ecx
je 0x1400e4583
mov r8d, dword [r14 + 0x50]
mov r12d, dword [r14 + 0x54]
movzx eax, word [r14 + 6]
jmp 0x1400e458f
mov r8d, dword [rdi + 0x50]
mov r12d, dword [rdi + 0x54]
movzx eax, word [rdi + 6]
mov dword [rbp - 0x44], eax
test ecx, ecx
je 0x1400e459c
mov r10d, dword [r14 + 0x28]
jmp 0x1400e45a0
mov r10d, dword [rdi + 0x28]
mov dword [rbp - 0x48], r10d
mov dword [rsp + 0x20], 0x40
mov rcx, r15
mov rdx, rsi
mov r9d, 0x3000
call fcn.1400e2680
mov rsi, rax
mov rbx, qword [rbp + 0x10]
mov r8, qword [rbx + 0x10]
xor ecx, ecx
mov dword [rbp - 0x50], ecx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r15
mov rdx, rsi
mov r9d, r12d
call fcn.1400e4c30
test eax, eax
jne 0x1400e48a2
add r14, 0x108
add rdi, 0xf8
cmp byte [0x1401ca714], 0
cmove r14, rdi
xor edi, edi
mov r12d, dword [rbp - 0x44]
test r12d, r12d
jle 0x1400e464f
mov edx, dword [r14 + 0xc]
add rdx, rsi
mov r8, qword [rbx + 0x10]
mov ecx, dword [r14 + 0x14]
add r8, rcx
mov r9d, dword [r14 + 0x10]
xor ecx, ecx
mov dword [rbp - 0x50], ecx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r15
call fcn.1400e4c30
test eax, eax
jne 0x1400e487b
add r14, 0x28
inc edi
cmp edi, r12d
jl 0x1400e4610
mov ecx, 0x4d0
mov eax, 0x2cc
cmp byte [0x1401ca714], 0
cmove ecx, eax
movsxd rcx, ecx
call fcn.1400aa370
mov rbx, rax
cmp byte [0x1401ca714], 0
jne 0x1400e467f
mov dword [rbx], 0x10002
jmp 0x1400e4686
mov dword [rbx + 0x30], 0x10001b
cmp byte [0x1401ca714], 0
je 0x1400e46a3
mov rcx, r13
mov rdx, rbx
call fcn.1400e2320
test eax, eax
jne 0x1400e46b6
jmp 0x1400e47b8
mov rcx, r13
mov rdx, rbx
call fcn.1400e22c0
test eax, eax
je 0x1400e4854
mov edi, dword [rbx + 0xa4]
mov r14, qword [rbx + 0x88]
mov rcx, rsi
call fcn.140078620
add r14, 0x10
add edi, 8
movsxd rcx, edi
cmp byte [0x1401ca714], 0
mov rdx, rcx
cmovne rdx, r14
mov ecx, dword [rax + 8]
mov r9d, ecx
xor r8d, r8d
mov qword [rbp - 0x60], r8
mov dword [rbp - 0x50], r8d
mov qword [rbp - 0x60], rax
test ecx, ecx
je 0x1400e4705
add rax, 0x10
mov r8, rax
jmp 0x1400e4708
xor r8d, r8d
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r15
call fcn.1400e4c30
test eax, eax
sete cl
movzx ecx, cl
xor edx, edx
mov qword [rbp - 0x60], rdx
test ecx, ecx
je 0x1400e482d
cmp byte [0x1401ca714], 0
jne 0x1400e4747
mov ecx, dword [rbp - 0x48]
add rcx, rsi
mov qword [rbx + 0xb0], rcx
jmp 0x1400e4754
mov ecx, dword [rbp - 0x48]
add rcx, rsi
mov qword [rbx + 0x80], rcx
cmp byte [0x1401ca714], 0
je 0x1400e476e
mov rcx, r13
mov rdx, rbx
call fcn.1400e2260
test eax, eax
jne 0x1400e4781
jmp 0x1400e47df
mov rcx, r13
mov rdx, rbx
call fcn.1400e2200
test eax, eax
je 0x1400e4806
mov rcx, r13
mov qword [rbp - 0x90], rcx
lea rcx, [rbp - 0x88]
call fcn.140005f30
mov rcx, qword [rbp - 0x90]
call sub.KERNEL32.dll_ResumeThread
lea rcx, [rbp - 0x88]
call fcn.140005f80
mov qword [rbp - 0x58], r15
jmp 0x1400e491a
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x140121650]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x140121880]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x140121880]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x140121938]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401216c0]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401219c0]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401218d0]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401215e8]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401215a0]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3
mov rcx, rsp
call fcn.1400e49c8
nop
mov rax, qword [rbp - 0x58]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [0x1401365e8]
call fcn.140004270
mov rbx, rax
mov rcx, rbx
lea rdx, [0x1401233c8]
call fcn.1400762f0
mov rcx, rbx
call fcn.1400047e0
int3