Function at 0x1401c3d60
Capabilities:
Encode data using xor
Hash data using sha256
Parse pe header

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5b8]
sub rsp, 0x678
mov qword [rbp + 8], 0xfffffffffffffffe
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
mov rax, qword [0x140415a10]
xor rax, rsp
mov qword [rbp + 0x520], rax
mov dword [rbp - 0x38], r9d
mov r10, r8
mov qword [rbp - 0x50], r8
mov r14, rdx
mov qword [rbp], rdx
mov rbx, rcx
mov qword [rbp - 0x80], rcx
mov r12, qword [rcx + 0xc0]
mov qword [rsp + 0x70], r12
mov rax, qword [r8]
lea r9, [rsp + 0x44]
mov r8d, 0x10000
mov rdx, r12
mov rcx, r10
call qword [rax + 8]
test al, al
je 0x1401c4fc4
mov r15d, dword [rsp + 0x44]
mov dword [rsp + 0x48], r15d
movzx eax, word [r12]
mov ecx, 0x5253
mov esi, 0x5a4d
cmp ax, cx
jne 0x1401c3e17
mov word [r12], si
jmp 0x1401c3ef1
cmp ax, si
je 0x1401c3ef1
xor r8d, r8d
lea rdx, str..COM
lea rcx, [r14 + 8]
call fcn.1401fc9f0
test al, al
je 0x1401c3e80
mov r8d, r15d
mov rdx, r12
call fcn.1401c5c40
test al, al
jne 0x1401c3e53
or qword [r14 + 0x40], 0x900000
jmp 0x1401c3edd
cmp r15d, 8
jbe 0x1401c3edd
mov r8d, 8
lea rdx, str._script_
mov rcx, r12
call fcn.1402bc584
test eax, eax
jne 0x1401c3edd
or qword [r14 + 0x40], 0x900000
jmp 0x1401c3edd
cmp r15d, 2
jbe 0x1401c3edd
cmp byte [r12], 0x50
jne 0x1401c3edd
cmp byte [r12 + 1], 0x4b
jne 0x1401c3edd
lea rdx, [r14 + 8]
lea rcx, [rbp + 0x4f0]
call fcn.1400d44c0
nop
xor r8d, r8d
lea rdx, str.jar_cache
lea rcx, [rbp + 0x4f0]
call fcn.1401ff2c0
test al, al
je 0x1401c3ec8
or qword [r14 + 0x40], 0x100000
cmp dword [rbp + 0x4f8], 0
jle 0x1401c3edd
mov rcx, qword [rbp + 0x4f0]
call fcn.1402b7350
mov eax, dword [r14 + 0x40]
shr rax, 0x14
test al, 1
je 0x1401c4fc2
mov rbx, qword [rbp - 0x80]
xor r13d, r13d
mov qword [rbp + 0x10], r13
movups xmm0, xmmword [0x140328970]
movups xmmword [rbp + 0x18], xmm0
movups xmm1, xmmword [0x140328980]
movups xmmword [rbp + 0x28], xmm1
lea r8, [rbp + 0x10]
mov edx, dword [rsp + 0x44]
mov rcx, r12
call fcn.14018c2d0
movaps xmm0, xmmword [rbp + 0x10]
movaps xmmword [rbp + 0x80], xmm0
movaps xmm1, xmmword [rbp + 0x20]
movaps xmmword [rbp + 0x90], xmm1
movaps xmm0, xmmword [rbp + 0x30]
movaps xmmword [rbp + 0xa0], xmm0
movaps xmm1, xmmword [rbp + 0x40]
movaps xmmword [rbp + 0xb0], xmm1
movaps xmm0, xmmword [rbp + 0x50]
movaps xmmword [rbp + 0xc0], xmm0
movaps xmm1, xmmword [rbp + 0x60]
movaps xmmword [rbp + 0xd0], xmm1
movsd xmm0, qword [rbp + 0x70]
movsd qword [rbp + 0xe0], xmm0
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x500]
call fcn.14018c3c0
mov rdi, qword [r14 + 0x40]
mov rax, rdi
shr rax, 0x27
test al, 1
jne 0x1401c3fd1
mov rax, qword [rbx + 8]
mov rbx, qword [rax + 0x4e0]
lea r8, [rbp + 0x500]
lea rdx, [rbp - 0x60]
mov rcx, rbx
call fcn.140119f60
mov rax, qword [rbx]
cmp qword [rbp - 0x60], rax
je 0x1401c3fd1
movabs rax, 0x1000000000
or rdi, rax
movabs rax, 0xffffffbffffffffc
and rdi, rax
mov qword [r14 + 0x40], rdi
mov rax, qword [r14 + 0x40]
mov rdi, rax
shr rdi, 0x24
not dil
and dil, 1
mov qword [rbp - 0x60], rdi
mov edi, 0x100
cmp word [r12], si
jne 0x1401c4d8b
mov dword [rbp - 0x54], r13d
mov esi, r13d
mov qword [rbp - 0x68], rsi
mov edi, r13d
mov dword [rsp + 0x68], r13d
mov r15, r13
shr rax, 0x17
test al, 1
jne 0x1401c4d81
movsxd rax, dword [r12 + 0x3c]
cmp rax, 0x40
jae 0x1401c405a
mov rax, qword [r12]
cmp rax, qword [str.MZfarbrauschPE]
jne 0x1401c404d
mov eax, dword [r12 + 8]
cmp eax, dword [0x140362238]
jne 0x1401c404d
movzx eax, word [r12 + 0xc]
cmp ax, word [0x14036223c]
je 0x1401c405a
mov edx, 2
mov rcx, r14
call fcn.1401c27f0
movsxd rcx, dword [r12 + 0x3c]
mov r10d, 1
test ecx, ecx
jns 0x1401c408a
lea edx, [r10 + 1]
mov rcx, r14
call fcn.1401c27f0
or qword [r14 + 0x40], 0x100000
mov r12, qword [rbp - 0x60]
mov qword [rbp - 0x78], r12
jmp 0x1401c472e
mov r8d, dword [rsp + 0x48]
lea rax, [rcx + 0xe0]
cmp rax, r8
jbe 0x1401c40bf
mov ebx, 0x2000
mov edx, ebx
mov rcx, r14
call fcn.1401c27f0
or qword [r14 + 0x40], 0x100000
mov r12, qword [rbp - 0x60]
mov qword [rbp - 0x78], r12
jmp 0x1401c472e
add r12, rcx
mov qword [rbp - 0x78], r12
mov eax, 0x454e
cmp word [r12], ax
jne 0x1401c40df
or qword [r14 + 0x40], 0x500000
jmp 0x1401c472e
movzx eax, word [r12 + 0x14]
add eax, ecx
movsxd rdx, eax
movzx eax, word [r12 + 6]
lea rcx, [rax + rax*4]
lea rax, [rdx + rcx*8]
cmp rax, r8
jbe 0x1401c410a
or qword [r14 + 0x40], 0x100000
jmp 0x1401c472e
cmp dword [r12], 0x4550
jne 0x1401c472e
or qword [r14 + 0x40], 0x300000
mov ebx, 0x2000
test word [r12 + 0x16], bx
je 0x1401c413b
mov rcx, r14
call fcn.1401c28b0
mov r10d, 1
mov rdx, r13
mov qword [rbp - 0x30], rdx
mov r8, r13
mov qword [rbp - 0x48], r13
movzx eax, word [r12 + 0x14]
add rax, 0x18
add rax, r12
mov qword [rsp + 0x78], rax
lea rax, [r12 + 0x18]
mov ecx, 0x20b
cmp word [rax], cx
jne 0x1401c41c9
or qword [r14 + 0x40], 0x800
mov rcx, qword [r14 + 0x40]
mov r8, rax
mov qword [rbp - 0x48], rax
mov esi, dword [rax + 0x6c]
mov r15d, dword [rax + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rbp - 0x58], eax
cmp word [r8 + 0x44], 3
sete al
test al, al
je 0x1401c419e
bts rcx, 0x19
jmp 0x1401c41a3
btr rcx, 0x19
mov qword [r14 + 0x40], rcx
cmp word [r8 + 0x44], 1
sete al
test al, al
je 0x1401c41ba
or qword [r14 + 0x40], rbx
jmp 0x1401c41c2
and qword [r14 + 0x40], 0xffffffffffffdfff
test byte [r8 + 0x46], 0x40
jmp 0x1401c4219
mov rdx, rax
mov qword [rbp - 0x30], rax
mov esi, dword [rax + 0x5c]
mov r15d, dword [rax + 0x38]
mov eax, dword [rax + 0x10]
mov dword [rbp - 0x58], eax
cmp word [rdx + 0x44], 3
sete al
test al, al
je 0x1401c41f3
or qword [r14 + 0x40], 0x2000000
jmp 0x1401c41fb
and qword [r14 + 0x40], 0xfffffffffdffffff
cmp word [rdx + 0x44], 1
sete al
test al, al
je 0x1401c420d
or qword [r14 + 0x40], rbx
jmp 0x1401c4215
and qword [r14 + 0x40], 0xffffffffffffdfff
test byte [rdx + 0x46], 0x40
je 0x1401c4223
or qword [r14 + 0x40], 0x4000
mov r13d, 4
test esi, esi
je 0x1401c4406
lea r9, [0x140000000]
nop dword [rax + rax]
mov eax, dword [r14 + 0x40]
shr rax, 0xb
mov ecx, edi
test al, 1
je 0x1401c4258
add rcx, 0xe
lea rcx, [r8 + rcx*8]
jmp 0x1401c4260
add rcx, 0xc
lea rcx, [rdx + rcx*8]
mov ebx, dword [rcx]
test ebx, ebx
je case.0x1401c4293.7
cmp edi, r13d
je 0x1401c427d
mov ecx, dword [rcx + 4]
add ecx, ebx
cmp ecx, r15d
ja 0x1401c43f9
cmp edi, 0xe
ja case.0x1401c4293.7
mov eax, edi
mov ecx, dword [r9 + rax*4 + 0x1c5000]
add rcx, r9
jmp rcx
mov edx, r10d
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 2
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, r13d
mov rcx, r14
call fcn.1401c29a0
movzx eax, word [r12 + 6]
xor r9d, r9d
mov edx, r9d
mov r8d, eax
test eax, eax
jle 0x1401c4335
mov rcx, qword [rsp + 0x78]
add rcx, 8
nop
mov r12d, dword [rcx]
test r12d, r12d
jne 0x1401c42ec
mov r12d, dword [rcx + 8]
mov eax, dword [rcx + 4]
cmp ebx, eax
jb 0x1401c42fa
add eax, r12d
cmp ebx, eax
jb 0x1401c4308
inc rdx
add rcx, 0x28
cmp rdx, r8
jge 0x1401c4335
jmp 0x1401c42e0
sub ebx, dword [rcx + 4]
sub r12d, ebx
mov dword [rsp + 0x68], r12d
mov eax, dword [rcx + 0xc]
mov r12d, ebx
mov rcx, qword [rsp + 0x70]
add rax, rcx
add r12, rax
je 0x1401c4335
sub r12d, ecx
mov qword [rbp - 0x68], r12
jne 0x1401c43d5
jmp 0x1401c4339
mov dword [rbp - 0x68], r9d
mov dword [rsp + 0x68], r9d
jmp 0x1401c43d5
mov edx, 8
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x10
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x20
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
test byte [r12 + 0x16], 0xc
jne case.0x1401c4293.7
mov edx, 0x40
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x80
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x100
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x200
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x400
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov edx, 0x800
mov rcx, r14
call fcn.1401c29a0
jmp 0x1401c43d9
mov r12, qword [rbp - 0x78]
lea r9, [0x140000000]
inc edi
cmp edi, esi
jae 0x1401c4406
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp - 0x48]
mov r10d, 1
jmp 0x1401c4240
mov edx, 8
mov rcx, r14
call fcn.1401c27f0
mov eax, 0xe0
cmp word [r12 + 0x14], ax
jae 0x1401c4423
mov edx, r13d
mov rcx, r14
call fcn.1401c27f0
jmp 0x1401c4721
mov eax, dword [r14 + 0x40]
shr rax, 0xb
mov r15d, 1
test r15b, al
mov rax, qword [rbp - 0x48]
jne 0x1401c443e
mov rax, qword [rbp - 0x30]
cmp dword [rax + 0x40], 0
jne 0x1401c444f
mov edx, r15d
mov rcx, r14
call fcn.1401c27f0
xor edi, edi
mov dword [rbp - 0x70], edi
movzx ebx, word [r12 + 6]
mov rcx, qword [rsp + 0x78]
test ebx, ebx
jne 0x1401c447d
cmp byte [rcx], 0x2e
jne 0x1401c447d
mov ebx, r15d
mov edx, 0x100
mov rcx, r14
call fcn.1401c27f0
mov rcx, qword [rsp + 0x78]
mov qword [rbp - 0x20], rdi
movsxd rax, ebx
mov qword [rbp - 0x10], rax
test ebx, ebx
jle 0x1401c4708
lea r12, [rcx + 0x24]
lea r13, [rbp + 0x4f0]
sub r13, rcx
jmp 0x1401c44a2
xor edi, edi
xor sil, sil
mov rdx, rdi
lea rcx, [r12 - 0x24]
nop dword [rax]
movzx eax, byte [rcx]
test al, al
je 0x1401c44d1
movzx esi, sil
cmp al, 0x80
cmovae esi, r15d
mov byte [rcx + r13], al
inc rdx
inc rcx
cmp rdx, 8
jl 0x1401c44b0
cmp rdx, 9
jae 0x1401c4702
mov byte [rbp + rdx + 0x4f0], 0
mov r15d, dword [r12 - 0x14]
xor dil, dil
lea rdx, str..reloc
lea rcx, [rbp + 0x4f0]
call fcn.1402b7e08
test eax, eax
jne 0x1401c451a
mov dil, 1
mov eax, dword [r12]
test al, 0x20
jne 0x1401c4513
bt eax, 0x1d
jae 0x1401c454b
mov edx, 0x200
jmp 0x1401c4543
lea rdx, [0x1403622bc]
lea rcx, [rbp + 0x4f0]
call fcn.1402b7e08
test eax, eax
jne 0x1401c454b
mov dil, 1
test dword [r12], 0x20000000
je 0x1401c454b
mov edx, 0x400
mov rcx, r14
call fcn.1401c27f0
mov ebx, dword [r12 - 0x10]
mov eax, dword [r12]
test al, 0x20
jne 0x1401c4562
bt eax, 0x1d
jb 0x1401c4562
test eax, eax
jns 0x1401c45a9
inc dword [rbp - 0x70]
lea eax, [rbx + r15]
cmp eax, dword [r14 + 0x38]
jbe 0x1401c4577
or qword [r14 + 0x40], 0x20000000
mov ecx, dword [r12 - 0x18]
mov edx, dword [rbp - 0x58]
cmp edx, ecx
jb 0x1401c45a9
lea eax, [r15 + rcx]
cmp edx, eax
jae 0x1401c45a9
mov eax, edx
sub eax, ecx
mov ecx, r15d
sub ecx, eax
mov dword [rbp - 0x54], ecx
test dil, dil
je 0x1401c45a9
mov edx, 0x800
mov rcx, r14
call fcn.1401c27f0
xor r8d, r8d
mov rdx, qword [rsp + 0x78]
add rdx, 0x14
mov rdi, qword [rbp - 0x10]
nop dword [rax]
mov ecx, dword [rdx]
cmp ebx, ecx
jbe 0x1401c45cd
add ecx, dword [rdx - 4]
cmp ebx, ecx
jb 0x1401c45db
inc r8
add rdx, 0x28
cmp r8, rdi
jge 0x1401c45e8
jmp 0x1401c45c0
mov edx, 0x1000
mov rcx, r14
call fcn.1401c27f0
lea rcx, [rbp + 0x4f0]
or rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1401c45f3
test rax, rax
je 0x1401c4606
test sil, sil
je 0x1401c4613
mov edx, 0x10
mov rcx, r14
call fcn.1401c27f0
cmp r15d, dword [r14 + 0x38]
jbe 0x1401c4626
mov edx, 0x20
mov rcx, r14
call fcn.1401c27f0
mov r8, qword [rbp - 0x20]
inc r8
mov qword [rbp - 0x20], r8
sub r13, 0x28
add r12, 0x28
cmp r8, rdi
mov r15d, 1
jl 0x1401c44a0
mov eax, dword [rbp - 0x70]
test eax, eax
je 0x1401c4708
mov eax, dword [rbp - 0x54]
dec eax
cmp eax, 4
ja 0x1401c466e
and qword [r14 + 0x40], 0xffffffffffefffff
movzx eax, r15b
jmp 0x1401c4fc4
xor ecx, ecx
mov eax, dword [r14 + 0x40]
shr rax, 0xb
lea edx, [rcx + 4]
test r15b, al
je 0x1401c46b6
mov rax, qword [rbp - 0x48]
add rax, 0x74
cmp dword [rax - 4], 0
je 0x1401c4690
add ecx, dword [rax]
cmp dword [rax + 4], 0
je 0x1401c4699
add ecx, dword [rax + 8]
cmp dword [rax + 0xc], 0
je 0x1401c46a2
add ecx, dword [rax + 0x10]
cmp dword [rax + 0x14], 0
je 0x1401c46ab
add ecx, dword [rax + 0x18]
add rax, 0x20
dec rdx
jne 0x1401c4688
jmp 0x1401c46ec
mov rax, qword [rbp - 0x30]
add rax, 0x64
nop
cmp dword [rax - 4], 0
je 0x1401c46c8
add ecx, dword [rax]
cmp dword [rax + 4], 0
je 0x1401c46d1
add ecx, dword [rax + 8]
cmp dword [rax + 0xc], 0
je 0x1401c46da
add ecx, dword [rax + 0x10]
cmp dword [rax + 0x14], 0
je 0x1401c46e3
add ecx, dword [rax + 0x18]
add rax, 0x20
dec rdx
jne 0x1401c46c0
test ecx, ecx
jne 0x1401c46f5
lea edx, [rcx + 0x40]
jmp 0x1401c4715
cmp ecx, dword [r14 + 0x38]
jbe 0x1401c471d
mov edx, 0x80
jmp 0x1401c4715
call fcn.1402b8d20
int3
and qword [r14 + 0x40], 0xffffffffffefffff
jmp 0x1401c4fc2
mov rcx, r14
call fcn.1401c27f0
mov r12, qword [rbp - 0x78]
mov r15, qword [rsp + 0x78]
mov rsi, qword [rbp - 0x68]
mov edi, dword [rsp + 0x68]
mov rcx, qword [r14 + 0x40]
mov rax, rcx
shr rax, 0x14
test al, 1
je 0x1401c4fc2
mov rax, rcx
shr rax, 0xd
test al, 1
je 0x1401c47ed
shr rcx, 9
test cl, 1
je 0x1401c47ed
mov r8d, 9
lea rdx, [rbp + 0x4f0]
mov rcx, r14
call fcn.1400d8440
nop
xor r8d, r8d
lea rdx, str.Boot
mov rcx, rax
call fcn.1401fce20
movzx ebx, al
cmp dword [rbp + 0x4f8], 0
jle 0x1401c479d
mov rcx, qword [rbp + 0x4f0]
call fcn.1402b7350
test bl, bl
je 0x1401c47ed
mov rdx, r14
call fcn.140113200
test al, al
je 0x1401c47ed
mov r8d, 8
lea rdx, [rbp + 0x4f0]
mov rcx, r14
call fcn.1400d8440
nop
mov r8, rax
mov edx, 0xc
mov rcx, r14
call fcn.14000b8f0
nop
cmp dword [rbp + 0x4f8], 0
jle 0x1401c47e9
mov rcx, qword [rbp + 0x4f0]
call fcn.1402b7350
mov byte [rbp - 0x60], 1
mov r13, qword [rbp - 0x80]
test esi, esi
je 0x1401c4d6b
mov byte [rsp + 0x40], 0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], r15
mov r9, r12
mov r12, qword [rsp + 0x70]
mov r8, r12
mov rdx, r14
mov rcx, r13
call fcn.1401c5040
cmp byte [rsp + 0x40], 0
je 0x1401c4851
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], r15
mov r9, qword [rbp - 0x78]
mov r8, r12
mov rdx, r14
mov rcx, r13
call fcn.1401c55d0
mov r15d, dword [rsp + 0x48]
cmp r15d, 0x1200
jbe 0x1401c4d75
xor sil, sil
xor r15b, r15b
xor r12b, r12b
xor r13b, r13b
mov edx, 3
mov rcx, r14
call fcn.1400d8590
test al, al
je 0x1401c4d7c
xor eax, eax
mov qword [rbp + 0x4f8], rax
lea edx, [rax + 6]
lea rcx, [rbp + 0x4f0]
call fcn.1401fcb40
mov eax, dword [rbp + 0x4f8]
inc eax
movsxd rdx, eax
mov r9d, 6
lea r8, str.aaaaaa
mov rcx, qword [rbp + 0x4f0]
call fcn.1402ba94c
mov edx, 6
lea rcx, [rbp + 0x4f0]
call fcn.1401fde50
nop
cmp dword [rbp + 0x4fc], 2
jg 0x1401c4943
lea rcx, [rsp + 0x50]
call fcn.1401fa810
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x50], rax
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
lea rdx, [0x14040da50]
lea rcx, [rsp + 0x50]
call fcn.1402bece8
int3
mov ecx, 0x73
mov rax, qword [rbp + 0x4f0]
mov word [rax + 4], cx
cmp dword [rbp + 0x4fc], 0
jg 0x1401c49c4
lea rcx, [rsp + 0x50]
call fcn.1401fa810
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x50], rax
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
lea rdx, [0x14040da50]
lea rcx, [rsp + 0x50]
call fcn.1402bece8
int3
mov ecx, 0x6b
mov rax, qword [rbp + 0x4f0]
mov word [rax], cx
cmp dword [rbp + 0x4fc], 4
jg 0x1401c4a44
lea rcx, [rsp + 0x50]
call fcn.1401fa810
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x50], rax
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
lea rdx, [0x14040da50]
lea rcx, [rsp + 0x50]
call fcn.1402bece8
int3
mov ecx, 0x79
mov rax, qword [rbp + 0x4f0]
mov word [rax + 8], cx
cmp dword [rbp + 0x4fc], 3
jg 0x1401c4ac5
lea rcx, [rsp + 0x50]
call fcn.1401fa810
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x50], rax
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, 0x2a
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
lea rdx, [0x14040da50]
lea rcx, [rsp + 0x50]
call fcn.1402bece8
int3
mov ecx, 0x65
mov rax, qword [rbp + 0x4f0]
mov word [rax + 6], cx
mov rcx, r14
call fcn.1400d8530
mov rdi, rax
mov rcx, qword [rax]
mov rbx, qword [rcx]
cmp rbx, rcx
je 0x1401c4d4f
lea rax, [0x140346ce0]
xor r14d, r14d
nop dword [rax]
mov ecx, dword [rbx + 0x20]
mov dword [rsp + 0x50], ecx
mov qword [rsp + 0x60], r14
mov edx, dword [rbx + 0x34]
test edx, edx
jne 0x1401c4b1a
mov qword [rsp + 0x58], rax
jmp 0x1401c4b3f
lea rcx, [rsp + 0x58]
call fcn.1401fcb40
movsxd r9, dword [rbx + 0x34]
mov eax, dword [rsp + 0x60]
inc eax
movsxd rdx, eax
mov r8, qword [rbx + 0x28]
mov rcx, qword [rsp + 0x58]
call fcn.1402ba94c
mov edx, dword [rbx + 0x34]
lea rcx, [rsp + 0x58]
call fcn.1401fde50
nop
mov eax, dword [rsp + 0x50]
cmp eax, 1
jne 0x1401c4b90
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x58]
call fcn.1401ff4d0
nop
mov r8d, 1
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call fcn.1401fc8b0
movzx esi, al
cmp dword [rbp - 8], 0
jle 0x1401c4c3f
mov rcx, qword [rbp - 0x10]
jmp 0x1401c4c39
cmp eax, 2
jne 0x1401c4bc9
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x58]
call fcn.1401ff4d0
nop
mov r8d, 1
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call fcn.1401fc8b0
movzx r15d, al
cmp dword [rbp - 0x18], 0
jle 0x1401c4c3f
mov rcx, qword [rbp - 0x20]
jmp 0x1401c4c39
cmp eax, 3
jne 0x1401c4c02
lea rdx, [rbp - 0x30]
lea rcx, [rsp + 0x58]
call fcn.1401ff4d0
nop
mov r8d, 1
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call fcn.1401fc8b0
movzx r12d, al
cmp dword [rbp - 0x28], 0
jle 0x1401c4c3f
mov rcx, qword [rbp - 0x30]
jmp 0x1401c4c39
cmp eax, 5
jne 0x1401c4c3f
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x58]
call fcn.1401ff4d0
nop
mov r8d, 1
mov rdx, qword [rbp + 0x4f0]
mov rcx, rax
call fcn.1401fc8b0
movzx r13d, al
cmp dword [rbp - 0x40], 0
jle 0x1401c4c3f
mov rcx, qword [rbp - 0x48]
call fcn.1402b7350
nop
cmp dword [rsp + 0x60], 0
jle 0x1401c4c50
mov rcx, qword [rsp + 0x58]
call fcn.1402b7350
cmp byte [rbx + 0x19], 0
jne 0x1401c4c9e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1401c4c7e
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x1401c4c9e
nop dword [rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401c4c70
jmp 0x1401c4c9e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1401c4c9b
cmp rbx, qword [rax + 0x10]
jne 0x1401c4c9b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1401c4c88
mov rbx, rax
cmp rbx, qword [rdi]
lea rax, [0x140346ce0]
jne 0x1401c4b00
test sil, sil
mov r14, qword [rbp]
je 0x1401c4d4f
test r15b, r15b
je 0x1401c4d4f
test r12b, r12b
je 0x1401c4d4f
mov r12, qword [rsp + 0x70]
test r13b, r13b
je 0x1401c4d54
xor r11d, r11d
mov r8d, r11d
mov r9d, r11d
lea rdx, [r12 + 0x1008]
mov r10d, 0x1f8
nop
movzx ecx, byte [rdx]
add r11d, ecx
mov eax, ecx
xor eax, 0x55
add r8d, eax
xor ecx, 0xaa
add r9d, ecx
lea rdx, [rdx + 1]
dec r10
jne 0x1401c4cf0
cmp r11d, 0xd461
jne 0x1401c4d54
cmp r8d, 0xefdf
jne 0x1401c4d54
cmp r9d, 0x10629
jne 0x1401c4d54
mov rax, qword [r14 + 0x40]
movabs rcx, 0x1000000000
or rax, rcx
movabs rcx, 0xffffffbffffffffc
and rax, rcx
mov qword [r14 + 0x40], rax
jmp 0x1401c4d54
mov r12, qword [rsp + 0x70]
cmp dword [rbp + 0x4f8], 0
jle 0x1401c4d81
mov rcx, qword [rbp + 0x4f0]
call fcn.1402b7350
jmp 0x1401c4d81
mov r12, qword [rsp + 0x70]
mov r15d, dword [rsp + 0x48]
mov edi, 0x100
jmp 0x1401c4d8f
mov r12, qword [rsp + 0x70]
mov r15d, dword [rsp + 0x48]
mov edi, 0x100
mov r13, qword [rbp - 0x80]
cmp byte [rbp - 0x60], 0
je 0x1401c4fc2
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0xf0]
call fcn.1402bfa30
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x1401c4dd3
mov rcx, r12
mov edx, eax
nop word [rax + rax]
movzx eax, byte [rcx]
inc dword [rbp + rax*4 + 0xf0]
lea rcx, [rcx + 1]
dec rdx
jne 0x1401c4dc0
mov rbx, qword [rbp - 0x50]
mov rax, qword [rbx]
lea r9, [rsp + 0x44]
mov esi, dword [rbp - 0x38]
mov r8d, esi
mov rdx, r12
mov rcx, rbx
call qword [rax + 8]
test al, al
je 0x1401c4e4b
mov edx, dword [rsp + 0x44]
add r15d, edx
lea r8, [rbp + 0x80]
mov rcx, r12
call fcn.14018c2d0
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x1401c4e33
mov rcx, r12
mov edx, eax
nop word [rax + rax]
movzx eax, byte [rcx]
inc dword [rbp + rax*4 + 0xf0]
lea rcx, [rcx + 1]
dec rdx
jne 0x1401c4e20
mov rax, qword [rbx]
lea r9, [rsp + 0x44]
mov r8d, esi
mov rdx, r12
mov rcx, rbx
call qword [rax + 8]
test al, al
jne 0x1401c4df2
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x500]
call fcn.14018c3c0
mov r8, qword [r14 + 0x50]
test r8, r8
je 0x1401c4ece
mov rdx, qword [r8]
mov rax, qword [rdx + 8]
mov rcx, rdx
cmp byte [rax + 0x19], 0
jne 0x1401c4e8f
cmp dword [rax + 0x20], 0xf
jge 0x1401c4e83
mov rax, qword [rax + 0x10]
jmp 0x1401c4e89
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1401c4e77
cmp rcx, rdx
je 0x1401c4e9e
cmp dword [rcx + 0x20], 0xf
mov qword [rbp - 0x50], rcx
jle 0x1401c4ea2
mov qword [rbp - 0x50], rdx
lea rax, [rbp - 0x50]
mov rax, qword [rax]
cmp rax, rdx
je 0x1401c4ece
mov rcx, qword [rax + 0x28]
test rcx, rcx
je 0x1401c4ece
movups xmm0, xmmword [rbp + 0x500]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rbp + 0x510]
movups xmmword [rcx + 0x10], xmm1
jmp 0x1401c4efd
mov ecx, 0x20
call fcn.1402b2274
movups xmm0, xmmword [rbp + 0x500]
movups xmmword [rax], xmm0
movups xmm1, xmmword [rbp + 0x510]
movups xmmword [rax + 0x10], xmm1
mov r8, rax
mov edx, 0xf
mov rcx, r14
call fcn.14000b7e0
xorps xmm8, xmm8
movaps xmm7, xmm8
mov eax, r15d
xorps xmm9, xmm9
cvtsi2ss xmm9, rax
lea rbx, [rbp + 0xf0]
nop dword [rax + rax]
mov eax, dword [rbx]
xorps xmm6, xmm6
cvtsi2ss xmm6, rax
divss xmm6, xmm9
comiss xmm6, xmm8
jbe 0x1401c4f45
movaps xmm0, xmm6
call fcn.1402b7cec
mulss xmm0, xmm6
subss xmm7, xmm0
add rbx, 4
dec rdi
jne 0x1401c4f20
movaps xmm1, xmm7
mov rcx, r14
call fcn.1401c28f0
mov eax, dword [r14 + 0x40]
shr rax, 0xd
test al, 1
je 0x1401c4fc2
mov byte [rsp + 0x40], dil
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x500]
mov rdx, r14
call fcn.1401c5830
test al, al
jne 0x1401c4f9d
lea r9, [rsp + 0x40]
lea r8, [rbp + 0x500]
mov rdx, r14
mov rcx, r13
call fcn.1401c5a90
test al, al
je 0x1401c4fc2
cmp byte [rsp + 0x40], 0
je 0x1401c4fc2
mov rdx, qword [r14 + 8]
lea rcx, str.____API_RAW_DIFFER____s_r_n
call fcn.1402b9694
movabs rax, 0x800000000
or qword [r14 + 0x40], rax
mov al, 1
mov rcx, qword [rbp + 0x520]
xor rcx, rsp
call fcn.1402b6d40
lea r11, [rsp + 0x678]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret