Function at 0x14016e1a0
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
movaps xmmword [rbp - 0x10], xmm6
mov r12, rcx
mov eax, dword [0x140225798]
sub eax, dword [0x14022579c]
mov ecx, eax
and ecx, 0x346475b3
xor eax, 0x346475b3
lea eax, [rax + rcx*2]
mov ecx, eax
not ecx
and ecx, 0xfee8a195
mov r8d, eax
and r8d, 0x1175e6a
imul r8d, ecx
mov ecx, eax
and ecx, 0xfee8a195
or eax, 0xfee8a195
imul eax, ecx
add eax, r8d
add eax, 0xb847f26e
cmp eax, 0xe1e9bbf6
ja 0x14016e25d
mov eax, dword [0x1402257a0]
mov ecx, dword [0x1402257a4]
add eax, ecx
add eax, 0xb01bf3e4
mov ecx, 0xb2f34c8b
imul rcx, rax
shr rcx, 0x3e
add ecx, 0x885fdcf6
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov r9, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov r8, rsp
cmp ecx, 0xca162ffe
jbe 0x14016e279
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
jmp 0x14016e20f
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x58], r9
mov eax, dword [0x1402257a8]
imul eax, dword [0x1402257ac]
imul eax, eax, 0x59b5422f
add eax, 0x9dfbebda
cmp eax, 0x992f3076
jbe 0x14016e2fb
mov eax, 0x810
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov eax, 0x20
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov ecx, 0x8842b907
mov edx, dword [0x1402257b0]
or edx, dword [0x1402257b4]
mov eax, edx
and eax, 0x348aa64d
or edx, 0x348aa64d
add edx, eax
or edx, 0xee42395
imul rdx, rcx
shr rdx, 0x3f
mov eax, 0x810
call fcn.1401516e0
sub rsp, rax
mov r9, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov rsi, rsp
mov eax, 0x800
call fcn.1401516e0
sub rsp, rax
mov rbx, rsp
mov eax, 0x20
call fcn.1401516e0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov r14, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov r15, rsp
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov rax, rsp
cmp edx, 0x5a4d886a
ja 0x14016e300
mov qword [rbp - 0x38], r10
mov qword [rbp - 0x60], r9
mov qword [rbp - 0x50], r8
mov qword [rbp - 0x28], rax
mov rax, qword [r12]
mov ecx, dword [0x1402257b8]
imul ecx, dword [0x1402257bc]
add ecx, 0x88ca6959
mov edx, ecx
not edx
or edx, 0x4880ba08
and edx, 0x6ae7ba88
mov r8d, ecx
and r8d, 0x80104445
or r8d, edx
xor r8d, 0x9ceb62cd
and ecx, 0xa2044045
or ecx, r8d
cmp ecx, 0x30d0e5de
jae 0x14016e410
mov rcx, qword [rax + 0x108]
mov rcx, qword [rax + 0x100]
nop
mov ecx, dword [0x1402257c0]
xor ecx, dword [0x1402257c4]
and ecx, 0xd93c848e
add ecx, 0x40fe8495
mov rdi, qword [rax + 0x108]
mov r13, qword [rax + 0x100]
cmp ecx, 0x54d5d9d8
ja 0x14016e410
mov r11, qword [r12 + 8]
mov rax, qword [r12 + 0x10]
mov qword [rbp - 0x30], rax
cmp qword [rbp - 0x18], 0
mov qword [rbp - 0x40], r11
mov qword [rbp - 0x48], r12
je 0x14016e56a
movabs rax, 0x7ffffffffffffff
nop dword [rax]
mov ecx, dword [0x1402257c8]
add ecx, dword [0x1402257cc]
imul ecx, ecx, 0x9f20f355
or ecx, 0xf0cac992
and ecx, 0xfadeed9b
cmp ecx, 0x550f216d
je 0x14016e470
mov rdx, qword [rbp - 0x18]
cmp rdx, rax
ja 0x14016f18e
shl rdx, 4
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14016f080
mov r11, qword [rbp - 0x40]
nop
mov eax, dword [0x1402257e8]
mov ecx, dword [0x1402257ec]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
xor ecx, 0x23ad8000
xor eax, 0x545067ff
mov edx, eax
and edx, 0x98025964
and ecx, 0x67fda69b
imul ecx, edx
mov edx, eax
and edx, 0x67fda69b
or eax, 0x67fda69b
imul eax, edx
add eax, ecx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x1a26c5f2
and ecx, 0xe5d93a0d
imul ecx, edx
mov edx, eax
and edx, 0xe5d93a0d
or eax, 0xe5d93a0d
imul eax, edx
add eax, ecx
cmp eax, 0x69d1efd2
je 0x14016e4d0
mov r9, rdi
sub r9, r13
jne 0x14016e57f
jmp 0x14016e796
mov eax, 8
mov qword [rbp - 0x20], rax
mov r9, rdi
sub r9, r13
je 0x14016e796
dec qword [rbp - 0x30]
mov rax, qword [rbp - 0x18]
lea r12, [rax - 1]
nop dword [rax + rax]
mov eax, dword [0x1402257f0]
mov edx, dword [0x1402257f4]
mov r8d, eax
xor r8d, edx
not r8d
and r8d, edx
add r8d, r8d
sub edx, r8d
add edx, eax
imul rax, rdx, 0x44852a1b
shr rax, 0x3d
mov edx, eax
and edx, 0xfffffffe
add edx, edx
neg edx
add eax, edx
add eax, 0xe705256c
cmp eax, 0x600092fb
jb 0x14016e590
lea r8, [r13 + 1]
and r9d, 1
nop word [rax + rax]
mov eax, dword [0x1402257f8]
xor edx, edx
div dword [0x1402257fc]
mov edx, eax
not edx
mov r10d, eax
and r10d, 0x71d46bf3
and edx, 0x8e2b940c
imul edx, r10d
mov r10d, eax
and r10d, 0x8e2b940c
or eax, 0x8e2b940c
imul eax, r10d
add eax, edx
mov edx, eax
not edx
or edx, 0xa0038020
or eax, 0x44800a86
and eax, edx
or eax, 0x1b7c7558
cmp eax, 0x13587a6e
jb 0x14016e5e0
test r9, r9
je 0x14016e700
mov rax, qword [rbp - 0x30]
xor rax, r13
not rax
and rax, r13
shl rax, 4
add rax, r11
and r13, r12
shl r13, 4
add r13, qword [rbp - 0x20]
mov edx, dword [0x140225800]
and edx, dword [0x140225804]
mov r9d, edx
and r9d, 0x82f93e56
mov r10d, r9d
not r10d
mov r11d, edx
and r11d, 0xf01e50
and r10d, 0xa30d618f
imul r10d, r11d
and edx, 0x82092006
or r9d, 0xa30d618f
imul r9d, edx
lea edx, [r9 + r10]
add edx, 0x9b0be38
cmp edx, 0x638ce747
jb 0x14016e660
movups xmm0, xmmword [rax]
movups xmmword [r13], xmm0
nop dword [rax]
mov eax, dword [0x140225808]
mov edx, dword [0x14022580c]
not eax
not edx
or edx, eax
xor edx, 0xdc643a19
imul eax, edx, 0x9cfd2a39
add eax, 0x3fecd23c
cmp eax, 0xb421efcf
ja 0x14016e6c0
mov r13, r8
mov r11, qword [rbp - 0x40]
nop word cs:[rax + rax]
mov eax, dword [0x140225810]
xor edx, edx
div dword [0x140225814]
or eax, 0xe4bc40e
add eax, 0x80b745e1
or eax, 0x64ad44e4
cmp eax, 0x88b67df9
je 0x14016e700
cmp rdi, r8
mov r10, qword [rbp - 0x20]
mov rdx, qword [rbp - 0x30]
je 0x14016e796
mov rax, r13
not rax
mov rcx, rdx
not rcx
nop dword [rax]
mov r8, r13
and r8, rdx
mov r9, rax
or r9, rcx
not r9
or r9, r8
shl r9, 4
mov r8, r13
and r8, r12
shl r8, 4
movups xmm0, xmmword [r11 + r9]
movups xmmword [r10 + r8], xmm0
lea r8, [r13 + 1]
mov r9, r8
and r9, rdx
shl r9, 4
and r8, r12
shl r8, 4
movups xmm0, xmmword [r11 + r9]
movups xmmword [r10 + r8], xmm0
add rax, 0xfffffffffffffffe
add r13, 2
cmp r13, rdi
jne 0x14016e740
mov ecx, 0xb12b3287
nop dword [rax + rax]
mov eax, dword [0x140225818]
xor edx, edx
div dword [0x14022581c]
shr eax, 1
imul rax, rcx
shr rax, 0x3c
or eax, 0xf97fb646
cmp eax, 0x5177a86c
jb 0x14016e7a0
mov eax, dword [0x14022cb7c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 8]
cmp eax, 1
mov r13, qword [rbp - 0x20]
je 0x14016edc5
cmp eax, 2
jne 0x14016ed78
mov eax, dword [0x14022caa8]
cmp eax, 4
mov r12, qword [rbp - 0x48]
je 0x14016e892
mov eax, dword [0x1402258a0]
or eax, dword [0x1402258a4]
add eax, 0xe4d21f2d
cmp eax, 0x90f18be4
jae 0x14016e830
sub rsp, 0x20
call fcn.140150c30
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x1402258ac]
add eax, dword [0x1402258a8]
xor eax, 0x76938551
imul edi, eax, 0x6a73e570
not edi
or edi, 0xaece50ed
sub rsp, 0x20
call fcn.14015b300
add rsp, 0x20
cmp edi, 0xa9508510
jb 0x14016e830
nop word cs:[rax + rax]
mov eax, dword [0x1402258b0]
sub eax, dword [0x1402258b4]
xor eax, 0x6439a66
add eax, 0x3afb420b
or eax, 0xd35dd51d
cmp eax, 0xcd78d8f5
jb 0x14016e870
mov r15, qword [0x14022caa0]
lock inc qword [r15]
jle 0x14016efd6
nop word cs:[rax + rax]
mov eax, dword [0x1402258c0]
or eax, dword [0x1402258c4]
and eax, 0x9025afcd
add eax, 0x948eb656
or eax, 0x7ceecaf1
cmp eax, 0xc2c1ae0e
jb 0x14016e8b0
mov rax, rsi
add rax, 0x20
mov rcx, 0xfffffffffffffffd
xor edx, edx
movups xmm0, xmmword [0x140206f08]
movups xmm1, xmmword [0x140206ef8]
movabs r8, 0x7fffffffffffffd
movabs r9, 0x7fffffffffffffc
nop word cs:[rax + rax]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax - 0x20], xmm1
movups xmmword [rax], xmm1
movups xmmword [rax + 0x10], xmm0
lea r10, [rcx + 2]
and r10, r8
or r10, rcx
not r10
shl r10, 5
movups xmmword [rsi + r10], xmm1
movups xmmword [rsi + r10 + 0x10], xmm0
mov r10, rdx
and r10, r9
mov r11, rdx
xor r11, 3
sub r11, r10
add r11, rdx
shl r11, 5
movups xmmword [rsi + r11], xmm1
movups xmmword [rsi + r11 + 0x10], xmm0
add rdx, 4
add rcx, 0xfffffffffffffffc
sub rax, 0xffffffffffffff80
cmp rdx, 0x40
jne 0x14016e910
xor eax, eax
test al, al
je 0x14016e990
sub rsp, 0x20
mov r8d, 0x800
mov rcx, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
nop
mov edi, dword [0x1402258c8]
mov eax, dword [0x1402258cc]
mov ecx, edi
not ecx
and ecx, eax
mov edx, eax
not edx
and edx, edi
imul edx, ecx
mov ecx, edi
and ecx, eax
or edi, eax
imul edi, ecx
add edi, edx
mov eax, edi
xor eax, 0x801ca22
xor edi, 0xf7fc3491
mov ecx, edi
and ecx, 0x596215c
and eax, 0x1a69dea3
imul eax, ecx
mov ecx, edi
and ecx, 0x1a69dea3
or edi, 0x1a69dea3
imul edi, ecx
add edi, eax
and edi, 0x155cb331
sub rsp, 0x20
mov r8d, 0x800
mov rcx, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp edi, 0x62628e4b
ja 0x14016e990
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x980
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
mov rsi, rax
nop dword [rax + rax]
mov eax, dword [0x1402258d4]
add eax, dword [0x1402258d0]
or eax, 0xb7df25a4
mov ecx, eax
and ecx, 0x4aee78d5
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0x4aee78d5
and eax, 0xf9f3ffff
xor eax, 0xe1c397e8
cmp eax, 0xdbc86a
jb 0x14016ea30
test rsi, rsi
je 0x14016f035
mov eax, dword [0x1402258e0]
add eax, dword [0x1402258e4]
mov ecx, eax
not ecx
mov edx, eax
or edx, 0x2fe9daff
mov r8d, edx
and r8d, 0x2fc5261f
and ecx, 0xd0120100
imul ecx, r8d
and edx, 0xd03ad9e0
or eax, 0xfffbdbff
imul eax, edx
add eax, ecx
cmp eax, 0xce40ea7c
jbe 0x14016eafe
mov edi, esi
not edi
or rdi, 0xffffffffffffff80
mov qword [rsi + rdi + 0x79], rsi
mov qword [rsi + rdi + 0x81], 0
mov qword [rsi + rdi + 0x89], r15
lea rcx, [rsi + rdi]
add rcx, 0x91
sub rsp, 0x20
mov r8d, 0x800
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rsi + rdi + 0x891], xmm0
xorps xmm6, xmm6
nop word cs:[rax + rax]
mov eax, dword [0x1402258e8]
sub eax, dword [0x1402258ec]
mov ecx, eax
not ecx
and ecx, 0x89c45b96
mov edx, eax
and edx, 0x763ba469
imul edx, ecx
mov ecx, eax
and ecx, 0x89c45b96
or eax, 0x89c45b96
imul eax, ecx
lea r13d, [rax + rdx]
add r13d, 0x5e4e994
xor r13d, 0x673a407b
mov edi, esi
not edi
or rdi, 0xffffffffffffff80
mov qword [rsi + rdi + 0x79], rsi
mov qword [rsi + rdi + 0x81], 0
mov qword [rsi + rdi + 0x89], r15
lea rcx, [rsi + rdi]
add rcx, 0x91
sub rsp, 0x20
mov r8d, 0x800
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
movaps xmmword [rsi + rdi + 0x891], xmm6
cmp r13d, 0x1e932450
je 0x14016eb10
add rsi, rdi
add rsi, 0x81
mov qword [rsi + 0x820], 1
mov qword [rsi + 0x828], 0
mov qword [rsi + 0x880], 0
mov eax, dword [0x1402258f0]
add eax, dword [0x1402258f4]
mov ecx, eax
and ecx, 0x37773a89
xor ecx, 0x12430081
xor eax, 0x16412001
and eax, ecx
cmp eax, 0x880819db
jbe 0x14016ec10
mov rax, qword [r15 + 0x200]
mov qword [rsi], rax
lock cmpxchg qword [r15 + 0x200], rsi
mov r13, qword [rbp - 0x20]
nop word cs:[rax + rax]
mov eax, dword [0x1402258f8]
xor eax, dword [0x1402258fc]
imul rdx, rax, 0x37162fef
shr rdx, 0x3d
add edx, 0x92797ab7
or edx, 0xdac08497
mov rax, qword [r15 + 0x200]
mov qword [rsi], rax
lock cmpxchg qword [r15 + 0x200], rsi
mov rcx, rax
sete al
cmp edx, 0xef2189de
ja 0x14016ec20
test al, al
jne 0x14016ed02
nop dword [rax]
mov eax, dword [0x140225900]
or eax, dword [0x140225904]
add eax, 0x5c539290
mov edx, eax
xor edx, 0x8b8bca57
and edx, eax
mov eax, edx
or eax, 0xe6f95963
not edx
or edx, 0x1906a69c
and edx, eax
cmp edx, 0x2a4aca9a
jae 0x14016ecc0
mov qword [rsi], rcx
mov rax, rcx
lock cmpxchg qword [r15 + 0x200], rsi
nop word cs:[rax + rax]
mov r8d, dword [0x140225908]
or r8d, dword [0x14022590c]
or r8d, 0xc0800070
and r8d, 0xd4800072
mov qword [rsi], rcx
mov rax, rcx
lock cmpxchg qword [r15 + 0x200], rsi
sete dl
cmp r8d, 0x55f2f853
je 0x14016ecc0
mov rcx, rax
test dl, dl
je 0x14016ec70
mov qword [r14], rsi
mov rax, qword [rsi + 0x818]
cmp rax, 0xffffffffffffffff
je 0x14016f18e
mov edx, eax
and edx, 1
mov rcx, rax
or rcx, 1
add rcx, rdx
mov edx, dword [0x140225910]
mov r8d, dword [0x140225914]
mov r9d, edx
xor r9d, r8d
not r9d
and r9d, r8d
add r9d, r9d
sub r8d, r9d
add r8d, edx
imul edx, r8d, 0x83e046a2
xor edx, 0xcca5ec84
mov r8d, 0xaf27317f
imul r8, rdx
shr r8, 0x3d
cmp r8d, 0x384204b7
mov r15, qword [rbp - 0x28]
jbe 0x14016f3f2
jmp 0x14016f3ff
test rax, rax
jne 0x14016ef99
sub rsp, 0x20
call fcn.140160c60
add rsp, 0x20
nop
mov eax, dword [0x140225828]
mov ecx, dword [0x14022582c]
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
mov eax, ecx
xor eax, 0xf3d97d58
xor ecx, 0x5af826bd
and ecx, eax
add ecx, 0x3257810f
cmp ecx, 0x6a66647d
jb 0x14016ed90
mov eax, dword [0x14022cb7c]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x10]
mov qword [r15], rcx
mov r8, qword [rcx + 0x818]
cmp r8, 0xffffffffffffffff
je 0x14016f0ad
mov eax, dword [0x140225830]
sub eax, dword [0x140225834]
imul eax, eax, 0xbae2661f
cmp eax, 0x91d342ac
mov r14, qword [rbp - 0x18]
mov r12, qword [rbp - 0x48]
jne 0x14016ee1f
lea rax, [r8 + 1]
mov qword [rcx + 0x818], rax
mov r9d, 0x93561b1b
lea r10, [r8 + 1]
nop dword [rax]
mov eax, dword [0x140225838]
xor edx, edx
div dword [0x14022583c]
add eax, 0x3e4b4a96
imul rax, r9
shr rax, 0x3d
mov qword [rcx + 0x818], r10
cmp eax, 0x1263e06d
je 0x14016ee30
nop dword [rax]
mov eax, dword [0x140225840]
xor edx, edx
div dword [0x140225844]
mov edx, eax
not edx
mov r9d, eax
and r9d, 0xb041e765
and edx, 0x4fbe189a
imul edx, r9d
mov r9d, eax
and r9d, 0x4fbe189a
or eax, 0x4fbe189a
imul eax, r9d
add eax, edx
mov edx, eax
not edx
mov r9d, eax
and r9d, 0x1f5b7c1c
and edx, 0xe0a483e3
imul edx, r9d
mov r9d, eax
and r9d, 0xe0a483e2
or eax, 0xe0a483e3
imul eax, r9d
add eax, edx
cmp eax, 0xac1bf8ba
je 0x14016ee60
nop
mov eax, dword [0x140225848]
xor edx, edx
div dword [0x14022584c]
mov edx, eax
xor edx, 0x93f2a104
or eax, 0x6c0d5efb
and eax, edx
mov edx, eax
not edx
and edx, 0x9bc87662
mov r9d, eax
and r9d, 0x6437899d
imul r9d, edx
mov edx, eax
and edx, 0x9bc87662
or eax, 0x9bc87662
imul eax, edx
add eax, r9d
xor eax, 0x7a42ebd1
cmp eax, 0xbcdb656d
jb 0x14016eed0
test r8, r8
jne 0x14016f320
mov eax, dword [0x140225860]
mov edx, dword [0x140225864]
mov r8d, edx
and r8d, eax
add eax, edx
sub eax, r8d
mov edx, eax
not edx
and edx, 0x4e8c1212
mov r8d, eax
and r8d, 0xb173eded
imul r8d, edx
mov edx, eax
and edx, 0x4e8c1212
or eax, 0x4e8c1212
imul eax, edx
add eax, r8d
imul rax, rax, 0x11acc259
shr rax, 0x3b
mov edx, eax
xor edx, 0x4221fff5
and eax, 0xfffffffe
add eax, eax
sub eax, edx
cmp eax, 0xa4ad519
jae 0x14016f190
jmp 0x14016f1ed
mov eax, dword [0x140225820]
mov ecx, dword [0x140225824]
mov edx, eax
and edx, ecx
add edx, edx
add eax, ecx
sub eax, edx
add eax, 0x75c3182
mov ecx, eax
and ecx, 0x355470f7
add ecx, ecx
sub eax, ecx
add eax, 0xf55470f7
and eax, 0x64b1bfbb
cmp eax, 0xb89d186d
je 0x14016ef99
jmp 0x14016f18e
ud2
ud2
mov eax, dword [0x1402257d0]
xor edx, edx
div dword [0x1402257d4]
or eax, 0x7309ce3b
mov ecx, 0xdbd5d415
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0xe7b5e768
jne 0x14016f114
jmp 0x14016f14f
mov eax, dword [0x140225850]
and eax, dword [0x140225854]
mov ecx, 0xd4bc8b1f
imul rcx, rax
shr rcx, 0x3d
or ecx, 0xf9ca1066
add ecx, 0x80612b87
cmp ecx, 0x37a03686
jae 0x14016f0e0
ud2
mov eax, dword [0x140225858]
mov ecx, dword [0x14022585c]
mov edx, ecx
and edx, eax
add eax, ecx
sub eax, edx
add eax, 0x8a4e0cd4
imul rax, rax, 0x522370f3
shr rax, 0x3e
or eax, 0x6eff294a
ud2
mov eax, dword [0x1402257d8]
xor edx, edx
div dword [0x1402257dc]
mov ecx, eax
xor ecx, 0x17d897bb
add ecx, eax
and eax, 0xe8276844
sub ecx, eax
or ecx, 0x314a4954
shr ecx, 1
imul rax, rcx, 0x23191ff7
shr rax, 0x3c
ud2
ud2
ud2
mov eax, dword [0x140225868]
add eax, dword [0x14022586c]
mov edx, eax
not edx
mov r8d, eax
and r8d, 0xbdcdd0e
and edx, 0xf42322f1
imul edx, r8d
mov r8d, eax
and r8d, 0xf42322f1
or eax, 0xf42322f1
imul eax, r8d
add eax, edx
imul rax, rax, 0x349bb8a3
shr rax, 0x3d
not eax
and eax, 0x2c35aaa7
mov rdx, qword [rcx + 8]
mov rdx, qword [rdx + 0x180]
cmp eax, 0xb2f0cb0a
jne 0x14016f1fa
mov rax, qword [rcx + 8]
mov rax, qword [rax + 0x180]
jmp 0x14016f190
or rdx, 1
xor eax, eax
lock cmpxchg qword [rcx + 0x880], rdx
mov rax, qword [rcx + 0x828]
lea rdx, [rax + 1]
mov qword [rcx + 0x828], rdx
mov rdx, rax
xor rdx, 0xffffffffffffff80
test rdx, rax
jne 0x14016f320
mov rsi, qword [rcx + 8]
mov eax, dword [0x140225870]
mov ecx, dword [0x140225874]
mov edx, eax
and edx, ecx
not eax
not ecx
and ecx, eax
not edx
not ecx
and ecx, edx
mov eax, 0xdc47acdb
imul rax, rcx
shr rax, 0x3e
lea ecx, [rax + 0x30a8844]
and ecx, 0x30a8846
or eax, 0x2f7fefd6
add eax, ecx
cmp eax, 0x2565b4c5
jae 0x14016f289
lea rcx, [rsi + 0x80]
sub rsp, 0x20
mov rdx, r15
call fcn.14014fe30
add rsp, 0x20
sub rsi, 0xffffffffffffff80
mov eax, dword [0x140225878]
mov ecx, dword [0x14022587c]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
mov eax, ecx
and eax, 0x449aad8a
xor ecx, 0xc49aad8a
lea eax, [rcx + rax*2]
imul edi, eax, 0xdc43d694
and edi, 0xde063018
sub rsp, 0x20
mov rcx, rsi
mov rdx, r15
call fcn.140158920
add rsp, 0x20
cmp edi, 0x3f0af9cb
ja 0x14016f28d
nop dword [rax]
mov eax, dword [0x140225880]
xor edx, edx
div dword [0x140225884]
mov ecx, eax
and ecx, 0x20d72b08
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0x20d72b08
mov ecx, eax
not ecx
and ecx, 0x45e3134b
and eax, 0xba1cecb4
sub eax, ecx
add eax, 0xdedb23ac
cmp eax, 0x2aef4d95
jbe 0x14016f2e0
nop
mov eax, dword [0x140225888]
xor edx, edx
div dword [0x14022588c]
xor eax, 0x88605280
or eax, 0x461fa53e
add eax, 0x62eef1a2
jae 0x14016f320
mov rdi, qword [r15]
nop word cs:[rax + rax]
mov eax, dword [0x140225890]
mov ecx, dword [0x140225894]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0xc955f519
and eax, 0x36aa0ae6
or eax, r9d
or edx, r8d
and r8d, 0xc955f519
and ecx, 0x36aa0ae6
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
add edx, 0x689dd8bb
imul rax, rdx, 0x2825b8f1
shr rax, 0x3b
cmp eax, 0x78fa7ba
ja 0x14016f350
mov r15, qword [rbp - 0x28]
nop dword [rax]
mov eax, dword [0x140225898]
imul eax, dword [0x14022589c]
mov ecx, eax
xor ecx, 0xcb9836d1
add ecx, eax
and eax, 0x3467c92e
sub ecx, eax
add ecx, 0x3fe28180
mov eax, ecx
and eax, 0xd40c469
add eax, eax
sub ecx, eax
add ecx, 0x8d40c469
cmp ecx, 0x12b816b5
jb 0x14016f3b0
jmp 0x14016f6c6
mov qword [rsi + 0x818], rcx
xor edx, edx
test dl, dl
je 0x14016f408
mov qword [rsi + 0x818], rcx
jmp 0x14016f3f2
test rax, rax
jne 0x14016f628
nop word cs:[rax + rax]
mov eax, dword [0x14022591c]
add eax, dword [0x140225918]
shr eax, 3
imul rax, rax, 0x347b73fb
shr rax, 0x39
mov ecx, eax
not ecx
and ecx, 0x6187b811
mov edx, eax
and edx, 0xfffffffe
imul edx, ecx
mov ecx, eax
and ecx, 1
or eax, 0x6187b811
imul eax, ecx
add eax, edx
xor eax, 0x679dc42f
cmp eax, 0x4974ee6c
ja 0x14016f420
mov rax, qword [rsi + 8]
mov rcx, qword [rax + 0x180]
or rcx, 1
xor eax, eax
lock cmpxchg qword [rsi + 0x880], rcx
mov rax, qword [rsi + 0x828]
mov ecx, dword [0x140225920]
sub ecx, dword [0x140225924]
imul ecx, ecx, 0x92d8442c
mov edx, 0xa62c3b91
imul rdx, rcx
shr rdx, 0x3d
mov ecx, edx
xor ecx, 0x7c277cd5
and edx, 0xfffffffd
or edx, ecx
cmp edx, 0xfd9e4582
ja 0x14016f54e
mov edx, dword [0x140225928]
mov ecx, dword [0x14022592c]
mov r8d, edx
xor r8d, ecx
not r8d
and r8d, ecx
add r8d, r8d
sub ecx, r8d
add ecx, edx
mov edx, ecx
not edx
or edx, 0x442b803
and edx, 0x2deeb923
mov r8d, ecx
and r8d, 0x50004614
or r8d, edx
xor r8d, 0xb86d49b5
and ecx, 0x11804014
or ecx, r8d
mov edx, ecx
not edx
mov r8d, ecx
and r8d, 0xac28c7a6
and edx, 0x51940819
imul edx, r8d
mov r8d, ecx
and r8d, 0x51873010
or ecx, 0x51973819
imul ecx, r8d
add ecx, edx
lea rdx, [rax + 1]
mov qword [rsi + 0x828], rdx
cmp ecx, 0xfa2cf952
jne 0x14016f55e
lea rcx, [rax + 1]
mov qword [rsi + 0x828], rcx
jmp 0x14016f4c0
test al, 0x7f
jne 0x14016f628
mov eax, 0xaef46651
nop dword [rax + rax]
mov ecx, dword [0x140225930]
mov edx, dword [0x140225934]
not ecx
not edx
or edx, ecx
not edx
imul ecx, edx, 0x591221
imul rcx, rax
shr rcx, 0x3e
cmp ecx, 0x84566d5c
je 0x14016f570
mov eax, dword [0x140225938]
imul eax, dword [0x14022593c]
mov rbx, qword [rsi + 8]
add eax, 0x37e51cfd
xor eax, 0x70edc32d
cmp eax, 0xc5059d80
jbe 0x14016f5d3
lea rcx, [rbx + 0x80]
sub rsp, 0x20
mov rdx, r14
call fcn.14014fe30
add rsp, 0x20
sub rbx, 0xffffffffffffff80
nop word [rax + rax]
mov eax, dword [0x140225940]
and eax, dword [0x140225944]
mov ecx, eax
xor ecx, 0x6e26da
add ecx, eax
and eax, 0xff91d925
sub ecx, eax
or ecx, 0x23358899
mov edi, ecx
xor edi, 0x289203d7
and edi, ecx
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
call fcn.14014fe30
add rsp, 0x20
cmp edi, 0x5b905f24
je 0x14016f5e0
mov rdi, qword [r14]
mov r14, qword [rbp - 0x18]
nop
mov eax, dword [0x140225948]
mov ecx, dword [0x14022594c]
mov edx, ecx
not edx
mov r8d, eax
and r8d, edx
or edx, eax
not edx
imul edx, r8d
mov r8d, eax
and r8d, ecx
or eax, ecx
imul eax, r8d
add eax, edx
mov ecx, eax
not ecx
and ecx, 0x80a1ebb
mov edx, eax
and edx, 0x7f5e144
imul edx, ecx
mov ecx, eax
and ecx, 0x80a1ebb
or eax, 0x80a1ebb
imul eax, ecx
add eax, edx
add eax, 0xda71942e
or eax, 0xf1d3447d
cmp eax, 0xc9a22b9
jb 0x14016f630
mov rax, qword [rsi + 0x818]
mov rcx, qword [rsi + 0x820]
lea rdx, [rcx - 1]
mov qword [rsi + 0x820], rdx
test rax, rax
sete al
setne dl
cmp rcx, 1
sete cl
or cl, dl
add cl, al
test cl, 1
je 0x14016f70c
mov eax, dword [0x140225950]
add eax, dword [0x140225954]
mov ecx, eax
not ecx
and ecx, 0x59d3002e
mov edx, eax
and edx, 0x262cffd1
imul edx, ecx
mov ecx, eax
and ecx, 0x59d3002e
or eax, 0x59d3002e
imul eax, ecx
add eax, edx
add eax, 0xa13498b0
or eax, 0x90bc32cf
cmp eax, 0xf0ba645b
jbe 0x14016f71e
jmp 0x14016f77c
sub rsp, 0x20
mov rcx, rsi
call fcn.14015a140
add rsp, 0x20
jmp 0x14016f6c6
mov eax, dword [0x140225958]
mov esi, dword [0x14022595c]
mov ecx, eax
not ecx
or eax, esi
not esi
or esi, ecx
and esi, eax
add esi, 0xc963807b
xor esi, 0x282e700
or esi, 0x197d185f
mov qword [r15], rdi
mov qword [r12 + 8], r13
mov qword [r12 + 0x10], r14
mov rbx, qword [r12]
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x10
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
cmp esi, 0x7bc5b92a
jne 0x14016f7a9
mov qword [r15], rdi
mov qword [r12 + 8], r13
mov qword [r12 + 0x10], r14
movzx eax, byte [0x14022cb78]
sub rsp, 0x20
mov edx, 0x10
xor ecx, ecx
call fcn.140107940
add rsp, 0x20
jmp 0x14016f71e
test rax, rax
je 0x14016f18e
mov ecx, dword [0x140225960]
mov edx, dword [0x140225964]
mov r8d, ecx
and r8d, edx
not r8d
not ecx
not edx
or edx, ecx
and edx, r8d
not edx
imul ecx, edx, 0x655c40bc
xor ecx, 0xd48c1bd7
cmp ecx, 0xe851604
mov r12, qword [rbp - 0x60]
jae 0x14016f7fb
mov qword [rax], r13
mov qword [rax + 8], r14
mov rcx, rax
xchg qword [rbx + 0x80], rcx
xor ecx, ecx
nop dword [rax]
mov qword [rax], r13
mov qword [rax + 8], r14
mov rsi, rax
xchg qword [rbx + 0x80], rsi
test cl, cl
jne 0x14016f800
mov rdi, qword [r15]
nop dword [rax + rax]
mov eax, dword [str.8__]
xor edx, edx
div dword [0x14022596c]
and eax, 0x15e4391f
add eax, 0x82211721
imul rax, rax, 0x2ff6d525
shr rax, 0x3c
cmp eax, 0x2b443c60
je 0x14016f820
test rdi, rdi
mov r13, qword [rbp - 0x50]
je 0x14016f91c
lea rax, [0x140097a70]
mov rcx, qword [rbp - 0x38]
mov qword [rcx], rax
mov eax, dword [0x1402259a8]
or eax, dword [0x1402259ac]
and eax, 0x8920c3e9
imul rax, rax, 0x19dd0a59
shr rax, 0x3a
or eax, 0x5cf83254
cmp eax, 0xacf080d3
jbe 0x14016f8a5
mov rdx, qword [rbp - 0x38]
mov qword [rdx + 8], rsi
sub rsp, 0x20
mov rcx, rdi
call fcn.140087870
add rsp, 0x20
mov r13, qword [rbp - 0x38]
nop dword [rax]
mov eax, dword [0x1402259b0]
xor edx, edx
div dword [0x1402259b4]
mov ecx, eax
and ecx, 0xe6eef48a
mov edx, ecx
not edx
mov r8d, eax
and r8d, 0xa0540a
and edx, 0xfe5fabd4
imul edx, r8d
and eax, 0xe64ea080
or ecx, 0xfe5fabd4
imul ecx, eax
add ecx, edx
imul ebx, ecx, 0xa1298873
mov qword [r13 + 8], rsi
sub rsp, 0x20
mov rcx, rdi
mov rdx, r13
call fcn.140150170
add rsp, 0x20
cmp ebx, 0xc553a5cc
je 0x14016f8b0
mov r13, qword [rbp - 0x50]
jmp 0x14016fb24
and rsi, 0xfffffffffffffff8
mov eax, dword [0x140225970]
sub eax, dword [0x140225974]
and eax, 0x7c4b6b5a
add eax, 0xc6cdd9d6
not eax
and eax, 0x44a5a3a1
cmp eax, 0xd099bac9
ja 0x14016f920
cmp qword [rsi + 8], 0
je 0x14016fa30
nop
mov eax, dword [0x140225978]
or eax, dword [0x14022597c]
mov ecx, eax
xor ecx, 0x7412b307
and ecx, eax
mov eax, ecx
and eax, 0x794c61ee
or ecx, 0x794c61ee
add ecx, eax
cmp ecx, 0xc7726aae
je 0x14016f950
mov rdi, qword [rsi]
mov eax, dword [0x140225980]
xor edx, edx
div dword [0x140225984]
or eax, 0x622c34f8
mov ecx, eax
xor ecx, 0x89d1f211
and eax, 0x762e0dee
add eax, eax
sub eax, ecx
xor eax, 0x4c4abe2f
cmp eax, 0x4d348a1a
jae 0x14016f9ca
mov rcx, qword [0x14022cb48]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov rbx, qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x140225988]
xor edx, edx
div dword [0x14022598c]
add eax, 0x3890c068
mov r14d, eax
xor r14d, 0x20002ab5
xor eax, 0x807000a
and eax, 0x1ea7940a
and r14d, 0xe1586bf5
sub r14d, eax
mov rcx, qword [0x14022cb48]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call rbx
add rsp, 0x20
cmp r14d, 0x4e8a63f1
je 0x14016f9e0
mov eax, dword [0x140225990]
mov ecx, dword [0x140225994]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0x80089000
and eax, 0x20204000
or eax, r9d
or edx, r8d
and r8d, 0x80089000
and ecx, 0x20204000
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
and edx, 0xa028d000
cmp edx, 0x57b7c182
jne 0x14016fa99
mov rcx, qword [0x14022cb48]
sub rsp, 0x20
xor edx, edx
mov r8, rsi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov r14, qword [rbp - 0x18]
nop dword [rax]
mov eax, dword [0x140225998]
sub eax, dword [0x14022599c]
imul edi, eax, 0x26b42a43
add edi, 0xe73b657d
mov rcx, qword [0x14022cb48]
sub rsp, 0x20
xor edx, edx
mov r8, rsi
call fcn.14014eed0
add rsp, 0x20
cmp edi, 0x2fd92a70
jb 0x14016faa0
nop dword [rax]
mov eax, dword [0x1402259a0]
mov ecx, dword [0x1402259a4]
mov edx, eax
or edx, ecx
not edx
not eax
not ecx
and ecx, eax
or ecx, edx
not ecx
add ecx, 0x79178a8e
or ecx, 0x3b51694c
imul rax, rcx, 0x4f82b93d
shr rax, 0x3e
cmp eax, 0x578f964e
je 0x14016fae0
mov rdi, qword [r15]
mov al, 1
nop
test al, al
je 0x14016fb20
movabs rcx, 0xfffffffffffffc0
mov eax, dword [0x1402259b8]
xor edx, edx
div dword [0x1402259bc]
xor eax, eax
nop
test al, al
jne 0x14016fb40
test r14, rcx
je 0x1401703f0
nop dword [rax]
mov eax, dword [0x1402259c0]
imul eax, dword [0x1402259c4]
or eax, 0x278e9d21
imul eax, eax, 0x32dba5c2
mov ecx, eax
and ecx, 0x322fce6c
add ecx, ecx
sub eax, ecx
cmp eax, 0x86464155
je 0x14016fb50
test rdi, rdi
je 0x140170550
mov rax, qword [rdi + 0x810]
nop dword [rax + rax]
mov ecx, dword [0x1402259c8]
xor ecx, dword [0x1402259cc]
imul ecx, ecx, 0xd189125
add ecx, 0xb4a0e6c8
or ecx, 0x41ac7d98
cmp ecx, 0x1c5758ed
je 0x14016fb90
mov rsi, rdi
test rax, rax
je 0x1401703d0
nop word cs:[rax + rax]
mov eax, dword [0x1402259d0]
mov ecx, dword [0x1402259d4]
add eax, ecx
add eax, 0x80f33cf5
mov ecx, eax
not ecx
and ecx, 0x2f38201d
xor ecx, 0x7907b80c
or eax, 0x7907b80c
and eax, ecx
cmp eax, 0x3a33a285
jb 0x14016fbd0
mov r14, qword [rdi + 8]
mov eax, 0xd3c3ec73
mov rbx, qword [rbp - 0x58]
nop
mov ecx, dword [0x1402259d8]
xor ecx, dword [0x1402259dc]
mov edx, ecx
xor edx, 0x193d3ee1
and ecx, 0x66c2c11e
add ecx, ecx
sub ecx, edx
xor ecx, 0x8f158ceb
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x90587277
ja 0x14016fc10
nop word cs:[rax + rax]
mov eax, dword [0x1402259e0]
xor edx, edx
div dword [0x1402259e4]
mov ecx, eax
not ecx
or ecx, 0x80310c88
and ecx, 0x88f91dc8
and eax, 0x34002211
or eax, ecx
xor eax, 0xb4582535
imul rcx, rax, 0x1ef6bfa3
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
cmp eax, 0x123505a5
je 0x14016fc50
mov rcx, 0xffffffffffffffff
xor r8d, r8d
movabs r9, 0x7fffffffffffffc
movups xmm0, xmmword [0x140206f08]
movups xmm1, xmmword [0x140206ef8]
mov r10, rbx
xor r11d, r11d
jmp 0x14016fcd6
add rcx, 0xfffffffffffffffc
sub r10, 0xffffffffffffff80
add r11, 4
cmp rcx, 0xffffffffffffffbf
je 0x14016fda9
test r8b, r8b
jne 0x14016fd73
nop
mov eax, dword [0x1402259e8]
xor edx, edx
div dword [0x1402259ec]
add eax, 0x1d6b335d
mov edx, eax
not edx
and edx, 0xa3830348
mov esi, eax
and esi, 0x5c7cfcb7
imul esi, edx
mov edx, eax
and edx, 0xa3830348
or eax, 0xa3830348
imul eax, edx
add eax, esi
not eax
mov edx, eax
or edx, 0x6bd7bc87
or eax, 0x6bd7bc84
and eax, edx
mov rdx, r11
and rdx, r9
mov rsi, r11
xor rsi, 3
sub rsi, rdx
add rsi, r11
shl rsi, 5
movups xmmword [r10 + 0x10], xmm0
movups xmmword [r10], xmm1
movups xmmword [r10 + 0x20], xmm1
movups xmmword [r10 + 0x30], xmm0
movups xmmword [r10 + 0x40], xmm1
movups xmmword [r10 + 0x50], xmm0
movups xmmword [rbx + rsi], xmm1
movups xmmword [rbx + rsi + 0x10], xmm0
cmp eax, 0x16fe9108
jae 0x14016fcc0
movups xmmword [r10 + 0x10], xmm0
movups xmmword [r10], xmm1
mov rax, r11
shl rax, 5
or rax, 0x20
movups xmmword [rbx + rax], xmm1
movups xmmword [rbx + rax + 0x10], xmm0
movups xmmword [r10 + 0x40], xmm1
movups xmmword [r10 + 0x50], xmm0
movups xmmword [r10 + 0x60], xmm1
movups xmmword [r10 + 0x70], xmm0
jmp 0x14016fce0
lea rsi, [rdi + 0x10]
sub rsp, 0x20
mov r8d, 0x800
mov rcx, r13
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xor eax, eax
test al, al
jne 0x14016fe6c
mov eax, dword [0x1402259f0]
xor edx, edx
div dword [0x1402259f4]
mov ebx, eax
not eax
and eax, 0x2f269fc9
mov ecx, ebx
and ecx, 0x50d96036
imul ecx, eax
mov eax, ebx
and eax, 0x2f269fc9
or ebx, 0x2f269fc9
imul ebx, eax
add ebx, ecx
and ebx, 0x6414bb42
imul rax, rbx, 0x15041609
shr rax, 0x20
sub ebx, eax
shr ebx, 1
add ebx, eax
shr ebx, 0x1f
sub rsp, 0x20
mov r8d, 0x808
mov rcx, r12
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rsi
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [rdi + 0x810], 0
mfence
mov r15, qword [r14 + 0x180]
movzx eax, byte [0x14022cb78]
cmp ebx, 0x701e3348
jne 0x14016feb7
sub rsp, 0x20
mov r8d, 0x808
mov rcx, r12
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rsi
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [rdi + 0x810], 0
mfence
mov rax, qword [r14 + 0x180]
movzx eax, byte [0x14022cb78]
jmp 0x14016fdd0
sub rsp, 0x20
mov edx, 0x818
xor ecx, ecx
call fcn.14014ee50
add rsp, 0x20
test rax, rax
je 0x14016ff02
mov rsi, rax
mov eax, dword [0x140225a08]
mov ecx, dword [0x140225a0c]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [rax + rdx*2]
shr eax, 3
imul rax, rax, 0x83185d9
shr rax, 0x37
cmp eax, 0xb3670414
jne 0x14016ff6f
jmp 0x14016ffae
mov eax, dword [0x1402259f8]
mov ecx, dword [0x1402259fc]
not eax
not ecx
or ecx, eax
mov eax, ecx
not eax
and ecx, 0xb7f00164
and eax, 0x480ffe9b
sub eax, ecx
mov ecx, eax
not ecx
or eax, 0x11081203
and ecx, 0x82a064a8
and eax, 0x550d9a43
or eax, ecx
cmp eax, 0x51fbcbfc
ja 0x14016ff6b
mov eax, dword [0x140225a00]
mov ecx, eax
not ecx
or ecx, dword [0x140225a04]
add eax, ecx
add eax, 0xb8d71c70
or eax, 0x4b796e02
ud2
ud2
mov ebx, dword [0x140225a10]
add ebx, dword [0x140225a14]
or ebx, 0xd2ea6342
add ebx, 0xb57fc173
or ebx, 0x506a5080
sub rsp, 0x20
mov r8d, 0x808
mov rcx, rsi
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp ebx, 0xad9cd68f
jae 0x14016ffc9
sub rsp, 0x20
mov r8d, 0x808
mov rcx, rsi
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
jmp 0x14016ff6f
mov qword [rsi + 0x808], r15
mov qword [rsi + 0x810], 0
mov r8d, 0xc119dd7b
mov r9d, 0x80dd9613
mov r10d, 0xd685d619
nop dword [rax]
mov eax, dword [0x140225a18]
sub eax, dword [0x140225a1c]
mov ecx, eax
not ecx
and ecx, 0x38976684
and eax, 0xc768997b
sub eax, ecx
mov ecx, eax
not ecx
and ecx, 0x967eb405
mov edx, eax
and edx, 0x69814bfa
imul edx, ecx
mov ecx, eax
and ecx, 0x967eb405
or eax, 0x967eb405
imul eax, ecx
add eax, edx
cmp eax, 0xcfb2952a
je 0x140170140
nop
mov eax, dword [0x140225a20]
xor edx, edx
div dword [0x140225a24]
imul rax, r8
shr rax, 0x3f
or eax, 0x7c2c891e
mov rcx, qword [r14 + 0x100]
cmp eax, 0x9b189efa
je 0x140170140
mov rbx, rcx
xor rbx, 7
and rbx, rcx
mov r11, qword [rbx + 0x810]
mov eax, dword [0x140225a28]
xor edx, edx
div dword [0x140225a2c]
nop dword [rax]
mov edx, dword [str.8Gd]
mov r15d, dword [0x140225a34]
mov eax, edx
not eax
mov r12d, r15d
not r12d
mov r13d, eax
and r13d, 0x38306bd0
and edx, 0xc7cf942f
or edx, r13d
or eax, r12d
and r12d, 0x38306bd0
and r15d, 0xc7cf942f
or r15d, r12d
xor r15d, edx
not eax
or eax, r15d
mov edx, eax
not edx
and edx, 0x68e0ca2f
and eax, 0x971f35d0
sub eax, edx
add eax, 0x72d9fd76
cmp eax, 0x7ad948db
jb 0x140170090
cmp r11, 7
ja 0x140170150
mov eax, dword [0x140225a38]
mov edx, dword [str.DI:_1]
mov r11d, edx
and r11d, eax
add eax, edx
sub eax, r11d
xor eax, 0x9000040
mov edx, eax
or edx, 0xe49aec18
xor edx, 0x7fd210e9
or eax, 0x802def16
and eax, edx
cmp eax, 0x63a39c7b
jae 0x140170230
jmp 0x140170300
mov rax, qword [r14 + 0x100]
jmp 0x140170040
mov edx, dword [0x140225a48]
mov ebx, dword [0x140225a4c]
mov eax, edx
not eax
mov r15d, ebx
not r15d
mov r12d, eax
and r12d, 0x3822301
and edx, 0xa0004036
or edx, r12d
or eax, r15d
and r15d, 0x3822301
and ebx, 0xa0004036
or ebx, r15d
xor ebx, edx
not eax
or eax, ebx
or eax, 0x5c7d9cc8
mov edx, eax
xor edx, 0x26932a38
add edx, eax
and eax, 0xd96cd5c7
sub edx, eax
imul rax, rdx, 0x3c90bbaf
shr rax, 0x3d
cmp eax, 0xa9a99132
jbe 0x1401701d0
mov rax, rcx
lock cmpxchg qword [r14 + 0x100], r11
nop word cs:[rax + rax]
mov edx, dword [0x140225a50]
mov eax, dword [0x140225a54]
mov ebx, eax
not ebx
mov r15d, edx
and r15d, ebx
or ebx, edx
not ebx
imul ebx, r15d
mov r15d, edx
and r15d, eax
or edx, eax
imul edx, r15d
add edx, ebx
xor edx, 0xc0810200
mov rax, rcx
lock cmpxchg qword [r14 + 0x100], r11
or edx, 0x3e7e9c67
imul rdx, r10
shr rdx, 0x3e
cmp edx, 0xf261807b
je 0x1401701d0
jmp 0x1401702a0
mov edx, dword [0x140225a40]
mov eax, dword [0x140225a44]
mov r11d, eax
not r11d
mov r15d, edx
and r15d, r11d
or r11d, edx
not r11d
imul r11d, r15d
mov r15d, edx
and r15d, eax
or edx, eax
imul edx, r15d
add edx, r11d
xor edx, 0xe7bc2902
shr edx, 1
imul rdx, r9
shr rdx, 0x3e
or edx, 0xf69cc222
xor eax, eax
lock cmpxchg qword [rbx + 0x810], rsi
sete al
cmp edx, 0xde731e36
jb 0x140170300
test al, al
jne 0x140170310
nop word cs:[rax + rax]
mov eax, dword [0x140225a58]
xor edx, edx
div dword [0x140225a5c]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x11ce5403
and ecx, 0xee31abfc
imul ecx, edx
mov edx, eax
and edx, 0xee31abfc
or eax, 0xee31abfc
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xe867eb0
add ecx, ecx
sub eax, ecx
add eax, 0x8e867eb1
and eax, 0x64893134
cmp eax, 0x1175234e
ja 0x1401702a0
jmp 0x14016fff0
xor eax, eax
lock cmpxchg qword [rbx + 0x810], rsi
jmp 0x140170230
mov eax, dword [0x140225a60]
mov edx, dword [0x140225a64]
mov r8d, edx
not r8d
mov r9d, eax
and r9d, r8d
or r8d, eax
not r8d
imul r8d, r9d
mov r9d, eax
and r9d, edx
or eax, edx
imul eax, r9d
add eax, r8d
mov edx, eax
xor edx, 0x25dbf36e
xor eax, 0x12240490
and eax, 0x337ee6f0
mov r8d, edx
and r8d, 0xcc81190f
or r8d, eax
xor r8d, 0x8ecb72fe
and edx, 0xbdb5940e
or edx, r8d
mov eax, 0xf433ff53
imul rax, rdx
shr rax, 0x3d
cmp eax, 0xde33a590
jbe 0x140170390
mov rax, rcx
lock cmpxchg qword [r14 + 0x100], rsi
mov r15, qword [rbp - 0x28]
nop word cs:[rax + rax]
mov edx, dword [0x140225a68]
imul edx, dword [0x140225a6c]
mov rax, rcx
lock cmpxchg qword [r14 + 0x100], rsi
and edx, 0x9200141
xor edx, 0x4df01b32
cmp edx, 0x5c4b8cec
ja 0x1401703a0
mov rsi, qword [r15]
mov rcx, qword [rdi + 8]
sub rcx, 0xffffffffffffff80
sub rsp, 0x20
mov rdx, r15
call fcn.140158920
add rsp, 0x20
mov rdi, rsi
nop dword [rax + rax]
mov eax, dword [0x140225a70]
mov ecx, dword [0x140225a74]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
xor eax, 0x525975cc
add eax, 0x1e70b5ff
mov ecx, eax
and ecx, 0x74d8726c
add ecx, ecx
sub eax, ecx
add eax, 0xf4d8726c
cmp eax, 0x804f45c5
jb 0x1401703f0
test rdi, rdi
je 0x140170550
mov rax, qword [rdi + 0x818]
lea rcx, [rax - 1]
mov qword [rdi + 0x818], rcx
cmp rax, 1
jne 0x140170550
mov eax, dword [str.P.hZP]
xor edx, edx
div dword [0x140225a7c]
mov ecx, eax
xor ecx, 0xa2058010
xor eax, 0x18280008
or eax, 0xa705a010
or ecx, 0x58281008
and ecx, eax
and ecx, 0xff2db018
cmp ecx, 0xe029b09c
ja 0x1401704e5
mov eax, dword [0x140225a80]
imul eax, dword [0x140225a84]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0x35ac926
and ecx, 0xca536d9
imul ecx, edx
mov edx, eax
and edx, 0xca536d9
or eax, 0xca536d9
imul eax, edx
add eax, ecx
not eax
and eax, 0xd810100
mov qword [rdi + 0x880], 0
cmp eax, 0x560cdc2f
jbe 0x1401704f2
mov qword [rdi + 0x880], 0
jmp 0x140170498
cmp qword [rdi + 0x820], 0
jne 0x140170550
mov eax, 0xe5de5159
neg eax
ja 0x14017053b
mov eax, dword [0x140225a88]
or eax, dword [0x140225a8c]
xor eax, 0x66250fc7
mov esi, 0x87d1b221
imul rsi, rax
shr rsi, 0x3f
sub rsp, 0x20
mov rcx, rdi
call fcn.14015a140
add rsp, 0x20
cmp esi, 0x41bdf164
jne 0x140170550
sub rsp, 0x20
mov rcx, rdi
call fcn.14014fe50
add rsp, 0x20
jmp 0x140170505
mov eax, dword [0x140225a90]
mov ecx, dword [0x140225a94]
add eax, ecx
add eax, 0x8189d51
mov ecx, eax
not ecx
or eax, 0xa18821f2
or ecx, 0x5e77de0d
and ecx, eax
not ecx
imul eax, ecx, 0xfe764a82
cmp eax, 0x86bfa774
ja 0x140170550
movaps xmm6, xmmword [rbp - 0x10]
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret