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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x348
movaps xmmword [rsp + 0x330], xmm6
mov rax, qword [0x140260028]
xor rax, rsp
mov qword [rsp + 0x328], rax
cmp qword [rcx + 0x18], 0
je 0x14004643c
mov r12, rcx
lea r14, [rsp + 0x230]
xorps xmm6, xmm6
movups xmmword [r14], xmm6
mov qword [r14 - 8], r14
lea r15, [rcx + 8]
mov r13, qword [rcx + 0x10]
cmp r13, r15
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], r15
je 0x1400454fa
xor ebp, ebp
lea rsi, [rsp + 0x132]
lea rdx, [0x14024c3b0]
lea rbx, [rsp + 0x120]
movabs r8, 0x9aaaaaa0000aaaa
mov eax, dword [r13 + 0x10]
cmp eax, 2
setb cl
cmp eax, 4
setge al
or al, cl
je 0x140045d33
mov r13, qword [r13 + 8]
cmp r13, r15
jne 0x14004532c
mov rcx, qword [rsp + 0x230]
test rbp, rbp
je 0x1400454fc
mov r14, rbp
add r14, 0x10
call fcn.1400466e0
test r14, r14
je 0x140045501
mov rcx, r14
call fcn.140146738
mov qword [rsp + 0x60], rax
cmp byte [r12 + 0x20], 1
je 0x14004654b
xor eax, eax
lea rdx, [0x14024c3b0]
movabs r8, 0x9aaaaaa0000aaaa
mov rcx, qword [rsp + 0x60]
mov rsi, rcx
add rsi, 0x10
mov qword [rcx + 8], rax
lea rax, [rsp + 0x228]
mov qword [rax], rbp
lea rax, [rsp + 0x90]
mov qword [rax], rsi
mov rdi, qword [r12 + 0x10]
xor r13d, r13d
movabs rbp, 0xaaaaaaaaaaaaaaaa
movaps xmm6, xmmword [0x14022cb50]
jmp 0x1400453fb
mov eax, dword [rdi + 0x10]
cmp eax, 2
setb cl
cmp eax, 4
setge al
or al, cl
je 0x140045fd7
mov rdi, qword [rdi + 8]
cmp rdi, r15
jne 0x1400453e0
mov r15, qword [rsp + 0x60]
mov qword [r15], r13
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x88], rax
mov rax, qword [r12]
test rax, rax
je 0x140046443
mov rsi, qword [rax]
mov dword [rsp + 0x20], 4
mov rcx, rsi
xor edx, edx
mov r8, r14
mov r9d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
test rax, rax
je 0x1400464e1
mov rdi, rax
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x20], rbx
mov rcx, rsi
mov rdx, rdi
mov r8, r15
mov r9, r14
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
test eax, eax
je 0x1400464cc
cmp qword [rsp + 0x120], r14
jne 0x1400464cc
mov qword [rsp + 0x88], rdi
lea rax, [0x1401f43c0]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 0
lea rsi, [0x14024c3b0]
lea r8, str.NtMapViewOfSection
mov rcx, r12
mov rdx, rsi
mov r9d, 1
call fcn.1400431e0
lea rax, [0x1401f4430]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], 1
lea r8, str.NtUnmapViewOfSection
mov rcx, r12
mov rdx, rsi
mov r9d, 1
call fcn.1400431e0
jmp 0x140045527
xor ecx, ecx
call fcn.1400466e0
cmp qword [r12], 0
je 0x140046443
mov qword [rsp + 0x88], 0
xor r15d, r15d
cmp qword [r12 + 0x18], 0
je 0x140045c8f
mov rax, qword [r12]
test rax, rax
je 0x140046446
mov qword [rsp + 0x60], r15
mov rcx, qword [rax]
mov dword [rsp + 0x20], 1
mov r8d, 0x10000
mov qword [rsp + 0x70], rcx
xor edx, edx
mov r9d, 0x2000
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
mov rsi, qword [r12 + 0x18]
shl rsi, 6
lea r13, [rsi + 0x60]
cmp r13, 0x10001
jae 0x140046449
mov rdi, rax
mov r14d, 0xffa0
sub r14d, esi
and r14d, 0xffffffe0
inc r14
mov rax, 0xffffffffffffffff
xor edx, edx
div r14
mov r15, 0xfffffffffffffffe
sub r15, rdx
lea r12, [rsp + 0x228]
lea rbx, [rsp + 0x120]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x120], r12
mov qword [rsp + 0x128], 8
mov rcx, rbx
call fcn.1400f0f30
mov rax, qword [rsp + 0x228]
cmp rax, r15
ja 0x1400455b0
mov edx, 0x800
mov r9d, 0x1000
mov r8d, 0x800
mov rcx, r9
shr r8, 1
mov r9, rdx
cmp rdx, r13
mov rdx, r8
jae 0x1400455fc
xor edx, edx
div r14
mov rbx, rdx
neg ecx
and ebx, ecx
mov eax, ebx
and eax, 0xfffff000
add rdi, rax
add rsi, 0x105f
and rsi, 0xfffffffffffff000
mov dword [rsp + 0x20], 0x40
mov rcx, qword [rsp + 0x70]
mov rdx, rdi
mov r8, rsi
mov r9d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAllocEx]
test rax, rax
mov rsi, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
je 0x14004644c
mov rdi, rax
lea rcx, [rsp + 0x120]
mov r8d, 0x108
mov dl, 0xaa
call fcn.14014b2c0
lea rcx, [0x14024c3b0]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14004630d
movaps xmm6, xmmword [0x14022cb50]
movups xmmword [rsp + 0x2d8], xmm6
movups xmmword [rsp + 0x318], xmm6
movups xmmword [rsp + 0x308], xmm6
movups xmmword [rsp + 0x2f8], xmm6
movups xmmword [rsp + 0x2e8], xmm6
mov qword [rsp + 0x2c8], r13
mov dword [rsp + 0x2e0], 0
mov qword [rsp + 0x2d0], 0x20
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x118], rax
movups xmmword [rsp + 0x108], xmm6
movups xmmword [rsp + 0xf8], xmm6
mov rax, qword [rsi]
test rax, rax
je 0x14004644f
and ebx, 0xfff
add rdi, rbx
mov qword [rsp + 0x78], rdi
mov rax, qword [rax]
lea rcx, [0x14022e7b0]
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0x108], 0
mov qword [rsp + 0x110], rax
mov byte [rsp + 0x118], 1
mov dword [rsp + 0x11c], 0
lea rcx, [rsp + 0x228]
mov r8d, 0xa0
xor edx, edx
call fcn.14014b2c0
mov r14, qword [rsi + 0x10]
cmp r14, r15
je 0x140045b54
lea rbp, [rsp + 0x98]
lea r12, [rsp + 0xb0]
lea rsi, [rsp + 0xc8]
mov rax, qword [rsp + 0x78]
lea rdi, [rax + 0x20]
mov dword [rsp + 0x44], 0xaaaaaaaa
lea rbx, [rsp + 0xf0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x80], r13
jmp 0x14004592f
mov rdx, qword [r14 + 0x18]
mov r8, qword [r14 + 0x20]
mov rcx, rbp
call fcn.14012cf50
jmp 0x140045993
mov rcx, qword [rsp + 0x98]
call fcn.140146640
jmp 0x140045911
mov r9, qword [rsp + 0xb0]
sub r13, qword [rsp + 0x2d0]
movsxd r15, dword [rsp + 0x2e0]
shl r15, 6
add r15, rdi
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
mov rcx, rbx
mov rdx, qword [rsp + 0x68]
xor r8d, r8d
call qword [0x1402529a0]
test eax, eax
js 0x140046391
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax + 0x20]
mov rcx, rbx
call qword [0x1402529a0]
test rax, rax
je 0x14004635b
mov rcx, rax
call fcn.140146738
mov r13, rax
mov rcx, rbx
mov rdx, r13
call fcn.140030510
test al, al
je 0x140046363
mov rcx, rbx
mov rdx, r13
mov r8, r15
call fcn.140030660
mov ebp, eax
test r13, r13
mov r15, qword [rsp + 0x58]
je 0x1400458a5
mov rcx, r13
call fcn.140146e74
test ebp, ebp
js 0x140046398
movsxd rax, dword [rsp + 0x2e0]
shl rax, 6
add rax, rdi
movsxd rcx, dword [rsp + 0x94]
mov qword [rsp + rcx*8 + 0x228], rax
inc dword [rsp + 0x2e0]
add qword [rsp + 0x2d0], 0x40
mov bpl, 1
mov r13, qword [rsp + 0x80]
cmp byte [rsp + 0xdf], 0
js 0x14004636d
cmp byte [rsp + 0xc7], 0
js 0x14004637f
cmp byte [rsp + 0xaf], 0
js 0x1400457dd
test bpl, bpl
je 0x1400463ef
mov r14, qword [r14 + 8]
cmp r14, r15
lea rbp, [rsp + 0x98]
je 0x140045b54
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xe0], rax
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
mov rax, qword [r14 + 0x10]
mov qword [rsp + 0x90], rax
cmp byte [r14 + 0x2f], 0
js 0x1400457c8
lea rax, [r14 + 0x18]
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0x10], rcx
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
cmp byte [r14 + 0x47], 0
js 0x1400463c0
lea rax, [r14 + 0x30]
mov rcx, qword [rax + 0x10]
mov qword [r12 + 0x10], rcx
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
cmp byte [r14 + 0x5f], 0
js 0x1400463d5
lea rax, [r14 + 0x48]
mov rcx, qword [rax + 0x10]
mov qword [rsi + 0x10], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsi], xmm0
mov rcx, qword [r14 + 0x60]
mov qword [rsp + 0xe0], rcx
movsx rax, byte [rsp + 0xaf]
test rax, rax
mov r8, qword [rsp + 0xa0]
cmovns r8, rax
mov rdx, qword [rsp + 0x98]
cmovs rbp, rdx
test r8, r8
js 0x140046359
sete r10b
test rbp, rbp
setne r11b
or r11b, r10b
je 0x140046359
cmp r8, 9
jne 0x140046340
cmp word [rbp], 0x6e
jne 0x140046340
lea r8, [rdx + 2]
test al, al
lea r9, [rsp + 0x9a]
cmovns r8, r9
cmp word [r8], 0x74
jne 0x140046340
lea r8, [rdx + 4]
test al, al
lea r9, [rsp + 0x9c]
cmovns r8, r9
cmp word [r8], 0x64
jne 0x140046340
lea r8, [rdx + 6]
test al, al
lea r9, [rsp + 0x9e]
cmovns r8, r9
cmp word [r8], 0x6c
jne 0x140046340
lea r8, [rdx + 8]
test al, al
lea r9, [rsp + 0xa0]
cmovns r8, r9
cmp word [r8], 0x6c
jne 0x140046340
lea r8, [rdx + 0xa]
test al, al
lea r9, [rsp + 0xa2]
cmovns r8, r9
cmp word [r8], 0x2e
jne 0x140046340
lea r8, [rdx + 0xc]
test al, al
lea r9, [rsp + 0xa4]
cmovns r8, r9
cmp word [r8], 0x64
jne 0x140046340
lea r8, [rdx + 0xe]
test al, al
lea r9, [rsp + 0xa6]
cmovns r8, r9
cmp word [r8], 0x6c
jne 0x140046340
add rdx, 0x10
test al, al
lea rax, [rsp + 0xa8]
cmovns rdx, rax
xor ebp, ebp
cmp word [rdx], 0x6c
jne 0x140046342
cmp dword [rsp + 0x90], 1
jne 0x140046342
cmp byte [rsp + 0xdf], 0
mov rdx, rsi
jns 0x140045b3e
mov rdx, qword [rsp + 0xc8]
cmp byte [rsp + 0xc7], 0
mov r9, r12
jns 0x1400457f7
jmp 0x1400457ef
lea rsi, [rsp + 0x120]
lea rdx, [rsp + 0x228]
mov r8d, 0x100
mov rcx, rsi
call fcn.14014ac10
mov qword [rsi + 0x100], 1
lea rax, [rsp + 0x90]
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rax], rcx
lea r8, [rsp + 0x1c0]
mov qword [rsp + 0x20], rax
mov r9d, 0x20
mov rcx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov edi, 0x2a
test eax, eax
mov r15, qword [rsp + 0x60]
je 0x140046452
cmp qword [rsp + 0x90], 0x20
mov r12, qword [rsp + 0x50]
jne 0x140045c8b
lea rax, [rsp + 0xf0]
mov dword [rax], 0xaaaaaaaa
mov qword [rsp + 0x20], rax
mov rcx, qword [rsp + 0x70]
mov rdx, rsi
mov r8, r13
mov r9d, 0x20
call qword [sym.imp.KERNEL32.dll_VirtualProtectEx]
mov rax, qword [r12]
test rax, rax
je 0x14004645c
cmp qword [rsp + 0x220], 1
jne 0x1400463ea
cmp dword [rax + 0x10], 0
mov rcx, qword [rax]
je 0x14004648a
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x228], rax
lea rax, [rsp + 0x228]
mov qword [rsp + 0x20], rax
lea rdx, [0x1402798d0]
lea r8, [rsp + 0x120]
mov r9d, 0xa0
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
xor ecx, ecx
cmp qword [rsp + 0x228], 0xa0
mov edx, 0x3a
cmove edx, ecx
test eax, eax
mov edi, 0x39
cmovne edi, edx
test edi, edi
jne 0x140045cf6
mov rax, qword [r12]
test rax, rax
je 0x14004645f
cmp dword [rax + 0x10], 0
mov rcx, qword [rax]
je 0x140046462
lea rsi, [rsp + 0x120]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsi], rax
mov qword [rsp + 0x20], rsi
lea rdx, [0x1402799e0]
lea r8, [rsp + 0x88]
mov r9d, 8
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
xor ecx, ecx
cmp qword [rsi], 8
mov edx, 0x3a
cmove edx, ecx
test eax, eax
mov edi, 0x39
cmovne edi, edx
test r15, r15
jne 0x140045d29
mov rcx, qword [rsp + 0x328]
xor rcx, rsp
call fcn.140149190
mov eax, edi
movaps xmm6, xmmword [rsp + 0x330]
add rsp, 0x348
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r15
call fcn.140146e74
jmp 0x140045cfb
cmp rbx, rdx
seta al
cmp rsi, rdx
setbe cl
mov qword [rsp + 0x130], r8
or cl, al
je 0x140046359
mov rbx, rsi
movaps xmm0, xmmword [0x14024c3b0]
movaps xmmword [rsp + 0x120], xmm0
mov word [rsp + 0x130], 0x6c
lea rsi, [r13 + 0x18]
movsx rcx, byte [r13 + 0x2f]
mov rdx, rcx
mov rax, rsi
test rcx, rcx
jns 0x140045d87
mov rdx, qword [r13 + 0x20]
mov rax, qword [r13 + 0x18]
test rdx, rdx
js 0x140046359
sete r8b
test rax, rax
setne r9b
or r9b, r8b
je 0x140046359
cmp rdx, 9
je 0x140046586
mov r15, qword [rsp + 0x230]
test r15, r15
jne 0x1400464eb
test cl, cl
jns 0x1400464b2
mov rax, qword [r13 + 0x20]
lea r12, [rax*2 + 0x23]
and r12, 0xfffffffffffffff8
add r12, rbp
mov r10, qword [rsp + 0x230]
mov r15, r14
mov rbp, r14
test r10, r10
je 0x140045f10
movsx rdx, byte [r10 + 0x37]
mov rax, rdx
test rdx, rdx
jns 0x140045e02
mov rax, qword [r10 + 0x28]
test rax, rax
js 0x140046359
test dl, dl
js 0x140045e15
lea r9, [r10 + 0x20]
jmp 0x140045e19
mov r9, qword [r10 + 0x20]
test cl, cl
js 0x140045e25
movzx ecx, cl
mov rdx, rsi
jmp 0x140045e2d
mov rcx, qword [r13 + 0x20]
mov rdx, qword [r13 + 0x18]
test rcx, rcx
sete r11b
test rdx, rdx
setne r8b
or r8b, r11b
mov rbp, r10
test r9, r9
jne 0x140045e4f
test rax, rax
jne 0x140046359
test rcx, rcx
js 0x140046359
test r8b, r8b
je 0x140046359
cmp rax, rcx
mov r10, rcx
cmovb r10, rax
test r10, r10
je 0x140045e89
xor r11d, r11d
movzx edi, word [r9 + r11*2]
cmp word [rdx + r11*2], di
ja 0x140045e92
jb 0x140045ece
inc r11
cmp r10, r11
jne 0x140045e73
cmp rcx, rax
jne 0x14004631c
test r10, r10
mov r15, qword [rsp + 0x58]
je 0x140045eb5
xor r11d, r11d
movzx edi, word [rdx + r11*2]
cmp word [r9 + r11*2], di
ja 0x140045ebe
jb 0x140045f03
inc r11
cmp r10, r11
jne 0x140045e9f
cmp rax, rcx
jne 0x140046335
mov rsi, rbx
lea rbx, [rsp + 0x120]
jmp 0x140045f84
mov r10, qword [rbp]
mov r15, rbp
test r10, r10
je 0x140045f10
movsx rax, byte [r10 + 0x37]
test rax, rax
jns 0x140045eee
mov rax, qword [r10 + 0x28]
mov r9, qword [r10 + 0x20]
jmp 0x140045ef2
lea r9, [r10 + 0x20]
mov rbp, r10
test rax, rax
jns 0x140045e41
jmp 0x140046359
mov r10, qword [rbp + 8]
test r10, r10
jne 0x140045eda
lea r15, [rbp + 8]
mov ecx, 0x38
call fcn.140146648
mov rcx, rax
add rcx, 0x20
je 0x140046359
mov rdi, rax
cmp byte [r13 + 0x2f], 0
jns 0x140046573
mov rdx, qword [r13 + 0x18]
mov r8, qword [r13 + 0x20]
call fcn.14012cf50
mov rsi, rbx
movups xmmword [rdi], xmm6
mov qword [rdi + 0x10], rbp
mov qword [r15], rdi
mov rax, qword [rsp + 0x228]
mov rax, qword [rax]
test rax, rax
lea rbx, [rsp + 0x120]
jne 0x140045fca
mov rcx, qword [rsp + 0x230]
mov rdx, rdi
call fcn.1400f7da0
inc qword [rsp + 0x238]
mov r15, qword [rsp + 0x58]
movsx rax, byte [r13 + 0x47]
test rax, rax
lea rdx, [0x14024c3b0]
movabs r8, 0x9aaaaaa0000aaaa
js 0x1400464ba
movsx rcx, byte [r13 + 0x5f]
test rcx, rcx
js 0x1400464c3
lea rbp, [rax + rcx]
add rbp, 0x21
and rbp, 0xfffffffffffffff8
add rbp, r12
mov r12, qword [rsp + 0x50]
jmp 0x140045344
mov qword [rsp + 0x228], rax
mov rdi, qword [r15]
jmp 0x140045f67
cmp rbx, rdx
seta al
lea rcx, [rsp + 0x132]
cmp rcx, rdx
setbe cl
mov qword [rsp + 0x130], r8
or cl, al
je 0x140046359
movaps xmm0, xmmword [0x14024c3b0]
movaps xmmword [rsp + 0x120], xmm0
mov word [rsp + 0x130], 0x6c
lea r12, [rdi + 0x18]
movsx rax, byte [rdi + 0x2f]
test rax, rax
mov rdx, qword [rdi + 0x18]
mov r8, qword [rdi + 0x20]
mov r9, rax
cmovs r9, r8
mov rcx, r12
cmovs rcx, rdx
test r9, r9
js 0x140046359
sete r10b
test rcx, rcx
setne r11b
or r11b, r10b
je 0x140046359
cmp r9, 9
mov qword [rsp + 0x68], r13
je 0x14004661d
mov qword [rsp + 0x130], rbp
movaps xmmword [rsp + 0x120], xmm6
test al, al
jns 0x1400466b8
mov rcx, rbx
call fcn.14012cf50
mov cl, byte [rdi + 0x2f]
mov r8, qword [rdi + 0x20]
movzx eax, cl
test cl, cl
cmovs rax, r8
lea rax, [rax*2 + 0x23]
and rax, 0xfffffffffffffff8
mov rcx, qword [rsp + 0x228]
sub rcx, rax
jb 0x14004656b
mov r13, qword [rsp + 0x90]
mov qword [rsp + 0x228], rcx
lea rbp, [rax + r13]
mov qword [rsp + 0x90], rbp
cmp dword [rdi + 0x10], 3
sete byte [r13 + 0x18]
mov qword [r13], rax
mov qword [r13 + 8], rax
mov qword [r13 + 0x10], 0
movsx rax, byte [rdi + 0x2f]
mov rcx, qword [rdi + 0x20]
test rax, rax
jns 0x14004660e
test rcx, rcx
js 0x140046359
mov r12, qword [r12]
mov r8, rcx
add r13, 0x1a
cmp r12, r13
jb 0x140046123
lea rdx, [r8*2]
add rdx, r13
cmp rdx, r12
ja 0x140046359
test r8, r8
je 0x140046616
add r8, r8
mov rcx, r13
mov rdx, r12
call fcn.14014ac10
mov dl, byte [rdi + 0x2f]
mov rcx, qword [rdi + 0x20]
movzx eax, dl
test dl, dl
cmovs rax, rcx
mov word [r13 + rax*2], 0
cmp rdi, r15
je 0x1400462b1
mov r12, rdi
jmp 0x14004624b
test rax, rax
je 0x140046183
xor r8d, r8d
movzx r9d, word [rdx + r8*2]
cmp r9w, word [rcx + r8*2]
jne 0x14004623c
inc r8
cmp rax, r8
jne 0x14004616b
mov rcx, r13
lea rdx, [rsp + 0x90]
lea r8, [rsp + 0x228]
mov r9, rsi
call fcn.140046aa0
test al, al
je 0x14004656b
cmp rdi, r12
jne 0x1400461af
mov rdi, qword [rdi + 8]
mov rax, qword [r12]
mov r15, qword [r12 + 8]
mov qword [rax + 8], r15
mov rax, qword [r12]
mov qword [r15], rax
mov rax, qword [rsp + 0x50]
dec qword [rax + 0x18]
test r13, r13
je 0x140046359
cmp byte [r12 + 0x5f], 0
js 0x14004669a
cmp byte [r12 + 0x47], 0
js 0x1400466a9
cmp byte [r12 + 0x2f], 0
js 0x140046327
test r12, r12
je 0x140046359
mov rcx, r12
call fcn.140146640
jmp 0x140046241
mov r8, qword [r12 + 0x20]
mov rdx, qword [r12 + 0x18]
test r8, r8
js 0x140046359
sete r9b
test rdx, rdx
setne r10b
or r10b, r9b
je 0x140046359
cmp r8, rax
je 0x140046163
mov r15, qword [r12 + 8]
mov r12, r15
cmp r15, qword [rsp + 0x58]
je 0x1400462a9
lea r13, [r12 + 0x10]
lea rbp, [r12 + 0x18]
movsx rax, byte [rsp + 0x137]
test rax, rax
cmovs rax, qword [rsp + 0x128]
mov rcx, qword [rsp + 0x120]
cmovns rcx, rbx
test rax, rax
js 0x140046359
sete dl
test rcx, rcx
setne r8b
or r8b, dl
je 0x140046359
movsx r8, byte [r12 + 0x2f]
mov rdx, rbp
test r8, r8
jns 0x140046216
jmp 0x14004620c
mov rbp, qword [rsp + 0x90]
inc qword [rsp + 0x68]
mov r15b, 1
mov rsi, rbp
mov r12, qword [rsp + 0x50]
cmp byte [rsp + 0x137], 0
movabs rbp, 0xaaaaaaaaaaaaaaaa
jns 0x1400462e2
mov rcx, qword [rsp + 0x120]
call fcn.140146640
test r15b, r15b
mov r15, qword [rsp + 0x58]
lea rdx, [0x14024c3b0]
movabs r8, 0x9aaaaaa0000aaaa
mov r13, qword [rsp + 0x68]
jne 0x1400453fb
mov edi, 0x26
jmp 0x140046312
mov edi, 7
mov r15, qword [rsp + 0x60]
jmp 0x140045cf6
jb 0x140045ece
jmp 0x140045e92
mov rcx, qword [rbp]
call fcn.140146640
jmp 0x1400461f9
jb 0x140045f03
jmp 0x140045ebe
xor ebp, ebp
mov eax, 2
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x44], 2
jmp 0x1400458e7
ud2
xor r13d, r13d
jmp 0x140045870
mov ebp, 0xc0000035
jmp 0x140045893
mov rcx, qword [rsp + 0xc8]
call fcn.140146640
jmp 0x1400458f5
mov rcx, qword [rsp + 0xb0]
call fcn.140146640
jmp 0x140045903
mov ebp, eax
mov r15, qword [rsp + 0x58]
mov ecx, ebp
call fcn.1401e1400
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov dword [rsp + 0x44], 0x28
xor ebp, ebp
mov eax, 2
mov qword [rsp + 0x48], rax
jmp 0x1400458df
mov rdx, qword [r14 + 0x30]
mov r8, qword [r14 + 0x38]
mov rcx, r12
call fcn.1400bf140
jmp 0x1400459b3
mov rdx, qword [r14 + 0x48]
mov r8, qword [r14 + 0x50]
mov rcx, rsi
call fcn.1400bf140
jmp 0x1400459d0
call fcn.1401b74f0
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x120], eax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x220], rax
cmp rax, 1
je 0x140045b7d
cmp qword [rsp + 0x48], 2
mov r12, qword [rsp + 0x50]
mov r15, qword [rsp + 0x60]
mov edi, dword [rsp + 0x44]
je 0x140045c8b
cmp qword [rsp + 0x48], 0
je 0x1400466d9
call fcn.1401b74f0
xor edi, edi
jmp 0x140045cfb
int3
int3
int3
int3
int3
mov r12, qword [rsp + 0x50]
jmp 0x140045c8b
int3
int3
test rcx, rcx
jne 0x140045ca9
cmp dword [rax + 0x14], 0
jne 0x140045ca9
cmp qword [rax + 8], 0
jne 0x140045ca9
mov edi, 8
jmp 0x140045cf6
test rcx, rcx
jne 0x140045c31
cmp dword [rax + 0x14], 0
jne 0x140045c31
mov edi, 8
cmp qword [rax + 8], 0
jne 0x140045c31
jmp 0x140045c8b
movzx eax, cl
jmp 0x140045dcb
mov rax, qword [r13 + 0x38]
jmp 0x140045fa3
mov rcx, qword [r13 + 0x50]
jmp 0x140045fb1
mov rcx, rsi
mov rdx, rdi
xor r8d, r8d
mov r9d, 0x8000
call qword [sym.imp.KERNEL32.dll_VirtualFreeEx]
mov edi, 0x27
jmp 0x140045cf6
lea rdi, [r15 + 0x20]
lea rcx, [rsp + 0x120]
mov rdx, rsi
mov r8, rdi
call fcn.140144fc0
cmp byte [rsp + 0x120], 0
js 0x14004652d
lea rcx, [rsp + 0x120]
mov rdx, rdi
mov r8, rsi
call fcn.140144fc0
cmp byte [rsp + 0x120], 0
jns 0x14004653e
add r15, 8
mov r15, qword [r15]
test r15, r15
jne 0x1400464eb
mov cl, byte [r13 + 0x2f]
jmp 0x140045dbf
mov r12, rbp
mov r15, qword [rsp + 0x58]
jmp 0x140045ebe
mov rax, qword [r12]
test rax, rax
je 0x1400466dc
mov rax, qword [rax + 0x40]
mov r12, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
jmp 0x14004538e
xor r15d, r15d
jmp 0x1400462bc
mov rax, qword [rsi + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rsi]
movups xmmword [rcx], xmm0
jmp 0x140045f42
cmp word [rax], 0x6e
jne 0x140045dae
cmp word [rax + 2], 0x74
jne 0x140045dae
cmp word [rax + 4], 0x64
jne 0x140045dae
cmp word [rax + 6], 0x6c
jne 0x140045dae
cmp word [rax + 8], 0x6c
jne 0x140045dae
cmp word [rax + 0xa], 0x2e
jne 0x140045dae
cmp word [rax + 0xc], 0x64
jne 0x140045dae
cmp word [rax + 0xe], 0x6c
jne 0x140045dae
cmp word [rax + 0x10], 0x6c
jne 0x140045dae
mov r15, qword [rsp + 0x58]
mov rsi, rbx
lea rbx, [rsp + 0x120]
lea rdx, [0x14024c3b0]
movabs r8, 0x9aaaaaa0000aaaa
jmp 0x140045344
mov r8, rax
jmp 0x140046106
mov edx, eax
jmp 0x140046144
cmp word [rcx], 0x6e
jne 0x140046062
cmp word [rcx + 2], 0x74
jne 0x140046062
cmp word [rcx + 4], 0x64
jne 0x140046062
cmp word [rcx + 6], 0x6c
jne 0x140046062
cmp word [rcx + 8], 0x6c
jne 0x140046062
cmp word [rcx + 0xa], 0x2e
jne 0x140046062
cmp word [rcx + 0xc], 0x64
jne 0x140046062
cmp word [rcx + 0xe], 0x6c
jne 0x140046062
cmp word [rcx + 0x10], 0x6c
jne 0x140046062
mov r12, qword [rsp + 0x50]
lea rdx, [0x14024c3b0]
movabs r8, 0x9aaaaaa0000aaaa
jmp 0x1400453f7
mov rcx, qword [r12 + 0x48]
call fcn.140146640
jmp 0x1400461e1
mov rcx, qword [r12 + 0x30]
call fcn.140146640
jmp 0x1400461ed
mov rcx, qword [r12 + 0x10]
mov qword [rsp + 0x130], rcx
movups xmm0, xmmword [r12]
movaps xmmword [rsp + 0x120], xmm0
mov ecx, eax
jmp 0x14004608c
int3
int3