Function at 0x6396c0
Capabilities:
Run powershell expression

Disassembly:
lea r12, [rsp - 0xf8]
cmp r12, qword [r14 + 0x10]
jbe 0x63a1d0
push rbp
mov rbp, rsp
sub rsp, 0x170
movq qword [rsp + 0x168], xmm15
mov byte [rsp + 0x47], 0
movups xmmword [rsp + 0x90], xmm15
cmp byte [rax + 0xb0], 0
jne 0x639708
cmp qword [rax + 0xc0], 0
jge 0x63972f
mov rax, qword [0x0096c020]
mov rbx, qword [0x0096c028]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
add rsp, 0x170
pop rbp
ret
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], rbx
mov rax, rbx
call fcn.006405e0
test al, al
jne 0x639932
mov rax, qword [rsp + 0x188]
call fcn.00644320
nop
xor eax, eax
mov rcx, qword [rsp + 0x180]
mov edx, 1
lock cmpxchg dword [rcx], edx
sete dl
test dl, dl
jne 0x639787
mov rax, rcx
call fcn.00472260
mov rcx, qword [rsp + 0x180]
movups xmmword [rsp + 0xa0], xmm15
lea rsi, [0x0063a200]
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], rcx
lea rsi, [rsp + 0xa0]
mov qword [rsp + 0x168], rsi
mov byte [rsp + 0x47], 1
mov rsi, qword [rsp + 0x188]
cmp qword [rsi], 0
jne 0x6397ce
xor edx, edx
jmp 0x639800
mov rbx, qword [rcx + 0x28]
lea rax, [0x006b5840]
mov rcx, rsi
nop dword [rax]
call fcn.004113e0
cmp qword [rax], 0
setne dl
mov rcx, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x188]
nop dword [rax]
test dl, dl
jne 0x6398fe
mov rdx, qword [rsi + 0x18]
mov qword [rsp + 0xf8], rdx
movups xmm0, xmmword [rsi + 0x20]
movups xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rsi + 0x30]
movups xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rsi + 0x40]
movups xmmword [rsp + 0x120], xmm0
movups xmmword [rsp + 0x130], xmm15
movups xmmword [rsp + 0x138], xmm15
movups xmmword [rsp + 0x148], xmm15
movups xmmword [rsp + 0x158], xmm15
mov rbx, qword [rcx + 0x18]
lea rax, [0x006b57e0]
lea rcx, [rsp + 0xf8]
call fcn.0040e900
mov rdx, qword [rax]
mov qword [rsp + 0x130], rdx
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0x138], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmmword [rsp + 0x148], xmm0
movups xmm0, xmmword [rax + 0x28]
movups xmmword [rsp + 0x158], xmm0
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 0xc0], rdx
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rsp + 0xc8], xmm0
movups xmm0, xmmword [rsp + 0x148]
movups xmmword [rsp + 0xd8], xmm0
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rsp + 0xe8], xmm0
test bl, bl
je 0x639959
mov rbx, qword [rsp + 0x188]
cmp qword [rbx], 0
jne 0x63a0bd
jmp 0x639e86
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
mov rax, qword [0x0096c030]
mov rbx, qword [0x0096c038]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
add rsp, 0x170
pop rbp
ret
mov rsi, qword [rsp + 0x180]
cmp byte [rsi + 8], 0
jne 0x639a57
cmp qword [rsi + 0x10], 0
jne 0x6399ab
call fcn.0040e240
cmp dword [0x009d9570], 0
nop
jne 0x63998c
mov rdx, qword [rsp + 0x180]
jmp 0x6399a4
call fcn.004673c0
mov qword [r11], rax
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rdx + 0x10]
mov qword [r11 + 8], rsi
mov qword [rdx + 0x10], rax
mov rsi, rdx
mov rbx, qword [rsi + 0x10]
lea rax, [0x006b5780]
lea rcx, [rsp + 0xf8]
nop
call fcn.0040e6e0
mov rbx, qword [rax + 8]
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rdx + 0xc0]
mov rcx, qword [rax + 0x10]
test rsi, rsi
mov edi, 2
cmovne rdi, rsi
cmp rbx, rdi
jge 0x639a0e
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rbx
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov r8, qword [rsp + 0x188]
xor esi, esi
jmp 0x639aa4
mov rax, qword [0x0096c060]
mov rcx, qword [0x0096c068]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
mov rax, qword [0x0096c040]
mov rcx, qword [0x0096c048]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
nop
ret
inc rsi
cmp rsi, rbx
jge 0x639b1e
mov r9, qword [rax + rsi*8]
cmp r9, r8
jne 0x639aa1
mov qword [rsp + 0x68], rsi
movups xmmword [rsp + 0xb0], xmm15
lea rdx, [0x006f4fe0]
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], r8
lea rax, [0x00712496]
mov ebx, 0x1d
lea rcx, [rsp + 0xb0]
mov edi, 1
mov rsi, rdi
call fcn.004fbe60
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x188]
jmp 0x639aa1
inc rbx
cmp rcx, rbx
jae 0x639b47
mov edi, 1
lea rsi, [0x006f4fe0]
call fcn.0044bd00
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x188]
mov qword [rsp + 0x68], rcx
cmp dword [0x009d9570], 0
je 0x639b66
call fcn.004673c0
mov qword [r11], r8
mov rsi, qword [rax + rbx*8 - 8]
mov qword [r11 + 8], rsi
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x60], rbx
mov qword [rax + rbx*8 - 8], r8
mov rsi, qword [rdx + 0x10]
lea rcx, [rsp + 0xf8]
lea rax, [0x006b5780]
mov rbx, rsi
call fcn.0040ed00
mov rdx, qword [rsp + 0x60]
mov qword [rax + 8], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rax + 0x10], rdx
cmp dword [0x009d9570], 0
jne 0x639bb8
mov rcx, qword [rsp + 0x88]
jmp 0x639bcf
call fcn.004673c0
mov rcx, qword [rsp + 0x88]
mov qword [r11], rcx
mov rdx, qword [rax]
mov qword [r11 + 8], rdx
mov qword [rax], rcx
mov rax, qword [rsp + 0x180]
lea rcx, [rax + 0x20]
mov rbx, qword [rsp + 0x188]
mov rax, rcx
call fcn.00645100
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rcx + 0xb8]
nop dword [rax]
test rdx, rdx
je 0x639d23
mov rsi, qword [rcx + 0x28]
test rsi, rsi
je 0x639c17
mov rsi, qword [rsi]
jmp 0x639c20
xor esi, esi
nop dword [rax]
cmp rsi, rdx
jle 0x639d23
mov rdx, qword [rcx + 0x20]
nop
cmp qword [rdx + 0x28], 0
jne 0x639c39
xor esi, esi
jmp 0x639c3d
mov rsi, qword [rdx + 8]
mov rax, qword [rsi + 0x18]
mov rdi, qword [rsi + 0x20]
lea rbx, [0x006f4fe0]
cmp rax, rbx
jne 0x639e72
nop
cmp qword [rsi + 0x10], rdx
jne 0x639cd0
mov r8, qword [rsi + 8]
test byte [r8], al
nop
mov r9, qword [rsi]
cmp dword [0x009d9570], 0
je 0x639c7f
call fcn.004673c0
mov qword [r11], r9
mov r10, qword [r8]
mov qword [r11 + 8], r10
mov qword [r8], r9
mov r8, qword [rsi]
test byte [r8], al
mov r9, qword [rsi + 8]
cmp dword [0x009d9570], 0
je 0x639cbc
call fcn.00467420
mov qword [r11], r9
mov r10, qword [r8 + 8]
mov qword [r11 + 8], r10
mov r10, qword [rsi]
mov qword [r11 + 0x10], r10
mov r10, qword [rsi + 8]
mov qword [r11 + 0x18], r10
mov r10, qword [rsi + 0x10]
mov qword [r11 + 0x20], r10
mov qword [r8 + 8], r9
movups xmmword [rsi], xmm15
mov qword [rsi + 0x10], 0
dec qword [rdx + 0x28]
mov qword [rsp + 0x80], rdi
mov rbx, qword [rcx + 0x28]
lea rax, [0x006b5840]
mov rcx, rdi
call fcn.00411d80
mov rbx, qword [0x0096c050]
mov rcx, qword [0x0096c058]
mov rax, qword [rsp + 0x80]
call fcn.006443c0
mov rax, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x80]
call fcn.0063ab40
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rcx + 0xd0]
test rbx, rbx
jle 0x639df3
mov rdx, qword [rsp + 0x188]
cmp qword [rdx], 0
nop
jne 0x639e00
mov rax, qword [rdx + 0xd0]
test rax, rax
je 0x639d65
call fcn.004b8de0
mov rcx, qword [rsp + 0x188]
nop
jmp 0x639e00
lea rax, [0x006c5060]
call fcn.0040d7c0
lea rcx, [0x0064bb60]
mov qword [rax], rcx
cmp dword [0x009d9570], 0
jne 0x639d8e
mov rcx, qword [rsp + 0x188]
jmp 0x639d9e
call fcn.004673a0
mov rcx, qword [rsp + 0x188]
mov qword [r11], rcx
mov qword [rax + 8], rcx
mov rdx, qword [rsp + 0x180]
mov rdx, qword [rdx + 0xd0]
mov rbx, rax
mov rax, rdx
call fcn.004b8f00
cmp dword [0x009d9570], 0
jne 0x639dcf
mov rcx, qword [rsp + 0x188]
jmp 0x639dea
call fcn.004673c0
mov qword [r11], rax
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rcx + 0xd0]
mov qword [r11 + 8], rdx
mov qword [rcx + 0xd0], rax
jmp 0x639e00
mov rdx, qword [rsp + 0x188]
nop dword [rax + rax]
call fcn.004ba360
mov rdx, qword [rsp + 0x188]
mov qword [rdx + 0xb8], rax
mov qword [rdx + 0xc0], rbx
cmp dword [0x009d9570], 0
je 0x639e37
call fcn.004673c0
mov qword [r11], rcx
mov rax, qword [rdx + 0xc8]
mov qword [r11 + 8], rax
mov qword [rdx + 0xc8], rcx
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
lea rcx, [0x006b0220]
call fcn.0040aba0
mov rbx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd8]
mov r8, rdx
sub rdx, rsi
mov r9, qword [rsp + 0xe8]
add rdx, r9
test rdx, rdx
jle 0x639f9e
mov qword [rsp + 0x48], rdx
cmp r8, rsi
jg 0x639f27
test r9, r9
jne 0x639ec7
xor r8d, r8d
jmp 0x639f7a
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xf0]
mov r11, qword [rsp + 0xe0]
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xc0], r11
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], r8
mov qword [rsp + 0xe0], rsi
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xd8]
nop word [rax + rax]
cmp rcx, rax
jbe 0x63a0a4
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsi + rax*8]
cmp dword [0x009d9570], 0
je 0x639f6a
mov r9, qword [rsi + rax*8]
call fcn.004673a0
mov qword [r11], r9
mov qword [rsi + rax*8], 0
inc qword [rsp + 0xd8]
mov rax, r8
xor ecx, ecx
xor edi, edi
call fcn.0063b420
test al, al
je 0x639e7e
mov rdx, qword [rsp + 0x48]
test rdx, rdx
mov rbx, qword [rsp + 0x188]
setg dl
mov byte [rsp + 0x46], dl
mov rsi, qword [rsp + 0xc8]
sub rsi, qword [rsp + 0xd8]
add rsi, qword [rsp + 0xe8]
nop dword [rax]
test rsi, rsi
jne 0x639fe7
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rdx + 0x18]
lea rax, [0x006b57e0]
lea rcx, [rsp + 0xf8]
call fcn.0040f240
jmp 0x63a062
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rdx + 0x18]
lea rax, [0x006b57e0]
lea rcx, [rsp + 0xf8]
call fcn.0040ed00
test byte [rax], al
cmp dword [0x009d9570], 0
je 0x63a033
mov qword [rsp + 0x78], rax
mov rbx, rax
lea rcx, [rsp + 0xc0]
lea rax, [0x006d40e0]
call fcn.004139c0
mov rax, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xc0]
mov qword [rax], rsi
movups xmm0, xmmword [rsp + 0xc8]
movups xmmword [rax + 8], xmm0
movups xmm0, xmmword [rsp + 0xd8]
movups xmmword [rax + 0x18], xmm0
movups xmm0, xmmword [rsp + 0xe8]
movups xmmword [rax + 0x28], xmm0
movzx esi, byte [rsp + 0x46]
test sil, sil
je 0x639959
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
call fcn.00467760
mov rax, rsi
xor ecx, ecx
xor edi, edi
call fcn.0063b420
mov rbx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd8]
mov r8, rdx
sub rdx, rsi
mov r9, qword [rsp + 0xe8]
add rdx, r9
nop
test rdx, rdx
jle 0x63a1a5
cmp rsi, r8
jl 0x63a157
test r9, r9
jne 0x63a0f7
xor esi, esi
jmp 0x63a0a9
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xf0]
mov r10, qword [rsp + 0xe0]
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xc0], r10
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xd8]
cmp rcx, rax
jbe 0x63a1ac
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rdx + rax*8]
cmp dword [0x009d9570], 0
nop
je 0x63a18e
mov r8, qword [rdx + rax*8]
call fcn.004673a0
mov qword [r11], r8
mov qword [rdx + rax*8], 0
inc qword [rsp + 0xd8]
nop
jmp 0x63a0a9
xor edx, edx
jmp 0x639fa1
call fcn.00467760
nop
call fcn.00436380
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
add rsp, 0x170
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.004654a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.006396c0