Function at 0x140033d2c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0xf0]
sub rsp, 0xe9224dd
add rsp, 0xe9222ed
xor r14d, r14d
xor sil, sil
mov qword [rdx], r14
mov r13, rcx
cmp qword [rcx + 0x300], r14
jne 0x140033d06
test dword [rcx + 0x2d8], 0x2000
pushf
mov eax, 0x6b47d95b
sub eax, 0x30d897a1
sub eax, 0x3a6f40bb
popf
pushf
mov edi, 0x7e3b1be7
sub edi, 0x33c96c4d
xor edi, 0x13e0e805
sub edi, 0x599047a0
popf
pushf
mov edx, 0xd07a25e
add edx, 0x1ef8190e
add edx, 0x20238bfb
sub edx, 0x4c234757
popf
cmovne edi, eax
mov ecx, edi
shl rcx, 4
call fcn.1400995b0
mov rcx, rax
movaps xmm0, xmmword [0x1404a9590]
movups xmmword [rax], xmm0
lea rax, [rax + 0x10]
sub rdi, 1
jne 0x140033ce7
mov qword [r13 + 0x300], rcx
movabs rax, 0x452d2f2e5a8bc71d
xor rax, 0x511070bf
sub rax, 0x297510e
add rax, 0x34cce5a1
movabs rcx, 0x44a3ad033d39670a
sub rcx, 0x296c218b
sub rcx, 0x11fc3a87
add rcx, 0x7fffffff
add rcx, 0x4d7e526d
add rcx, qword [0x1404a84d0]
movabs rdx, 0x87cb16e635b99d09
add rdx, 0x29326a3
add rdx, 0x7bb1f631
ror rcx, 0x33
add rdx, rcx
movabs rcx, 0x698e84f74462fe4b
add rcx, 0x1bd3019b
sub rcx, 0x323cb144
sub rcx, 0x1c9ffe98
rol rdx, 0x3b
add rdx, rcx
xor ecx, ecx
xor rdx, rax
rol rdx, 4
call rdx
mov qword [rbp + 0x148], rax
mov r15, rax
test rax, rax
je 0x1400356db
mov rax, qword [0x1404a84f8]
movabs rcx, 0x5627c07c0269c56a
add rcx, 0x70359edb
xor rcx, 0x70d2373a
add rcx, 0x52e1713
xor rax, rcx
mov qword [rsp + 0x1e8], r12
ror rax, 0xd
movabs rcx, 0x8bec61246af179ca
xor rcx, 0x6844d2ef
add rcx, 0x47bd3871
add rcx, 0x7fffffff
add rcx, 0x1cad61aa
add rax, rcx
mov qword [rbp + 0xd0], r14
movabs rcx, 0x31ec16217de0cff5
xor rcx, 0x2846b0ce
sub rcx, 0xe6dc5e5
sub rcx, 0x1fd7ec82
mov edi, 0x461e7ad4
xor edi, 0x7df1e55c
xor edi, 0x5f02b4e3
sub edi, 0x64ed2b6a
xor rax, rcx
mov edx, edi
movabs rcx, 0x6f52fd821648e139
xor rcx, 0x313cdf18
add rcx, 0xe8b320c
xor rcx, 0x2afac103
sub rax, rcx
mov rcx, r15
not rax
rol rax, 0x12
call rax
lea r8, [r13 + 0x298]
mov rcx, r13
lea rdx, [rbp + 0x50]
call fcn.1400327b0
mov qword [rsp + 0x40], rax
mov r12, rax
test rax, rax
je 0x14003565c
mov rax, qword [0x1404a8510]
movabs rcx, 0xbc402ab8169ca576
add rcx, 0x3666c12b
xor rcx, 0x2bdb577a
xor rcx, 0x4695ee32
mov rdx, qword [r12]
ror rax, 0x23
add rax, rcx
movabs rcx, 0x7b8866e02b1601e7
add rcx, 0x4890dc2
add rcx, 0x658d4789
xor rax, rcx
movabs rcx, 0x4ef6ec4243ba738a
sub rcx, 0x2f6d4217
add rcx, 0x27f6e09b
xor rcx, 0x3c5ab1c
add rax, rcx
movabs rcx, 0x1bdb2c2c419f5d76
xor rcx, 0x5397257c
add rcx, 0x63a46033
xor rcx, 0x762b8c3c
ror rax, 0x3c
xor rax, rcx
mov rcx, r15
ror rax, 0x15
call rax
movabs rcx, 0xfc90c0b46ee1c29f
xor rcx, 0x416017c1
add rcx, 0x7fffffff
xor rcx, 0x79014aa8
movabs rax, 0x47345e215af9d04c
sub rax, 0xcd9f0b8
xor rax, 0x7e921d28
add rcx, qword [0x1404a8520]
mov edx, 0x3ffac254
sub edx, 0x399a61d0
add edx, 0x450b9542
sub edx, 0x4a6bf5c7
rol rcx, 4
add rax, rcx
movabs rcx, 0x80be0b820775af3d
xor rcx, 0x6ab6074d
add rcx, 0x1fb9b46f
rol rax, 0xa
xor rax, rcx
movabs rcx, 0x5575122e764a9526
sub rcx, 0x7fa49b
sub rcx, 0x4a46f2e5
add rcx, 0x2d069517
sub rax, rcx
mov rcx, r15
call rax
mov rax, qword [0x1404a8528]
movabs rcx, 0x37be70bf5f4d05b4
add rcx, 0x126432f9
add rcx, 0x526e1451
not rax
xor edx, edx
add rax, rcx
movabs rcx, 0xb68d8b3261ecbab7
sub rcx, 0x1fe010d2
add rcx, 0x935a2f8
sub rcx, 0x1999414a
rol rax, 0x3b
add rax, rcx
movabs rcx, 0x22d0c5b35900098e
add rcx, 0x114ca573
add rcx, 0x6f6d3520
rol rax, 0x3d
xor rax, rcx
movabs rcx, 0x35f04f19323dba35
add rcx, 0x36faf81f
sub rcx, 0x4abf5597
sub rax, rcx
mov rcx, r15
call rax
mov rax, qword [0x1404a8530]
movabs rcx, 0x5e5f17dc08321b0f
add rcx, 0x1e1f93d2
add rcx, 0x7fffffff
xor rcx, 0x52dcd4aa
xor rax, rcx
xor edx, edx
ror rax, 0x2d
movabs rcx, 0xcde10fc58b2e849
xor rcx, 0x5d022793
add rcx, 0x4c601b87
sub rcx, 0x516e8a2b
xor rax, rcx
movabs rcx, 0xa02bc8e55561d59
xor rcx, 0x6f2724ed
add rcx, 0x7fffffff
add rcx, 0x3597ddb8
add rax, rcx
movabs rcx, 0xface3df95283f417
add rcx, 0xe483a83
add rcx, 0x7fffffff
add rcx, 0x4b0bdfb
xor rax, rcx
mov rcx, r15
call rax
mov eax, 0x8788659
xor eax, 0x518214b6
xor eax, 0x59fa92cf
lea r9, [rsp + 0x50]
mov dword [rbp + 0x140], eax
lea rdx, [rbp + 0x140]
mov rax, qword [0x1404a8538]
movabs rcx, 0x3159fecf39da8ed6
sub rcx, 0x383e3fe8
add rcx, 0x291109a2
add rcx, 0x7fffffff
add rcx, 0x54ea2b61
rol rax, 0x14
mov r8d, edi
xor rax, rcx
movabs rcx, 0x43b6dcea4ba33720
xor rcx, 0x2b47095f
xor rcx, 0x4332c66
rol rax, 0x24
xor rax, rcx
movabs rcx, 0x74cdc3ad4e44955d
xor rcx, 0x2e59082f
add rcx, 0x7fffffff
xor rcx, 0xb4886fe
rol rax, 0x27
add rax, rcx
mov rcx, r15
rol rax, 7
call rax
mov eax, dword [rsp + 0x50]
cdq
and edx, 3
add eax, edx
sar eax, 2
inc eax
xor eax, 0x39877b80
mov dword [r13 + 0x2f4], eax
mov eax, dword [r13 + 0x2d8]
bt eax, 0xd
jae 0x140034335
mov edx, 0x69207a83
xor edx, 0x2af6e473
add edx, 0x2e05d0c4
sub edx, 0x71dc6fa4
mov dword [r12 + 0x10], 0x2f6cd5ec
sub dword [r12 + 0x10], 0x292e4005
xor dword [r12 + 0x10], 0x73ba44a8
sub dword [r12 + 0x10], 0x7584d0ef
mov ecx, 0x674901d1
sub ecx, 0x54b98e0d
xor ecx, 0x42a8dd67
sub ecx, 0x5027ade1
call fcn.1400995b0
movdqa xmm4, xmmword [0x140001bd0]
mov rcx, rax
movdqa xmm5, xmmword [0x140001be0]
mov edx, 0x62769054
sub edx, 0x1bec4b79
sub edx, 0x468a44d3
mov qword [r12 + 8], rax
nop dword [rax + rax]
lea eax, [rdx - 8]
movq xmm2, xmm5
movd xmm0, eax
lea rcx, [rcx + 0x20]
pshufd xmm0, xmm0, 0
lea eax, [rdx - 4]
paddd xmm0, xmm4
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm0, eax
pshufd xmm0, xmm0, 0
lea eax, [rdx + 4]
movq qword [rcx - 0x20], xmm3
paddd xmm0, xmm4
pshufhw xmm0, xmm0, 0xd8
movq xmm2, xmm5
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm0, edx
movq qword [rcx - 0x18], xmm3
movq xmm2, xmm5
pshufd xmm0, xmm0, 0
neg edx
add edx, 0xfffffff0
neg edx
paddd xmm0, xmm4
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movd xmm0, eax
lea eax, [rdx - 8]
pshufd xmm0, xmm0, 0
pshufd xmm3, xmm1, 0xd8
paddd xmm0, xmm4
pshufhw xmm0, xmm0, 0xd8
paddw xmm3, xmm2
movq qword [rcx - 0x10], xmm3
movq xmm2, xmm5
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movq qword [rcx - 8], xmm3
cmp eax, 0x60
jl 0x140034261
mov word [rcx], r14w
mov rax, qword [rbp + 0xd0]
jmp 0x140034c13
bt eax, 0xf
jae 0x1400346d3
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x2798fcca
xor dword [rsp + 0x30], 0x3267a79
sub dword [rsp + 0x30], 0x7b0e724
xor dword [rsp + 0x30], 0x4e3a9f6
lea rax, [rbp - 0x70]
mov dword [rsp + 0x34], 0x12a6eb1
add dword [rsp + 0x34], 0x9417653
xor dword [rsp + 0x34], 0x789c95f
mov edx, 0x585e6e2
xor edx, 0x33fc8a76
sub edx, 0x36796c85
mov qword [rbp - 0x78], rax
lea rcx, [rbp - 0x78]
mov dword [rsp + 0x38], 0x328277ae
xor dword [rsp + 0x38], 0x5c658240
xor dword [rsp + 0x38], 0x4ee7cab6
xor dword [rsp + 0x38], 0x2ad44018
movups xmmword [rbp - 0x70], xmm0
mov word [rsp + 0x3c], 0x6daf
sub word [rsp + 0x3c], 0x560d
add word [rsp + 0x3c], 0x22da
movups xmmword [rbp - 0x60], xmm0
mov byte [rsp + 0x3e], 0xe
xor byte [rsp + 0x3e], 0x1b
xor byte [rsp + 0x3e], 0x3f
add byte [rsp + 0x3e], 0xba
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], 0x46f9e033
add qword [rbp - 0x40], 0x118cbed4
add qword [rbp - 0x40], 0x39df424
xor qword [rbp - 0x40], 0x5c249324
call fcn.14000ef00
mov rdx, rax
mov rcx, r14
cmp qword [rbp - 0x40], r14
jbe 0x140034440
nop word [rax + rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rbp - 0x40]
jb 0x14003442a
lea r8, [rbp - 0x78]
mov rcx, r13
lea rdx, [rbp + 0x50]
call fcn.1400327b0
mov rcx, qword [rbp - 0x78]
lea rax, [rbp - 0x70]
cmp rcx, rax
jne 0x140034485
lea rdi, [rbp - 0x70]
xor eax, eax
mov ecx, 0xc4afc33
xor ecx, 0x1c60abd7
sub ecx, 0x8919a72
sub ecx, 0x798bd42
rep stosb byte [rdi], al
jmp 0x14003448a
call fcn.1400996a0
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x6ccfac75
xor dword [rsp + 0x30], 0x1915086d
sub dword [rsp + 0x30], 0x372d979f
lea rax, [rbp - 0x30]
mov dword [rsp + 0x34], 0x29ce3d20
xor dword [rsp + 0x34], 0x27bcea5d
xor dword [rsp + 0x34], 0x61fc30b4
sub dword [rsp + 0x34], 0x6ac4684c
mov edx, 0x5d459e2b
sub edx, 0x6faa5c9
sub edx, 0x2e5ce2a7
sub edx, 0x27ee15af
mov qword [rbp - 0x38], rax
lea rcx, [rbp - 0x38]
mov dword [rsp + 0x38], 0xb263444
add dword [rsp + 0x38], 0x513f205e
sub dword [rsp + 0x38], 0x53811d62
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp], 0x3cf94bf4
xor qword [rbp], 0x7df6e26
sub qword [rbp], 0x3b2625c6
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
call fcn.14000ef00
mov rdx, rax
mov rcx, r14
cmp qword [rbp], r14
jbe 0x14003455b
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rbp]
jb 0x140034545
lea r8, [rbp - 0x38]
mov rcx, r13
lea rdx, [rbp + 0x50]
call fcn.1400327b0
mov rcx, qword [rbp - 0x38]
lea rax, [rbp - 0x30]
cmp rcx, rax
jne 0x14003459a
lea rdi, [rbp - 0x30]
xor eax, eax
mov ecx, 0x1ed38d93
add ecx, 0x1382c878
xor ecx, 0x3256563b
rep stosb byte [rdi], al
jmp 0x14003459f
call fcn.1400996a0
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x6ed54c4e
add dword [rsp + 0x30], 0xcb82a90
xor dword [rsp + 0x30], 0x6c91c168
sub dword [rsp + 0x30], 0xa3b793d
lea rax, [rbp + 0x10]
mov dword [rsp + 0x34], 0x4b01c8cf
add dword [rsp + 0x34], 0x1de0cdd8
sub dword [rsp + 0x34], 0x81b2439
sub dword [rsp + 0x34], 0x341a412d
mov edx, 0x20392d1b
add edx, 0x670b378
add edx, 0x462b1098
xor edx, 0x6cd4f126
mov qword [rbp + 8], rax
lea rcx, [rbp + 8]
mov dword [rsp + 0x38], 0x6508a785
add dword [rsp + 0x38], 0x7d7695e
sub dword [rsp + 0x38], 0x69fae588
movups xmmword [rbp + 0x10], xmm0
mov byte [rsp + 0x3c], 7
add byte [rsp + 0x3c], 0x77
sub byte [rsp + 0x3c], 3
sub byte [rsp + 0x3c], 0x24
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x40], 0x4f937e69
sub qword [rbp + 0x40], 0x331d31f8
sub qword [rbp + 0x40], 0x18eea468
xor qword [rbp + 0x40], 0x387a804
movups xmmword [rbp + 0x30], xmm0
call fcn.14000ef00
mov rdx, rax
mov rcx, r14
cmp qword [rbp + 0x40], r14
jbe 0x14003468f
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rbp + 0x40]
jb 0x140034679
lea r8, [rbp + 8]
mov rcx, r13
lea rdx, [rbp + 0x50]
call fcn.1400327b0
mov rcx, qword [rbp + 8]
lea rax, [rbp + 0x10]
cmp rcx, rax
jne 0x1400346ce
lea rdi, [rbp + 0x10]
xor eax, eax
mov ecx, 0x6ffdf36e
sub ecx, 0xdecaf
sub ecx, 0x6ff0068f
rep stosb byte [rdi], al
jmp 0x1400346d3
call fcn.1400996a0
mov rax, qword [0x1404a8580]
movabs rcx, 0xdfb3ac710ed90f7e
add rcx, 0x51218dfb
sub rcx, 0x1394255
sub rcx, 0x3b045cde
rol rax, 0x37
movabs rdi, 0x642a7da343a6e7a1
xor rdi, 0x2b591ad1
add rdi, 0x7fffffff
xor rdi, 0x2bf2f1aa
xor rax, rdi
movabs rbx, 0x6c1b05ae24b5d751
xor rbx, 0x6ec0d538
add rbx, 0x366fbefe
add rax, rbx
xor edx, edx
rol rax, 0xf
add rax, rcx
movabs rcx, 0x3d41a26927ba4556
xor rcx, 0x66fa4386
add rcx, 0x2f71516c
add rcx, 0x7fffffff
sub rcx, 0x273b4409
ror rax, 0x3d
add rax, rcx
mov rcx, r15
call rax
mov ecx, eax
call fcn.140099990
mov rdx, rax
mov qword [r12 + 0x18], rax
mov rax, qword [0x1404a8580]
movabs rcx, 0xdfb3ac713f3f5b58
add rcx, 0x3192c7ec
sub rcx, 0x6050d347
add rcx, 0x133bae49
rol rax, 0x37
xor rax, rdi
add rax, rbx
rol rax, 0xf
add rax, rcx
movabs rcx, 0x3d41a26905a19709
xor rcx, 0x68c67145
xor rcx, 0x75807709
add rcx, 0x7fffffff
add rcx, 0x308e82ee
ror rax, 0x3d
add rax, rcx
mov rcx, r15
call rax
mov rax, qword [r12 + 0x18]
mov edx, 0x57b3929c
xor edx, 0x5e82a4b7
add edx, 0x6f42e802
xor edx, 0x78741e3d
mov eax, dword [rax + 8]
mov dword [r12 + 0x10], eax
inc eax
movsxd rdi, eax
sub rdi, 0xfffffffffffffff1
and rdi, 0xfffffffffffffff0
add rdi, rdi
mov rcx, rdi
call fcn.1400995b0
mov r8, rdi
mov qword [r12 + 8], rax
xor edx, edx
mov rcx, rax
call fcn.140099c60
mov rax, qword [r12 + 0x18]
mov rdx, qword [r12 + 8]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x1400348af
mov r9, r14
mov r10d, ecx
nop dword [rax + rax]
movzx edi, word [r9 + rax + 0x12]
movzx ecx, r14w
movzx r8d, word [r9 + rax + 0x10]
cmp r14w, di
jae 0x1400348a1
nop word [rax + rax]
lea eax, [r8 + rcx]
inc cx
mov word [rdx], ax
neg rdx
add rdx, 0xfffffffffffffffe
neg rdx
cmp cx, di
jb 0x14003487f
mov rax, qword [r12 + 0x18]
add r9, 4
sub r10, 1
jne 0x14003485b
mov rax, qword [rbp + 0xd0]
mov r8d, 0x6b70804b
sub r8d, 0x1d87126c
xor r8d, 0x4de96dde
mov ebx, r8d
cmp r8, rax
jae 0x140034c13
lea r14, [rbp + 0x88]
xor r13d, r13d
movabs rsi, 0xdfb3ac71075019d2
add rsi, 0x40f050bf
add rsi, 0x29bf6c33
sub rsi, 0x4e42d87e
movabs r12, 0x642a7da33cda015b
add r12, 0x3f63eb42
sub r12, 0x1cb2b1ac
add r12, 0x6381d1d4
nop dword [rax]
mov rax, qword [0x1404a8510]
movabs rcx, 0xbc402ab86e3a9f03
xor rcx, 0x6b0a6637
add rcx, 0x1b1ce6b5
mov rdx, qword [r14 - 0x18]
ror rax, 0x23
add rax, rcx
movabs rcx, 0x7b8866e0032e6399
add rcx, 0x42bd7cd0
xor rcx, 0x63764489
add rcx, 0x6e8eb252
xor rax, rcx
movabs rcx, 0x4ef6ec423b7a3c8b
sub rcx, 0xde529c
xor rcx, 0x51a50fd
add rax, rcx
movabs rcx, 0x1bdb2c2c4eea4b92
add rcx, 0x12f22541
sub rcx, 0x5e551cd2
ror rax, 0x3c
xor rax, rcx
mov rcx, r15
ror rax, 0x15
call rax
mov rax, qword [0x1404a8580]
movabs rcx, 0x3d41a269534c5394
sub rcx, 0x4f50c2
add rcx, 0x76791160
rol rax, 0x37
movabs rdi, 0x6c1b05ae663f8717
sub rdi, 0x4219c8c
add rdi, 0x1ec6d6dc
xor rax, r12
xor edx, edx
add rax, rdi
rol rax, 0xf
add rax, rsi
ror rax, 0x3d
add rax, rcx
mov rcx, r15
call rax
mov ecx, eax
call fcn.140099990
mov rdx, rax
mov qword [r14], rax
mov rax, qword [0x1404a8580]
movabs rcx, 0x3d41a26940c3b012
add rcx, 0x1e7f97bc
add rcx, 0x6a32cc64
rol rax, 0x37
xor rax, r12
add rax, rdi
rol rax, 0xf
add rax, rsi
ror rax, 0x3d
add rax, rcx
mov rcx, r15
call rax
mov rax, qword [r14]
mov edx, 0x31615160
xor edx, 0x1e834164
add edx, 0x3220834a
sub edx, 0x6202933e
mov edi, dword [rax + 8]
inc edi
nop
sub rdi, 0x30559e16
add rdi, 0x30559e25
and rdi, 0xfffffffffffffff0
add rdi, rdi
mov rcx, rdi
call fcn.1400995b0
mov r8, rdi
mov qword [r14 - 0x10], rax
xor edx, edx
mov rcx, rax
call fcn.140099c60
mov rax, qword [r14]
mov r10, qword [r14 - 0x10]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x140034bc5
mov rsi, r13
mov r15d, ecx
nop
movzx ecx, word [rsi + rax + 0x12]
movzx r9d, word [rsi + rax + 0x10]
cmp r13w, cx
jae 0x140034b8b
mov r11d, ecx
nop dword [rax + rax]
movsx eax, r9w
xor r8b, r8b
mov rdi, r13
movd xmm1, eax
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
test rbx, rbx
je 0x140034b72
nop dword [rax]
mov rcx, rdi
shl rcx, 5
mov rax, qword [rbp + rcx + 0x58]
movsxd rcx, dword [rbp + rcx + 0x60]
lea rdx, [rax + rcx*2]
cmp rax, rdx
jae 0x140034b5d
nop word [rax + rax]
lea rcx, [rax + 0x10]
prefetcht0 byte [rcx]
movdqa xmm0, xmm1
pcmpeqw xmm0, xmmword [rax]
pmovmskb eax, xmm0
test eax, eax
jne 0x140034b4f
mov rax, rcx
cmp rcx, rdx
jb 0x140034b23
jmp 0x140034b5d
mov r8b, 0x42
add r8b, 4
sub r8b, 0x45
mov rdi, rbx
inc rdi
cmp rdi, rbx
jb 0x140034aff
test r8b, r8b
jne 0x140034b7a
mov word [r10], r9w
sub r10, 0xfffffffffffffffe
inc r9w
sub r11, 1
jne 0x140034adb
mov rax, qword [r14]
neg rsi
add rsi, 0xfffffffffffffffc
neg rsi
sub r15, 1
jne 0x140034abb
mov r15, qword [rbp + 0x148]
movabs rsi, 0xdfb3ac712eeda9a3
add rsi, 0x1149e41c
add rsi, 0xffc8cd2
sub rsi, 0x2c771c4b
mov rax, qword [r14 - 0x10]
cmp r10, rax
je 0x140034bdf
sub r10, rax
sar r10, 1
dec r10d
mov dword [r14 - 8], r10d
mov rax, qword [rbp + 0xd0]
inc rbx
nop
add r14, 0x3bd9044f
sub r14, 0x3bd9042f
cmp rbx, rax
jb 0x140034925
mov r13, qword [rbp + 0x130]
xor sil, sil
mov r12, qword [rsp + 0x40]
xor r14d, r14d
test rax, rax
lea rcx, [rbp + 0x50]
cmove rcx, r14
je 0x140034c34
shl rax, 5
lea rdx, [rbp + 0x50]
add rdx, rax
jmp 0x140034c37
mov rdx, r14
cmp rcx, rdx
je 0x140034c73
mov eax, dword [r13 + 0x30c]
xor eax, 0x39877b80
add eax, dword [rcx + 0x10]
nop
sub rcx, 0x7e687a12
add rcx, 0x7e687a32
xor eax, 0x39877b80
cmp rcx, rdx
jne 0x140034c47
mov dword [r13 + 0x30c], eax
cmp dword [r13 + 0x2e8], 0x39877b80
jne 0x140034d4c
cmp dword [r13 + 0x2ec], 0x39877b80
jne 0x140034d4c
mov eax, dword [r13 + 0x2f0]
mov ecx, 0x51275fe5
sub ecx, 0x27193853
add ecx, 0x15f9b570
sub ecx, 0x4007dcc2
mov edx, dword [r13 + 0x30c]
xor eax, 0x39877b80
xor edx, 0x39877b80
mov dword [r13 + 0x2e8], 0x54754e62
xor dword [r13 + 0x2e8], 0x5e15e4c0
xor dword [r13 + 0x2e8], 0x3d7b386e
add dword [r13 + 0x2e8], 0x26bd8b4
imul edx, eax
mov dword [r13 + 0x2ec], 0x7c187a75
sub dword [r13 + 0x2ec], 0x74c31db0
add dword [r13 + 0x2ec], 0x32320ebb
imul edx, eax
mov eax, ecx
imul eax, ecx
cmp edx, eax
jle 0x140034d38
add ecx, ecx
cmp ecx, 0x1000
jle 0x140034d18
jmp 0x140034d4c
xor ecx, 0x39877b80
mov dword [r13 + 0x2e8], ecx
mov dword [r13 + 0x2ec], ecx
mov r14d, dword [r13 + 0x2ec]
lea r9, [rsp + 0x48]
mov ebx, dword [r13 + 0x2e8]
lea rdx, [rsp + 0x58]
xor edi, edi
mov dword [rsp + 0x58], 0x242c853f
xor dword [rsp + 0x58], 0x7093ff78
xor dword [rsp + 0x58], 0x54bf7a6f
movabs rcx, 0x9da90ba00478ee83
add rcx, 0x2eac7f19
add rcx, 0x7fffffff
xor rcx, 0x4651d168
mov dword [rsp + 0x28], edi
xorps xmm0, xmm0
mov qword [rsp + 0x7c], rdi
xor r14d, 0x39877b80
mov qword [rsp + 0x64], 0x973c783
xor qword [rsp + 0x64], 0x37cdd0e8
sub qword [rsp + 0x64], 0x34f16459
xor qword [rsp + 0x64], 0x9ecb313
mov eax, r14d
mov qword [rsp + 0x20], rdi
neg eax
xor ebx, 0x39877b80
mov dword [rsp + 0x60], eax
xor r8d, r8d
mov rax, qword [0x1404a84e0]
rol rax, 0x2d
not rax
mov dword [rsp + 0x5c], ebx
ror rax, 0x17
add rax, rcx
movabs rcx, 0x722f78be3a55c482
xor rcx, 0x21049e72
add rcx, 0x7fffffff
add rcx, 0x2f90ae05
xor rax, rcx
mov rcx, r15
ror rax, 0x2d
not rax
movdqu xmmword [rsp + 0x6c], xmm0
call rax
mov qword [rsp + 0x30], rax
mov r15, rax
test rax, rax
je 0x140035655
mov rax, qword [0x1404a8510]
movabs rcx, 0xbc402ab807d9e81f
add rcx, 0x5998f78e
sub rcx, 0x2e3b573
sub rcx, 0x3e414a51
ror rax, 0x23
mov rdx, r15
add rax, rcx
movabs rcx, 0x7b8866e073aa5e32
xor rcx, 0x11330eab
add rcx, 0x32930699
xor rax, rcx
movabs rcx, 0x4ef6ec4251913071
sub rcx, 0x7d78bde
xor rcx, 0x76381d81
add rax, rcx
movabs rcx, 0x1bdb2c2c52d8f6dc
xor rcx, 0x6025720
sub rcx, 0x51534dfb
ror rax, 0x3c
xor rax, rcx
mov rcx, qword [rbp + 0x148]
ror rax, 0x15
call rax
mov eax, dword [r13 + 0x2f4]
lea r9, [rsp + 0x40]
mov r8, r12
mov dword [rsp + 0x44], edi
mov r12, qword [rbp + 0x148]
xor eax, 0x39877b80
mov rdx, r12
mov dword [rsp + 0x40], eax
mov rcx, r13
call fcn.140036330
test al, al
je 0x1400355d4
mov rax, qword [rbp + 0xd0]
lea rdi, [rbp + 0x70]
test rax, rax
pushf
mov ecx, 0x72c0458d
sub ecx, 0x310223ee
sub ecx, 0x41be217f
popf
cmove rdi, rcx
je 0x140034f4e
shl rax, 5
lea rsi, [rbp + 0x50]
add rsi, rax
jmp 0x140034f50
xor esi, esi
cmp rdi, rsi
jae 0x140034f88
nop dword [rax]
lea r9, [rsp + 0x40]
mov r8, rdi
mov rdx, r12
mov rcx, r13
call fcn.140036330
nop
sub rdi, 0x7662ccca
add rdi, 0x7662ccea
cmp rdi, rsi
jb 0x140034f5d
mov eax, r14d
mov edi, 0x228c5438
xor edi, 0x15c94997
xor edi, 0x37451dab
imul eax, ebx
movsxd rcx, eax
mov eax, edi
mul rcx
pushf
movabs rcx, 0xffffffff0b267c16
add rcx, 0x4dea47e3
add rcx, 0x7fffffff
add rcx, 0x26ef3c07
popf
cmovb rax, rcx
mov rcx, rax
call fcn.140099540
mov r10, rax
mov rax, qword [rbp + 0x138]
mov qword [rax], r10
test r14d, r14d
jle 0x140035185
movdqa xmm2, xmmword [0x140001bf0]
lea eax, [rbx - 1]
movsxd rcx, eax
xor esi, esi
sub rdi, rcx
movsxd r13, ebx
mov r12, r10
lea r15, [rcx*4]
lea rax, [r10 + rdi*4]
mov r8, r15
mov qword [rbp + 0x138], rax
sub r12, r15
lea rax, [r13*4]
xor edx, edx
test ebx, ebx
jle 0x140035169
cmp ebx, 0x10
jb 0x140035118
mov rdi, qword [rsp + 0x48]
lea rax, [r12 + r8]
mov r9, r8
sub r9, r15
add r9, rdi
lea rcx, [r8 + rdi]
cmp rax, rcx
ja 0x140035065
lea rax, [r8 + r10]
cmp rax, r9
jae 0x14003511d
mov ecx, ebx
and ecx, 0x8000000f
jge 0x14003507a
dec ecx
or ecx, 0xfffffff0
inc ecx
mov rdi, qword [rsp + 0x48]
mov eax, ebx
sub eax, ecx
xor ecx, ecx
movsxd r11, eax
mov rax, qword [rbp + 0x138]
add rax, r8
sub rdi, r10
nop dword [rax]
movdqu xmm0, xmmword [rax + rdi - 0x10]
nop
add edx, 0x6f6afc73
sub edx, 0x6f6afc63
nop
add rcx, 0x25f02368
sub rcx, 0x25f02358
movdqu xmm1, xmmword [rax + rdi]
lea rax, [rax + 0x40]
pslld xmm0, 0x18
pslld xmm1, 0x18
orps xmm0, xmm2
orps xmm1, xmm2
movdqu xmmword [rax - 0x50], xmm0
movdqu xmm0, xmmword [rax + rdi - 0x30]
movdqu xmmword [rax - 0x40], xmm1
pslld xmm0, 0x18
orps xmm0, xmm2
movdqu xmm1, xmmword [rax + rdi - 0x20]
movdqu xmmword [rax - 0x30], xmm0
pslld xmm1, 0x18
orps xmm1, xmm2
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r11
jl 0x14003509c
cmp edx, ebx
jge 0x140035161
mov rdi, qword [rsp + 0x48]
movsxd rcx, edx
mov eax, ebx
add rcx, rsi
shl rcx, 2
sub eax, edx
mov edx, eax
nop dword [rax]
nop dword [rax + rax]
mov eax, dword [rdi + rcx]
lea rcx, [rcx + 4]
shl eax, 0x18
or eax, 0xffffff
mov dword [r10 + rcx - 4], eax
sub rdx, 1
je 0x140035161
mov rdi, qword [rsp + 0x48]
jmp 0x140035139
lea rax, [r13*4]
add r8, rax
add rsi, r13
sub r14, 1
jne 0x140035026
mov r15, qword [rsp + 0x30]
mov r13, qword [rbp + 0x130]
mov eax, dword [r13 + 0x2d8]
test al, 2
je 0x14003543e
mov r8d, dword [r13 + 0x2e8]
mov r11d, 0x24b8b91e
add r11d, 0x2c7588a6
sub r11d, 0x12b7e6f
sub r11d, 0x5002c355
mov esi, dword [r13 + 0x2ec]
xor r8d, 0x39877b80
xor esi, 0x39877b80
jle 0x1400355c5
mov r9d, esi
shl r9, 2
mov rax, r10
xor edi, edi
sub rax, r9
add r10, r9
test r8d, r8d
jle 0x14003542d
mov rbx, r10
lea rdx, [rax + 4]
sub rbx, rax
test dword [rdx + r9 - 4], 0xff000000
setne cl
test dword [rdx + r9 - 4], 0xffffff
setne al
test al, cl
je 0x140035418
test r11d, r11d
je 0x1400352c7
test dword [rdx - 4], 0xff000000
setne cl
test dword [rdx - 4], 0xffffff
setne al
test al, cl
jne 0x14003524f
mov dword [rdx - 4], 0x6c3c6912
sub dword [rdx - 4], 0x11278a72
add dword [rdx - 4], 0xa3eb2160
test edi, edi
je 0x14003528f
test dword [rdx - 8], 0xff000000
setne cl
test dword [rdx - 8], 0xffffff
setne al
test al, cl
jne 0x14003528f
mov dword [rdx - 8], 0x30399319
xor dword [rdx - 8], 0x3276421c
xor dword [rdx - 8], 0x2801452e
xor dword [rdx - 8], 0xd54e942b
lea eax, [r8 - 1]
cmp edi, eax
jge 0x1400352c7
test dword [rdx], 0xff000000
setne cl
test dword [rdx], 0xffffff
setne al
test al, cl
jne 0x1400352c7
mov dword [rdx], 0x6284e6c5
xor dword [rdx], 0x7796fc31
add dword [rdx], 0xe9ede50c
lea eax, [rsi - 1]
cmp r11d, eax
jge 0x14003538b
test dword [rbx + rdx - 4], 0xff000000
setne cl
test dword [rbx + rdx - 4], 0xffffff
setne al
test al, cl
jne 0x140035309
mov dword [rbx + rdx - 4], 0xd651985
xor dword [rbx + rdx - 4], 0x2c81eb42
add dword [rbx + rdx - 4], 0xdd1b0d39
test edi, edi
je 0x140035347
test dword [rbx + rdx - 8], 0xff000000
setne cl
test dword [rbx + rdx - 8], 0xffffff
setne al
test al, cl
jne 0x140035347
mov dword [rbx + rdx - 8], 0x679b2d3e
sub dword [rbx + rdx - 8], 0x5c9e8b01
add dword [rbx + rdx - 8], 0xf4035dc3
lea eax, [r8 - 1]
cmp edi, eax
jge 0x14003538b
test dword [rbx + rdx], 0xff000000
setne cl
test dword [rbx + rdx], 0xffffff
setne al
test al, cl
jne 0x14003538b
mov dword [rbx + rdx], 0x79939c51
add dword [rbx + rdx], 0x4749c7b
sub dword [rbx + rdx], 0x63d17c15
add dword [rbx + rdx], 0xe4c94349
test edi, edi
je 0x1400353ce
test dword [r9 + rdx - 8], 0xff000000
setne cl
test dword [r9 + rdx - 8], 0xffffff
setne al
test al, cl
jne 0x1400353ce
mov dword [r9 + rdx - 8], 0x24a19f56
add dword [r9 + rdx - 8], 0x2297a416
add dword [r9 + rdx - 8], 0xb7c6bc94
lea eax, [r8 - 1]
cmp edi, eax
jge 0x140035418
test dword [rdx + r9], 0xff000000
setne cl
test dword [rdx + r9], 0xffffff
setne al
test al, cl
jne 0x140035418
mov dword [rdx + r9], 0x33bdc1fa
xor dword [rdx + r9], 0x11d529e3
xor dword [rdx + r9], 0x38249f6b
add dword [rdx + r9], 0xe4b3888e
inc edi
neg rdx
add rdx, 0xfffffffffffffffc
neg rdx
cmp edi, r8d
jl 0x1400351f5
inc r11d
cmp r11d, esi
jl 0x1400351d7
jmp 0x1400355c5
test al, 1
je 0x1400355c5
mov r8d, dword [r13 + 0x2e8]
mov r11d, 0x43031d47
sub r11d, 0x30cdcf70
add r11d, 0x593b7887
sub r11d, 0x6b70c65e
mov ebx, dword [r13 + 0x2ec]
xor r8d, 0x39877b80
xor ebx, 0x39877b80
jle 0x1400355c5
nop dword [rax]
nop dword [rax + rax]
xor edi, edi
lea rsi, [r10 + rbx*4]
test r8d, r8d
jle 0x1400355b6
mov r9, rsi
lea rdx, [r10 + 4]
sub r9, r10
nop dword [rax]
test dword [rdx - 4], 0xff000000
setne cl
test dword [rdx - 4], 0xffffff
setne al
test al, cl
je 0x1400355a7
lea eax, [rbx - 1]
cmp r11d, eax
jge 0x140035569
test dword [r9 + rdx - 4], 0xff000000
setne cl
test dword [r9 + rdx - 4], 0xffffff
setne al
test al, cl
jne 0x14003551a
mov dword [r9 + rdx - 4], 0x3d52f662
sub dword [r9 + rdx - 4], 0x8b9874b
add dword [r9 + rdx - 4], 0x3d7cedc8
add dword [r9 + rdx - 4], 0x8ce9a321
lea eax, [r8 - 1]
cmp edi, eax
jge 0x140035569
test dword [r9 + rdx], 0xff000000
setne cl
test dword [r9 + rdx], 0xffffff
setne al
test al, cl
jne 0x140035575
mov dword [r9 + rdx], 0x3d897b5c
xor dword [r9 + rdx], 0x723b0bc0
xor dword [r9 + rdx], 0x6a5db2c5
add dword [r9 + rdx], 0xd9103da7
jmp 0x140035575
lea eax, [r8 - 1]
cmp edi, eax
jge 0x1400355a7
test dword [rdx], 0xff000000
setne cl
test dword [rdx], 0xffffff
setne al
test al, cl
jne 0x1400355a7
mov dword [rdx], 0x6e2730cc
sub dword [rdx], 0x3850c49e
xor dword [rdx], 0x27373067
xor dword [rdx], 0xede15c49
inc edi
add rdx, 4
cmp edi, r8d
jl 0x1400354ae
inc r11d
mov r10, rsi
cmp r11d, ebx
jl 0x14003548e
mov sil, 0x3a
xor sil, 0x4c
sub sil, 0x60
xor sil, 0x17
mov rdx, qword [0x1404a8568]
movabs rcx, 0x33a1b1bf53bf920a
sub rcx, 0x2b542042
xor rcx, 0x20dbb1c5
add rcx, 0x69ec4789
xor rdx, rcx
movabs rcx, 0xf1807b1479c11548
sub rcx, 0x51914865
add rcx, 0x195119b6
sub rcx, 0x2f6780cf
not rdx
rol rdx, 0xe
add rdx, rcx
movabs rcx, 0x5f26c625688360d6
xor rcx, 0x15caf547
sub rcx, 0xef81478
xor rcx, 0x18aed66a
ror rdx, 0x30
add rdx, rcx
mov rcx, r15
rol rdx, 0x1b
call rdx
mov r15, qword [rbp + 0x148]
mov rax, qword [0x1404a8570]
movabs rdx, 0x193eb06b28fd7dfe
add rdx, 0x337ea614
add rdx, 0x75fbcc73
rol rax, 0xc
mov rcx, r15
add rdx, rax
movabs rax, 0x687a613a1b7b814f
xor rax, 0x25cb2247
sub rax, 0x2286ea40
add rax, 0x2162e06a
rol rdx, 0x3b
add rdx, rax
movabs rax, 0x68adae1f22981b49
add rax, 0x1b7b1f14
xor rax, 0x1e2749de
xor rdx, rax
rol rdx, 0x2e
not rdx
call rdx
lea rcx, [rbp + 0x50]
call fcn.1400314e0
mov r12, qword [rsp + 0x1e8]
movzx eax, sil
sub rsp, 0x7e357cac
add rsp, 0x7e357e9c
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret