Function at 0x140035262
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0xf8]
sub rsp, 0x1f8
xor r15d, r15d
xor r13b, r13b
mov qword [rdx], r15
mov r14, rcx
cmp qword [rcx + 0x300], r15
jne 0x14003523c
test dword [rcx + 0x2d8], 0x2000
lea edx, [r15 + 0x10]
pushf
mov eax, 0x3ec8e8fb
sub eax, 0x18fd5fee
add eax, 0x23b4798a
sub eax, 0x49800198
popf
pushf
mov edi, 0x814c827
xor edi, 0x2b3fd1a7
xor edi, 0x540126d7
sub edi, 0x77293f58
popf
cmovne edi, eax
mov ecx, edi
shl rcx, 4
call fcn.140098550
mov rcx, rax
movaps xmm0, xmmword [0x1404a3550]
movups xmmword [rax], xmm0
lea rax, [rax + 0x10]
sub rdi, 1
jne 0x14003521d
mov qword [r14 + 0x300], rcx
mov rax, qword [0x1404a2010]
movabs rcx, 0xda3649892d07c74a
xor rcx, 0x714c173
add rcx, 0x20c552e2
add rcx, 0x7fffffff
add rcx, 0x3211d7ca
ror rax, 3
xor rax, rcx
movabs rcx, 0x1dff3a7222c52854
add rcx, 0x5baf4a01
sub rcx, 0x6c41e273
add rcx, 0x7fffffff
sub rcx, 0x1187ab9b
sub rax, rcx
xor ecx, ecx
not rax
ror rax, 0x25
call rax
mov qword [rbp + 0x148], rax
mov rdi, rax
test rax, rax
je 0x14003681e
mov rax, qword [0x1404a2038]
movabs rcx, 0x64a661003444eb1c
add rcx, 0x3ab5c81b
sub rcx, 0x1cb57ab5
xor rcx, 0x3adb34b3
xor rax, rcx
mov qword [rsp + 0x1f0], rsi
movabs rcx, 0x125c64c428c9be9c
sub rcx, 0x133682d7
xor rcx, 0x30e2f0f
mov qword [rsp + 0x1e8], r12
add rax, rcx
mov qword [rbp + 0xd0], r15
movabs rcx, 0x3bb861044965388b
sub rcx, 0x11c9d7a1
sub rcx, 0x1a438e2a
add rcx, 0x7fffffff
add rcx, 0x5e04991a
mov esi, 0x42921365
xor esi, 0xb20d626
sub esi, 0x429c949b
sub esi, 0x71630a7
xor rax, rcx
mov edx, esi
not rax
mov rcx, rdi
call rax
lea r8, [r14 + 0x298]
mov rcx, r14
lea rdx, [rbp + 0x50]
call fcn.140033bd0
mov qword [rbp + 8], rax
mov r12, rax
test rax, rax
je 0x14003677b
mov rax, qword [0x1404a2050]
movabs rcx, 0xc44beb4540e141ea
xor rcx, 0x38726172
sub rcx, 0x6b8f9423
mov rdx, qword [r12]
ror rax, 0xc
xor rax, rcx
movabs rcx, 0x7c11e0c70d31ec8f
add rcx, 0x2f1a2fab
add rcx, 0x7fffffff
add rcx, 0x2f1cdc22
ror rax, 0x10
xor rax, rcx
movabs rcx, 0x342ef7d5e2c5b9e
xor rcx, 0x6fcf7006
sub rcx, 0x2fc2aaf0
add rax, rcx
mov rcx, rdi
call rax
mov rax, qword [0x1404a2060]
movabs rcx, 0x6c0b2d4135987c3f
sub rcx, 0x25e55722
xor rcx, 0x744799c9
sub rcx, 0x7a3f0afa
xor rax, rcx
mov edx, 0x350f9577
xor edx, 0x5ef53e4a
sub edx, 0x28e3c7d6
xor edx, 0x43e91c98
movabs rcx, 0x502f4c5550d217f2
sub rcx, 0x1358d271
add rcx, 0x7fffffff
xor rcx, 0x611058e8
add rax, rcx
movabs rcx, 0x1dd0453e317485ae
add rcx, 0x4e459e6c
sub rcx, 0x1e72ed19
sub rcx, 0x3d8b8066
xor rax, rcx
mov rcx, rdi
not rax
call rax
movabs rcx, 0xffbdd4c757b3549e
add rcx, 0xf412221
add rcx, 0x7fffffff
sub rcx, 0x492ccea
movabs rax, 0x40169c4f68dffb7b
sub rax, 0x3ccda113
add rax, 0x436a4dc0
add rcx, qword [0x1404a2068]
xor edx, edx
ror rcx, 0x21
add rax, rcx
movabs rcx, 0x382a4c88505170fc
xor rcx, 0xda5d330
xor rcx, 0x31a4e2c4
add rcx, 0x61f65eea
not rax
add rax, rcx
mov rcx, rdi
call rax
mov rax, qword [0x1404a2070]
movabs rcx, 0x477517fe3c7921eb
sub rcx, 0x35f074bf
add rcx, 0x74d81042
sub rcx, 0x7a997870
xor rax, rcx
xor edx, edx
ror rax, 3
movabs rcx, 0x7c5c1eef2be532df
xor rcx, 0x2ba7b14b
add rcx, 0x3bad2ac3
add rax, rcx
mov rcx, rdi
not rax
rol rax, 0x31
call rax
mov eax, 0xd19fecb
xor eax, 0x787edfaf
sub eax, 0x75672144
lea r9, [rbp]
mov dword [rbp + 0x140], eax
lea rdx, [rbp + 0x140]
mov rax, qword [0x1404a2078]
movabs rcx, 0xaa3b30db3ee59ebe
sub rcx, 0x1f586867
xor rcx, 0x54592d3e
xor rax, rcx
mov r8d, esi
movabs rcx, 0x7677d17d74f6f5f8
sub rcx, 0x3224e0d7
add rcx, 0x20120975
xor rcx, 0x48469004
sub rax, rcx
mov rcx, rdi
rol rax, 0x20
call rax
mov eax, dword [rbp]
cdq
and edx, 3
add eax, edx
sar eax, 2
inc eax
xor eax, 0x35cb7a53
mov dword [r14 + 0x2f4], eax
mov eax, dword [r14 + 0x2d8]
bt eax, 0xd
jae 0x140035652
mov ecx, 0x387a8cc2
add ecx, 0x3664c55a
sub ecx, 0x6edf515a
mov dword [r12 + 0x10], 0x4ac2896a
xor dword [r12 + 0x10], 0xa77dfac
sub dword [r12 + 0x10], 0x25b524d3
xor dword [r12 + 0x10], 0x1b003193
call fcn.1400984e0
mov rdx, rax
mov qword [r12 + 8], rax
mov ecx, r15d
nop dword [rax]
nop word [rax + rax]
lea eax, [rcx + 0x20]
inc ecx
mov word [rdx], ax
lea rdx, [rdx + 2]
cmp ecx, 0x60
jl 0x14003562d
mov word [rdx], r15w
mov rax, qword [rbp + 0xd0]
jmp 0x140035e8c
bt eax, 0xf
jae 0x140035a27
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x46e44f0c
xor dword [rsp + 0x30], 0x6352c0d6
add dword [rsp + 0x30], 0x53f0fbd7
sub dword [rsp + 0x30], 0x190715ef
lea rcx, [rsp + 0x48]
mov dword [rsp + 0x34], 0x53737fe9
add dword [rsp + 0x34], 0x92c1833
add dword [rsp + 0x34], 0x180cd7c4
lea rdx, [rsp + 0x48]
mov dword [rsp + 0x38], 0xf0b21fd
sub dword [rsp + 0x38], 0xae94191
add dword [rsp + 0x38], 0x7176d236
sub dword [rsp + 0x38], 0x1fe75a7
mov word [rsp + 0x3c], 0x2518
add word [rsp + 0x3c], 0x1ca7
xor word [rsp + 0x3c], 0x75fe
xor word [rsp + 0x3c], 0x4d86
mov eax, 0x573399a0
sub eax, 0x29c9ad74
xor eax, 0x2d69ec23
mov byte [rsp + 0x3e], 0x6f
xor byte [rsp + 0x3e], 0xc
sub byte [rsp + 0x3e], 0x1e
add byte [rsp + 0x3e], 0x65
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x78], rax
movups xmmword [rsp + 0x48], xmm0
movups xmmword [rsp + 0x58], xmm0
movups xmmword [rsp + 0x68], xmm0
cmp rcx, rdx
je 0x14003572c
call fcn.140098620
mov rax, qword [rsp + 0x78]
lea rdx, [rsp + 0x48]
xorps xmm0, xmm0
mov qword [rsp + 0x40], rdx
mov rcx, r15
movups xmmword [rsp + 0x48], xmm0
movups xmmword [rsp + 0x58], xmm0
movups xmmword [rsp + 0x68], xmm0
test rax, rax
je 0x14003576e
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rsp + 0x78]
jb 0x140035757
lea r8, [rsp + 0x40]
mov rcx, r14
lea rdx, [rbp + 0x50]
call fcn.140033bd0
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x48]
cmp rcx, rax
jne 0x1400357b1
lea rdi, [rsp + 0x48]
xor eax, eax
mov ecx, 0x16f09eba
add ecx, 0x66f748d0
sub ecx, 0x7de7e75a
rep stosb byte [rdi], al
jmp 0x1400357b6
call fcn.140098620
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0xe7a4fb4
sub dword [rsp + 0x30], 0x6d89f1
add dword [rsp + 0x30], 0x66f826bf
sub dword [rsp + 0x30], 0x2d219cc0
lea rcx, [rbp - 0x78]
mov dword [rsp + 0x34], 0x5a9ca530
sub dword [rsp + 0x34], 0xf793d89
sub dword [rsp + 0x34], 0x26cbbf70
xor dword [rsp + 0x34], 0x59d394f1
lea rdx, [rbp - 0x78]
mov dword [rsp + 0x38], 0x479810eb
add dword [rsp + 0x38], 0x1730113
add dword [rsp + 0x38], 0x289f62fd
mov qword [rbp - 0x80], rcx
mov eax, 0x3e88d556
sub eax, 0x10322320
sub eax, 0x2e56b22a
mov qword [rbp - 0x48], rax
movups xmmword [rbp - 0x78], xmm0
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
cmp rcx, rdx
je 0x14003584e
call fcn.140098620
mov rax, qword [rbp - 0x48]
lea rdx, [rbp - 0x78]
xorps xmm0, xmm0
mov qword [rbp - 0x80], rdx
mov rcx, r15
movups xmmword [rbp - 0x78], xmm0
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
test rax, rax
je 0x140035896
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rbp - 0x48]
jb 0x140035880
lea r8, [rbp - 0x80]
mov rcx, r14
lea rdx, [rbp + 0x50]
call fcn.140033bd0
mov rcx, qword [rbp - 0x80]
lea rax, [rbp - 0x78]
cmp rcx, rax
jne 0x1400358d5
lea rdi, [rbp - 0x78]
xor eax, eax
mov ecx, 0x88e4bc3
xor ecx, 0x483c2586
sub ecx, 0x40b26e15
rep stosb byte [rdi], al
jmp 0x1400358da
call fcn.140098620
xorps xmm0, xmm0
mov dword [rsp + 0x30], 0x229f7a98
add dword [rsp + 0x30], 0x4f65e268
xor dword [rsp + 0x30], 0x5f3d09ae
xor dword [rsp + 0x30], 0x5897296c
lea rcx, [rbp - 0x38]
mov dword [rsp + 0x34], 0x530ce3bc
xor dword [rsp + 0x34], 0x376ac98c
sub dword [rsp + 0x34], 0x49abd85e
xor dword [rsp + 0x34], 0x4f592328
lea rdx, [rbp - 0x38]
mov dword [rsp + 0x38], 0x22a19656
add dword [rsp + 0x38], 0x5a10d71d
sub dword [rsp + 0x38], 0xb172877
add dword [rsp + 0x38], 0xa1023e4
mov byte [rsp + 0x3c], 0x23
add byte [rsp + 0x3c], 0x42
sub byte [rsp + 0x3c], 3
add byte [rsp + 0x3c], 0x8a
mov eax, 0x336df14e
xor eax, 0x239e80d9
sub eax, 0x10f3718a
mov qword [rbp - 0x40], rcx
mov qword [rbp - 8], rax
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
movups xmmword [rbp - 0x18], xmm0
cmp rcx, rdx
je 0x14003598e
call fcn.140098620
mov rax, qword [rbp - 8]
lea rdx, [rbp - 0x38]
xorps xmm0, xmm0
mov qword [rbp - 0x40], rdx
mov rcx, r15
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
movups xmmword [rbp - 0x18], xmm0
test rax, rax
je 0x1400359d6
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rsp + rcx + 0x30]
mov word [rdx + rcx*2], ax
inc rcx
cmp rcx, qword [rbp - 8]
jb 0x1400359c0
lea r8, [rbp - 0x40]
mov rcx, r14
lea rdx, [rbp + 0x50]
call fcn.140033bd0
mov rcx, qword [rbp - 0x40]
lea rax, [rbp - 0x38]
cmp rcx, rax
jne 0x140035a1b
lea rdi, [rbp - 0x38]
xor eax, eax
mov ecx, 0x61965bd0
add ecx, 0x19aa5795
sub ecx, 0x73c1521e
sub ecx, 0x77f6117
rep stosb byte [rdi], al
jmp 0x140035a20
call fcn.140098620
mov rdi, qword [rbp + 0x148]
mov rax, qword [0x1404a20c0]
movabs rbx, 0x64f672d77ebd1b37
xor rbx, 0x7550442c
xor rbx, 0x41a3b505
add rbx, 0x7fffffff
sub rbx, 0x42ca2813
ror rax, 0x2c
movabs rsi, 0x3e2181b02cb7985
add rsi, 0x72c2ec29
sub rsi, 0x62a2c63b
add rsi, 0x7fffffff
sub rsi, 0x10a2b2ba
xor rax, rbx
xor edx, edx
ror rax, 0x27
mov rcx, rdi
xor rax, rsi
not rax
call rax
mov ecx, eax
call fcn.140098900
mov rdx, rax
mov qword [r12 + 0x18], rax
mov rax, qword [0x1404a20c0]
mov rcx, rdi
ror rax, 0x2c
xor rax, rbx
ror rax, 0x27
xor rax, rsi
not rax
call rax
mov rax, qword [r12 + 0x18]
mov eax, dword [rax + 8]
mov dword [r12 + 0x10], eax
inc eax
movsxd rcx, eax
mov eax, 0x1faa9513
sub eax, 0x163684c3
xor eax, 0x9741052
mul rcx
pushf
movabs rcx, 0xffffffff5d598ca3
sub rcx, 0x3fd93c2d
add rcx, 0x7fffffff
add rcx, 0x627faf8a
popf
cmovo rax, rcx
mov rcx, rax
call fcn.1400984e0
mov qword [r12 + 8], rax
mov rdx, rax
mov rax, qword [r12 + 0x18]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x140035b95
mov r9, r15
mov r10d, ecx
movzx edi, word [rax + r9 + 0x12]
movzx ecx, r15w
movzx r8d, word [rax + r9 + 0x10]
cmp r15w, di
jae 0x140035b75
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 0x140035b53
mov rax, qword [r12 + 0x18]
nop
sub r9, 0x452493e2
add r9, 0x452493e6
sub r10, 1
jne 0x140035b2f
mov rdi, qword [rbp + 0x148]
mov r8d, 0x5cb09756
add r8d, 0x101e06d6
sub r8d, 0x6cce9e2b
mov word [rdx], r15w
mov rax, qword [rbp + 0xd0]
mov esi, r8d
cmp r8, rax
jae 0x140035e8c
lea r13, [rbp + 0x88]
movabs r14, 0x3e2181b49fea849
xor r14, 0x149906b1
sub r14, 0x61f2d
add r14, 0x24e75ced
mov rax, qword [0x1404a2050]
movabs rcx, 0xc44beb453e4f0fb5
sub rcx, 0x1c749f34
add rcx, 0x332a075c
sub rcx, 0x4800eb68
mov rdx, qword [r13 - 0x18]
ror rax, 0xc
xor rax, rcx
movabs rcx, 0x7c11e0c721a4bf72
sub rcx, 0x1900b246
add rcx, 0x198b5578
add rcx, 0x7fffffff
xor rcx, 0x49479af8
ror rax, 0x10
xor rax, rcx
movabs rcx, 0x342ef7d57e51cdb
sub rcx, 0x171563bc
sub rcx, 0x3eaf3877
add rax, rcx
mov rcx, rdi
call rax
mov rax, qword [0x1404a20c0]
xor edx, edx
ror rax, 0x2c
mov rcx, rdi
xor rax, rbx
ror rax, 0x27
xor rax, r14
not rax
call rax
mov ecx, eax
call fcn.140098900
mov rdx, rax
mov qword [r13], rax
mov rax, qword [0x1404a20c0]
mov rcx, rdi
ror rax, 0x2c
xor rax, rbx
ror rax, 0x27
xor rax, r14
not rax
call rax
mov rax, qword [r13]
nop
movabs rcx, 0xffffffff3957b856
add rcx, 0x52ed463
add rcx, 0x7fffffff
add rcx, 0x41797347
mov edx, dword [rax + 8]
mov eax, 0x6df0834e
sub eax, 0x3fcdb850
sub eax, 0x2e22cafc
inc edx
mul rdx
cmovo rax, rcx
mov rcx, rax
call fcn.1400984e0
mov qword [r13 - 0x10], rax
mov rbx, rax
mov rax, qword [r13]
mov ecx, dword [rax + 0xc]
test ecx, ecx
je 0x140035e27
xor edx, edx
mov qword [rsp + 0x30], rcx
mov r12d, edx
nop dword [rax]
nop dword [rax + rax]
movzx r14d, word [r12 + rax + 0x12]
movzx r11d, dx
movzx r15d, word [r12 + rax + 0x10]
cmp dx, r14w
jae 0x140035de5
nop word [rax + rax]
xor r10b, r10b
lea edi, [r15 + r11]
test rsi, rsi
je 0x140035dc5
lea r8, [rbp + 0x60]
mov r9, rsi
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r8 - 8]
movsxd rcx, dword [r8]
lea rdx, [rax + rcx*2]
cmp rax, rdx
je 0x140035da3
cmp word [rax], di
je 0x140035d98
add rax, 2
cmp rax, rdx
jne 0x140035d7d
jmp 0x140035da3
mov r10b, 0x37
sub r10b, 0xb
sub r10b, 0x2b
nop
add r8, 0x2623af18
sub r8, 0x2623aef8
sub r9, 1
jne 0x140035d69
test r10b, r10b
jne 0x140035dcc
mov word [rbx], di
sub rbx, 0xfffffffffffffffe
inc r11w
cmp r11w, r14w
jb 0x140035d45
mov rax, qword [r13]
xor edx, edx
mov rcx, qword [rsp + 0x30]
neg r12
add r12, 0xfffffffffffffffc
neg r12
sub rcx, 1
mov qword [rsp + 0x30], rcx
jne 0x140035d21
mov rdi, qword [rbp + 0x148]
xor r15d, r15d
movabs r14, 0x3e2181b0c88727f
xor r14, 0x4bd8e373
add r14, 0x12e2acda
add r14, 0x2815aed2
mov word [rbx], r15w
mov rax, qword [r13 - 0x10]
cmp rbx, rax
je 0x140035e44
sub rbx, rax
sar rbx, 1
dec ebx
mov dword [r13 - 8], ebx
mov rax, qword [rbp + 0xd0]
inc rsi
nop
sub r13, 0x18e90e6a
add r13, 0x18e90e8a
movabs rbx, 0x64f672d754172b3c
xor rbx, 0x3246d06a
add rbx, 0x2132c6b4
cmp rsi, rax
jb 0x140035be6
mov r14, qword [rbp + 0x130]
xor r13b, r13b
mov r12, qword [rbp + 8]
test rax, rax
lea rcx, [rbp + 0x50]
cmove rcx, r15
je 0x140035ead
shl rax, 5
lea rdx, [rbp + 0x50]
add rdx, rax
jmp 0x140035eb0
mov rdx, r15
cmp rcx, rdx
je 0x140035ef6
mov eax, dword [r14 + 0x30c]
nop word [rax + rax]
xor eax, 0x35cb7a53
add eax, dword [rcx + 0x10]
nop
sub rcx, 0x7df19b74
add rcx, 0x7df19b94
xor eax, 0x35cb7a53
cmp rcx, rdx
jne 0x140035eca
mov dword [r14 + 0x30c], eax
cmp dword [r14 + 0x2e8], 0x35cb7a53
jne 0x140035fc4
cmp dword [r14 + 0x2ec], 0x35cb7a53
jne 0x140035fc4
mov eax, dword [r14 + 0x2f0]
mov ecx, 0x3f75f5e3
xor ecx, 0x65d33567
sub ecx, 0x18de8ba8
sub ecx, 0x41c8349c
mov edx, dword [r14 + 0x30c]
xor eax, 0x35cb7a53
xor edx, 0x35cb7a53
mov dword [r14 + 0x2e8], 0x55ba9071
xor dword [r14 + 0x2e8], 0x20b211a
sub dword [r14 + 0x2e8], 0x21e64718
imul edx, eax
mov dword [r14 + 0x2ec], 0x59688d73
sub dword [r14 + 0x2ec], 0x36a6e3a4
add dword [r14 + 0x2ec], 0x1309c084
imul edx, eax
mov eax, ecx
imul eax, ecx
cmp edx, eax
jle 0x140035fb0
add ecx, ecx
cmp ecx, 0x1000
jle 0x140035f90
jmp 0x140035fc4
xor ecx, 0x35cb7a53
mov dword [r14 + 0x2e8], ecx
mov dword [r14 + 0x2ec], ecx
mov esi, dword [r14 + 0x2ec]
lea r9, [rbp + 0x10]
mov ebx, dword [r14 + 0x2e8]
lea rdx, [rbp + 0x18]
movabs rcx, 0x554391913c8b5f2a
sub rcx, 0x2cae559
sub rcx, 0x2a8de5aa
mov dword [rsp + 0x28], r15d
xorps xmm0, xmm0
mov qword [rbp + 0x3c], r15
xor esi, 0x35cb7a53
mov dword [rbp + 0x18], 0x1e13705f
xor dword [rbp + 0x18], 0x59a602a2
xor dword [rbp + 0x18], 0x2f2143ac
sub dword [rbp + 0x18], 0x68943129
mov eax, esi
mov qword [rbp + 0x24], 0x6317ead1
sub qword [rbp + 0x24], 0x4ff2c76c
sub qword [rbp + 0x24], 0x13052364
neg eax
mov qword [rsp + 0x20], r15
mov dword [rbp + 0x20], eax
xor ebx, 0x35cb7a53
mov rax, qword [0x1404a2020]
xor r8d, r8d
rol rax, 0x15
add rax, rcx
mov dword [rbp + 0x1c], ebx
movabs rcx, 0x7480270a52a03314
sub rcx, 0x2852d52f
add rcx, 0x75c7e408
xor rax, rcx
mov rcx, rdi
rol rax, 0x17
movdqu xmmword [rbp + 0x2c], xmm0
call rax
mov r15, rax
test rax, rax
je 0x14003677b
mov rax, qword [0x1404a2050]
movabs rcx, 0xc44beb45053cd5b2
add rcx, 0x13ed4d27
sub rcx, 0xc269664
ror rax, 0xc
mov rdx, r15
xor rax, rcx
movabs rcx, 0x7c11e0c740a99a28
add rcx, 0x20776589
add rcx, 0x7fffffff
add rcx, 0xa47f8ab
ror rax, 0x10
xor rax, rcx
movabs rcx, 0x342ef7d59d9bd55
xor rcx, 0x55e0c487
add rcx, 0x6d6e5adc
sub rcx, 0x77875406
add rax, rcx
mov rcx, rdi
call rax
mov eax, dword [r14 + 0x2f4]
lea r9, [rbp + 0x130]
xor eax, 0x35cb7a53
mov dword [rbp + 0x134], 0x1dc4403b
xor dword [rbp + 0x134], 0x2649da99
sub dword [rbp + 0x134], 0xdf8888e
sub dword [rbp + 0x134], 0x2d951214
mov r8, r12
mov dword [rbp + 0x130], eax
mov rdx, rdi
mov rcx, r14
call fcn.140037360
test al, al
je 0x1400366f8
mov rax, qword [rbp + 0xd0]
lea rdi, [rbp + 0x70]
mov r12, qword [rbp + 0x148]
test rax, rax
pushf
mov ecx, 0x6e5d1eea
sub ecx, 0x57973340
sub ecx, 0x16c5eb8a
popf
cmove rdi, rcx
nop dword [rax]
test rax, rax
je 0x1400361dc
shl rax, 5
lea rax, [rbp + rax + 0x50]
cmp rdi, rax
jae 0x1400361dc
lea r9, [rbp + 0x130]
mov r8, rdi
mov rdx, r12
mov rcx, r14
call fcn.140037360
mov rax, qword [rbp + 0xd0]
nop
add rdi, 0x49119284
sub rdi, 0x49119264
jmp 0x140036191
mov eax, esi
imul eax, ebx
movsxd rcx, eax
mov eax, 0x570927e1
add eax, 0xf62dff
sub eax, 0x57ff55dc
mul rcx
pushf
movabs rcx, 0xffffffff6868a567
sub rcx, 0x8b2e155
xor rcx, 0x1f642096
add rcx, 0x7fffffff
add rcx, 0x3f2e1b7c
popf
cmovo rax, rcx
mov rcx, rax
call fcn.1400984e0
mov r10, rax
mov rax, qword [rbp + 0x138]
mov qword [rax], r10
test esi, esi
jle 0x14003628d
xor r8d, r8d
movsxd r11, ebx
shl r11, 2
mov r9d, esi
test ebx, ebx
jle 0x140036280
mov rdx, r8
mov edi, ebx
nop
mov rax, qword [rbp + 0x10]
lea rdx, [rdx + 4]
mov ecx, dword [rdx + rax - 4]
shl ecx, 0x18
or ecx, 0xffffff
mov dword [r10 + rdx - 4], ecx
sub rdi, 1
jne 0x14003625c
add r8, r11
sub r9, 1
jne 0x14003624e
mov eax, dword [r14 + 0x2d8]
test al, 2
je 0x140036568
mov r8d, dword [r14 + 0x2e8]
mov r11d, 0x30a95e39
xor r11d, 0x542a21a5
sub r11d, 0x64837f9c
mov esi, dword [r14 + 0x2ec]
xor r8d, 0x35cb7a53
xor esi, 0x35cb7a53
jle 0x1400366e6
mov r9d, esi
shl r9, 2
nop word [rax + rax]
mov rax, r10
xor edi, edi
sub rax, r9
add r10, r9
test r8d, r8d
jle 0x140036557
mov rbx, r10
lea rdx, [rax + 4]
sub rbx, rax
nop
test dword [rdx + r9 - 4], 0xff000000
setne cl
test dword [rdx + r9 - 4], 0xffffff
setne al
test al, cl
je 0x14003653d
test r11d, r11d
je 0x1400363db
test dword [rdx - 4], 0xff000000
setne cl
test dword [rdx - 4], 0xffffff
setne al
test al, cl
jne 0x140036363
mov dword [rdx - 4], 0x2eb90d3c
add dword [rdx - 4], 0x20c6d054
sub dword [rdx - 4], 0x38215421
xor dword [rdx - 4], 0xe85e896f
test edi, edi
je 0x1400363a3
test dword [rdx - 8], 0xff000000
setne cl
test dword [rdx - 8], 0xffffff
setne al
test al, cl
jne 0x1400363a3
mov dword [rdx - 8], 0x45031d9a
xor dword [rdx - 8], 0x3daaf1ef
sub dword [rdx - 8], 0x4cebaf21
xor dword [rdx - 8], 0xd4be3d54
lea eax, [r8 - 1]
cmp edi, eax
jge 0x1400363db
test dword [rdx], 0xff000000
setne cl
test dword [rdx], 0xffffff
setne al
test al, cl
jne 0x1400363db
mov dword [rdx], 0x56c1ad22
xor dword [rdx], 0x7ebc47fb
add dword [rdx], 0xd6821527
lea eax, [rsi - 1]
cmp r11d, eax
jge 0x1400364a7
test dword [rdx + rbx - 4], 0xff000000
setne cl
test dword [rdx + rbx - 4], 0xffffff
setne al
test al, cl
jne 0x14003641d
mov dword [rdx + rbx - 4], 0x421086e2
sub dword [rdx + rbx - 4], 0x385f83ce
xor dword [rdx + rbx - 4], 0xf6b10314
test edi, edi
je 0x140036463
test dword [rdx + rbx - 8], 0xff000000
setne cl
test dword [rdx + rbx - 8], 0xffffff
setne al
test al, cl
jne 0x140036463
mov dword [rdx + rbx - 8], 0x6350284f
add dword [rdx + rbx - 8], 0xed5914
xor dword [rdx + rbx - 8], 0xe652c14
xor dword [rdx + rbx - 8], 0x9558ad77
lea eax, [r8 - 1]
cmp edi, eax
jge 0x1400364a7
test dword [rbx + rdx], 0xff000000
setne cl
test dword [rbx + rdx], 0xffffff
setne al
test al, cl
jne 0x1400364a7
mov dword [rbx + rdx], 0x14fd3e9e
add dword [rbx + rdx], 0x2d5730
xor dword [rbx + rdx], 0x1ee756f1
add dword [rbx + rdx], 0xf3323cc1
test edi, edi
je 0x1400364f3
test dword [r9 + rdx - 8], 0xff000000
setne cl
test dword [r9 + rdx - 8], 0xffffff
setne al
test al, cl
jne 0x1400364f3
mov dword [r9 + rdx - 8], 0x264df946
xor dword [r9 + rdx - 8], 0x5d9e1c10
sub dword [r9 + rdx - 8], 0x9b62181
add dword [r9 + rdx - 8], 0x8ce23c2b
lea eax, [r8 - 1]
cmp edi, eax
jge 0x14003653d
test dword [rdx + r9], 0xff000000
setne cl
test dword [rdx + r9], 0xffffff
setne al
test al, cl
jne 0x14003653d
mov dword [rdx + r9], 0x1d806443
add dword [rdx + r9], 0x2a7eb034
add dword [rdx + r9], 0xc21b23
add dword [rdx + r9], 0xb63ed066
inc edi
nop
add rdx, 0x2548d3cb
sub rdx, 0x2548d3c7
cmp edi, r8d
jl 0x140036302
inc r11d
cmp r11d, esi
jl 0x1400362e2
jmp 0x1400366e6
test al, 1
je 0x1400366e6
mov r8d, dword [r14 + 0x2e8]
mov r11d, 0x5a671fb7
add r11d, 0x1d47f3fd
sub r11d, 0x26e4bd5f
xor r11d, 0x50ca5655
mov ebx, dword [r14 + 0x2ec]
xor r8d, 0x35cb7a53
xor ebx, 0x35cb7a53
jle 0x1400366e6
nop dword [rax]
nop dword [rax + rax]
xor edi, edi
lea rsi, [r10 + rbx*4]
test r8d, r8d
jle 0x1400366d7
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 0x1400366c8
lea eax, [rbx - 1]
cmp r11d, eax
jge 0x14003668a
test dword [r9 + rdx - 4], 0xffffff
setne cl
test dword [r9 + rdx - 4], 0xff000000
setne al
test al, cl
jne 0x14003663b
mov dword [r9 + rdx - 4], 0x2441efd
add dword [r9 + rdx - 4], 0x64f53e00
xor dword [r9 + rdx - 4], 0x98395cfd
lea eax, [r8 - 1]
cmp edi, eax
jge 0x14003668a
test dword [r9 + rdx], 0xff000000
setne cl
test dword [r9 + rdx], 0xffffff
setne al
test al, cl
jne 0x140036696
mov dword [r9 + rdx], 0x787136b9
sub dword [r9 + rdx], 0x11ac5b98
sub dword [r9 + rdx], 0x1ab218f2
xor dword [r9 + rdx], 0xb312c22f
jmp 0x140036696
lea eax, [r8 - 1]
cmp edi, eax
jge 0x1400366c8
test dword [rdx], 0xff000000
setne cl
test dword [rdx], 0xffffff
setne al
test al, cl
jne 0x1400366c8
mov dword [rdx], 0x75538964
sub dword [rdx], 0x2f83c558
add dword [rdx], 0x22f0bc1e
add dword [rdx], 0x963f7fd6
inc edi
add rdx, 4
cmp edi, r8d
jl 0x1400365d8
inc r11d
mov r10, rsi
cmp r11d, ebx
jl 0x1400365b8
mov r13b, 0x40
sub r13b, 0x34
add r13b, 0x48
xor r13b, 0x55
mov rdi, r12
mov rax, qword [0x1404a20a8]
movabs rcx, 0x4b9ab88d0d2ad954
add rcx, 0xee7714e
add rcx, 0x54baee3c
xor rax, rcx
movabs rcx, 0x2c8abcec60c5b779
sub rcx, 0x20b9fb31
xor rcx, 0x53951fc1
sub rax, rcx
movabs rcx, 0x3cc24f753242a2c7
add rcx, 0x26f36ed2
add rcx, 0x78691799
rol rax, 7
xor rax, rcx
movabs rcx, 0x785f397f6e3e9d12
sub rcx, 0x39b2b3a9
add rcx, 0x30fe5559
rol rax, 0x15
not rax
add rax, rcx
mov rcx, r15
call rax
mov rdx, qword [0x1404a20b0]
movabs rax, 0x31f0984812625cf8
add rax, 0x142c2238
add rax, 0x535a66f2
add rax, 0x2183d71b
xor rdx, rax
mov rcx, rdi
ror rdx, 0x1a
movabs rax, 0xa37cee7e0a6865ea
add rax, 0x5103237b
add rax, 0x1ec64881
add rdx, rax
movabs rax, 0x3e7677de28b4c3e2
add rax, 0x2b434427
add rax, 0x437a77aa
xor rdx, rax
movabs rax, 0xe38200621a19f56
sub rax, 0xaf5eeeb
sub rax, 0x11d7a806
add rax, 0x7fffffff
add rax, 0x6bde9cc1
add rdx, rax
rol rdx, 0x2a
call rdx
lea rcx, [rbp + 0x50]
call fcn.140032a70
mov r12, qword [rsp + 0x1e8]
mov rsi, qword [rsp + 0x1f0]
movzx eax, r13b
add rsp, 0x73808f14
sub rsp, 0x73808d1c
pop r15
pop r14
pop r13
pop rdi
pop rbx
pop rbp
ret