Function at 0x1401c45c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x610
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x200], rcx
mov eax, 0x10
mov qword [rbp + 0x280], rax
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x208], rax
mov eax, 0x20
mov qword [rbp + 0x258], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x258]
mov rcx, rsp
mov qword [rbp + 0x210], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x220], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x230], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x238], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x240], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x248], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x250], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x258]
mov rcx, rsp
mov qword [rbp + 0x260], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x268], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x270], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x278], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0x280]
mov rcx, rsp
mov qword [rbp + 0x288], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x290], rax
sub rsp, 0x20
call fcn.1401c7764
add rsp, 0x20
mov qword [rbp + 0x2a8], rax
add rax, 0x50
mov qword [rbp + 0x298], rax
lea rax, [rbp + 0x580]
add rax, 8
mov qword [rbp + 0x2a0], rax
mov rax, qword [0x14022d3c0]
mov qword [rbp + 0x580], rax
mov rax, qword [0x14022d3c8]
mov qword [rbp + 0x588], rax
mov word [rbp + 0x57e], 0x3fc
lea rcx, [rbp + 0x57e]
sub rsp, 0x20
call fcn.140070140
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x2a8]
mov qword [rbp + 0x2b0], rcx
cmp byte [rax + 0x50], 0
jne 0x1401c5184
movabs rdx, 0x301e5db9fc7b0838
movabs rax, 0x301e5db9fc7b0828
xor rdx, rax
lea rcx, [rbp + 0x568]
sub rsp, 0x20
call fcn.1401c6e90
mov rax, qword [rbp + 0x2b0]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x530], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x538], rax
lea rcx, [rbp + 0x568]
mov rdx, 0xffffffff80000002
lea r8, [rbp + 0x530]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400e88cb
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5184
mov rax, qword [rbp + 0x568]
mov qword [rbp + 0x1f8], rax
mov al, byte [rbp + 0x570]
mov cl, 0x41
xor cl, 0x41
cmp al, cl
jne 0x1401c48b8
sub rsp, 0x20
call fcn.14008e6f0
add rsp, 0x20
mov rax, qword [rbp + 0x298]
cmp byte [rax], 0
je 0x1401c5193
jmp 0x1401c518e
movabs rdx, 0x6df9b4d53c7d595a
movabs rax, 0x6df9b4d53c7d5942
xor rdx, rax
lea rcx, [rbp + 0x550]
sub rsp, 0x20
call fcn.1401c6e90
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
movabs rdx, 0x1664e21b3fc90e8d
movabs rax, 0x1664e21b3fc90e95
xor rdx, rax
sub rsp, 0x20
call fcn.1401c6e90
add rsp, 0x20
mov qword [rbp + 0x540], 0
lea rax, [rbp + 0x540]
add rax, 8
mov qword [rbp + 0x1e0], rax
mov qword [rbp + 0x548], 0
mov ax, 0x55fb
xor ax, 0x51a3
mov word [rbp + 0x52e], ax
lea rcx, [rbp + 0x52e]
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov qword [rbp + 0x1e8], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1f7], al
jne 0x1401c4ee6
mov rax, qword [rbp + 0x1e8]
mov rcx, qword [rax]
mov qword [rbp + 0x508], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x510], rax
lea rcx, [rbp + 0x518]
lea rdx, [rbp + 0x508]
sub rsp, 0x20
call fcn.14001fd14
mov rcx, qword [rbp + 0x218]
add rsp, 0x20
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x1d0], rax
mov rax, qword [rbp + 0x520]
mov qword [rbp + 0x1d8], rax
movabs rdx, 0xa72ec268aa1205d7
movabs rax, 0xa72ec268aa1205cf
xor rdx, rax
sub rsp, 0x20
call fcn.1401c6e90
mov r9, qword [rbp + 0x1d0]
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0x218]
mov rdx, qword [rbp + 0x1f8]
mov r8, qword [rbp + 0x220]
add rsp, 0x20
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.1400e9b70
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1f7], al
jne 0x1401c4ee6
mov rax, qword [rbp + 0x210]
mov rcx, qword [rbp + 0x218]
mov rdx, qword [rcx + 0x10]
mov qword [rbp + 0x560], rdx
movups xmm0, xmmword [rcx]
movaps xmmword [rbp + 0x550], xmm0
mov rdx, qword [rcx + 0x10]
mov qword [rax + 0x10], rdx
movups xmm0, xmmword [rcx]
movups xmmword [rax], xmm0
add rax, 0x10
mov qword [rbp + 0x1c0], rax
sub rsp, 0x20
lea rcx, [rbp + 0x550]
call fcn.1400696fc
mov rcx, qword [rbp + 0x210]
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov cl, byte [rcx + 0x10]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x1cf], al
or al, cl
test al, 1
jne 0x1401c4b06
mov rdx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x210]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x540]
sub rsp, 0x20
call fcn.14001c4cf
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x1bf], al
jmp 0x1401c4b91
mov cl, byte [rbp + 0x1cf]
mov al, 1
test cl, 1
mov byte [rbp + 0x1f7], al
jne 0x1401c4ee6
jmp 0x1401c4b22
lea rcx, [rbp + 0x4f8]
sub rsp, 0x20
call fcn.14008e95c
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rax, qword [rbp + 0x4f8]
mov qword [rbp + 0x1a8], rax
mov rax, qword [rbp + 0x500]
mov qword [rbp + 0x1b0], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x1f7], al
jne 0x1401c4ee6
mov rax, qword [rbp + 0x1e0]
mov rcx, qword [rbp + 0x1b0]
mov rdx, qword [rbp + 0x1a8]
mov qword [rbp + 0x540], rdx
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x1bf], al
mov al, byte [rbp + 0x1bf]
mov byte [rbp + 0x1a7], al
mov eax, dword [0x1402228e0]
mov ecx, 0x495aeb0
xor ecx, 0x15439f90
xor eax, ecx
add eax, dword [0x1402228e4]
mov ecx, 0xc457de9c
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x8f2a4abd
xor eax, 0x403caca3
and eax, edx
mov edx, 0xffffffff
xor edx, 0xcf16e61e
and ecx, edx
or eax, ecx
add eax, 0x370416a5
add eax, 0x2142691c
mov ecx, 0xc15f7936
xor ecx, 0xf65b6f93
sub eax, ecx
cmp eax, 0xad7ad48e
jb 0x1401c6e46
mov cl, byte [rbp + 0x1a7]
mov rdx, qword [rbp + 0x1c0]
mov eax, dword [0x1402228e8]
mov r8d, dword [0x1402228ec]
and eax, r8d
and eax, 0xefa150e7
imul rax, rax, 0x56c67fdd
shr rax, 0x3d
imul eax, eax, 0x1c060e97
mov dl, byte [rdx]
test dl, dl
sete dl
test cl, cl
setne cl
or cl, dl
mov byte [rbp + 0x1a6], cl
cmp eax, 0xc05a21c6
jae 0x1401c6e46
mov al, byte [rbp + 0x1a6]
test al, 1
jne 0x1401c4f04
jmp 0x1401c4c68
mov rcx, qword [rbp + 0x540]
movabs rdx, 0xb596fc1b70e637aa
movabs rax, 0xb596fc1b70e637aa
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov byte [rbp + 0x1f7], al
je 0x1401c4ee6
mov eax, dword [0x1402228f0]
mov ecx, 0x6f906f7e
xor ecx, 0x36e8e59f
xor eax, ecx
xor edx, edx
div dword [0x1402228f4]
mov ecx, 0x86dcbe09
xor ecx, 0xdea94db5
xor eax, ecx
mov ecx, 0x720f8a47
xor ecx, 0x1bb6d7ab
imul eax, ecx
mov ecx, 0x5639b385
xor ecx, 0xa0a08d6f
xor edx, edx
div ecx
mov ecx, 0xe7c167c
xor ecx, 0xdfcb79b4
cmp eax, ecx
ja 0x1401c6e4f
mov eax, dword [0x1402228f8]
mov ecx, dword [0x1402228fc]
xor edx, edx
div ecx
and eax, 0x66af943
xor eax, 0x4a0001
add eax, 0x336814ba
mov dword [rbp + 0x1a0], eax
movups xmm0, xmmword [rbp + 0x540]
movaps xmmword [rbp + 0x4d0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x4e8]
lea rdx, [rbp + 0x4d0]
call fcn.14001fd14
mov rcx, qword [rbp + 0x230]
add rsp, 0x20
mov rdx, qword [rbp + 0x4e8]
mov rax, qword [rbp + 0x4f0]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400cf620
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x1a0]
mov cl, byte [rcx]
mov byte [rbp + 0x1a4], cl
test cl, cl
sete cl
and cl, dl
mov byte [rbp + 0x1a5], cl
cmp eax, 0x76738121
jae 0x1401c6e4f
mov al, byte [rbp + 0x1a4]
mov cl, byte [rbp + 0x1a5]
test cl, 1
mov byte [rbp + 0x1f7], al
jne 0x1401c4db5
jmp 0x1401c4ee6
mov rax, qword [rbp + 0x540]
mov qword [rbp + 0x4c0], rax
mov rax, qword [rbp + 0x548]
mov qword [rbp + 0x4c8], rax
lea rcx, [rbp + 0x580]
lea rdx, [rbp + 0x4c0]
sub rsp, 0x20
call fcn.140016d10
add rsp, 0x20
lea rcx, [rbp + 0x540]
sub rsp, 0x20
call fcn.1400123e0
mov rax, qword [rbp + 0x1e0]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x198], rax
cmp rax, 0
je 0x1401c4e74
mov rax, qword [rbp + 0x198]
mov rax, qword [rax]
movabs rdx, 0xd6ca87ad7a1c3ebe
movabs rcx, 0x96ca87ad7a1c3ebe
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x1401c4e74
mov rcx, qword [rbp + 0x198]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.140069710
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4ef7
lea rcx, [rbp + 0x550]
sub rsp, 0x20
call fcn.140069710
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c4ef7
mov rcx, qword [rbp + 0x1f8]
sub rsp, 0x20
call fcn.1400e9011
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
je 0x1401c5189
jmp 0x1401c518e
mov al, byte [rbp + 0x1f7]
mov byte [rbp + 0x197], al
jmp 0x1401c4f10
mov al, 1
mov byte [rbp + 0x196], al
jmp 0x1401c512e
mov al, byte [rbp + 0x1a7]
mov byte [rbp + 0x197], al
mov rax, qword [rbp + 0x1e0]
mov rcx, qword [rbp + 0x298]
mov dl, byte [rbp + 0x197]
mov byte [rbp + 0x187], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0x188], rax
cmp rax, 0
je 0x1401c50a7
mov rax, qword [rbp + 0x188]
mov rax, qword [rax]
movabs rdx, 0xa171114247de6ea2
movabs rcx, 0xe171114247de6ea2
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x9969f974301e2616
movabs r8, 0xd969f974301e2616
xor rdx, r8
or rax, rdx
and rax, rcx
movabs rcx, 0x8cec00b2ad263872
movabs rdx, 0x8cec00b2ad263872
xor rcx, rdx
cmp rax, rcx
jne 0x1401c50a7
mov eax, dword [0x140222900]
mov r8d, dword [0x140222904]
mov edx, 0xd4d08e1a
xor edx, 0x2b2f71e5
mov ecx, eax
xor ecx, edx
mov edx, r8d
and edx, ecx
mov ecx, 0xcedb23f7
xor ecx, 0x3124dc08
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0x51aff946
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x21790ca
mov edx, 0xffffffff
xor edx, 0x21790ca
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xa20ec767
mov edx, 0xffffffff
xor edx, 0xa20ec767
and eax, edx
sub eax, ecx
cmp eax, 0xa0851683
jae 0x1401c6e58
mov rcx, qword [rbp + 0x188]
mov eax, dword [0x140222908]
mov r8d, dword [0x14022290c]
mov edx, eax
and edx, r8d
shl edx, 1
add eax, r8d
sub eax, edx
mov r8d, 0xe01614f2
xor r8d, 0x2fa3bc42
xor edx, edx
div r8d
xor edx, edx
sub edx, 0xc34c4051
add eax, edx
sub eax, 0x84181de1
mov dword [rbp + 0x180], eax
sub rsp, 0x20
call fcn.140010918
mov eax, dword [rbp + 0x180]
add rsp, 0x20
cmp eax, 0xa0b8213
jbe 0x1401c6e58
jmp 0x1401c50a7
mov rcx, qword [rbp + 0x210]
sub rsp, 0x20
call fcn.140069710
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0xdd
xor dl, 0xdd
mov al, 1
cmp cl, dl
mov byte [rbp + 0x196], al
jne 0x1401c512e
lea rcx, [rbp + 0x550]
sub rsp, 0x20
call fcn.140069710
mov rcx, qword [rbp + 0x298]
mov al, byte [rbp + 0x187]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x11
xor dl, 0x10
mov byte [rbp + 0x17e], dl
cmp cl, 0
mov byte [rbp + 0x17f], al
je 0x1401c5122
mov al, byte [rbp + 0x17e]
mov byte [rbp + 0x17f], al
mov al, byte [rbp + 0x17f]
mov byte [rbp + 0x196], al
mov rax, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x1f8]
mov dl, byte [rbp + 0x196]
mov byte [rbp + 0x17d], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400e9011
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5184
mov al, byte [rbp + 0x17d]
mov rcx, qword [rbp + 0x298]
mov byte [rcx], al
cmp al, 0
jne 0x1401c5184
jmp 0x1401c5235
jmp 0x1401c5198
jmp 0x1401c5ba6
jmp 0x1401c5198
jmp 0x1401c5235
sub rsp, 0x20
call fcn.1401c6f7e
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x170], rax
cmp word [rax + 0x12], 1
jle 0x1401c521e
mov rax, qword [rbp + 0x170]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x1401c521e
mov rax, qword [rbp + 0x298]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401c6f90
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.1400a4060
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x16f], al
jne 0x1401c6c9e
sub rsp, 0x20
call fcn.1401c6fc5
add rsp, 0x20
mov rax, qword [rbp + 0x298]
mov al, byte [rax]
cmp al, 0
mov byte [rbp + 0x16f], al
jne 0x1401c6c9e
mov word [rbp + 0x4be], 0x44f
lea rcx, [rbp + 0x4be]
sub rsp, 0x20
call fcn.140070140
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x298]
mov qword [rbp + 0x160], rcx
cmp byte [rax], 0
jne 0x1401c5ae8
mov rcx, qword [rbp + 0x238]
mov edx, 0x10
sub rsp, 0x20
call fcn.1401c6e90
mov rax, qword [rbp + 0x160]
mov rcx, qword [rbp + 0x238]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x470], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x478], rax
mov rdx, 0xffffffff80000001
lea r8, [rbp + 0x470]
mov r9d, 0x20019
sub rsp, 0x20
call fcn.1400e88cb
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5ae8
mov rax, qword [rbp + 0x238]
mov rcx, qword [rax]
mov qword [rbp + 0x158], rcx
cmp byte [rax + 8], 0
jne 0x1401c5316
sub rsp, 0x20
call fcn.14008e6f0
add rsp, 0x20
mov rax, qword [rbp + 0x298]
cmp byte [rax], 0
je 0x1401c5af7
jmp 0x1401c5af2
lea rcx, [rbp + 0x4a0]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401c6e90
add rsp, 0x20
movabs rdx, 0xe60ed8e644dd381d
movabs rax, 0xe60ed8e644dd3805
xor rdx, rax
lea rcx, [rbp + 0x480]
sub rsp, 0x20
call fcn.1401c6e90
mov rax, qword [rbp + 0x240]
add rsp, 0x20
mov qword [rax], 0
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x140], rcx
mov qword [rax + 8], 0
mov word [rbp + 0x46e], 0x623
lea rcx, [rbp + 0x46e]
sub rsp, 0x20
call fcn.140070140
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x298]
mov qword [rbp + 0x148], rcx
mov cl, byte [rax]
mov dl, 0xa
xor dl, 0xa
mov al, 1
cmp cl, dl
mov byte [rbp + 0x157], al
jne 0x1401c5950
mov rax, qword [rbp + 0x148]
mov rcx, qword [rax]
mov qword [rbp + 0x430], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x438], rax
lea rcx, [rbp + 0x440]
lea rdx, [rbp + 0x430]
sub rsp, 0x20
call fcn.14001fd14
add rsp, 0x20
mov rax, qword [rbp + 0x440]
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x138], rax
lea rcx, [rbp + 0x450]
mov edx, 0x18
sub rsp, 0x20
call fcn.1401c6e90
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x158]
add rsp, 0x20
mov qword [rbp + 0x420], rcx
mov qword [rbp + 0x428], rax
lea rcx, [rbp + 0x450]
lea r8, [rbp + 0x420]
sub rsp, 0x20
call fcn.1400e9b70
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x157], al
jne 0x1401c5950
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x4b0], rax
movups xmm0, xmmword [rbp + 0x450]
movaps xmmword [rbp + 0x4a0], xmm0
mov rax, qword [rbp + 0x460]
mov qword [rbp + 0x490], rax
movups xmm0, xmmword [rbp + 0x450]
movaps xmmword [rbp + 0x480], xmm0
lea rax, [rbp + 0x490]
mov qword [rbp + 0x120], rax
sub rsp, 0x20
lea rcx, [rbp + 0x4a0]
call fcn.1400696fc
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov cl, byte [rbp + 0x490]
test cl, cl
sete cl
mov al, byte [rax]
test al, al
setne al
mov byte [rbp + 0x12f], al
or al, cl
test al, 1
jne 0x1401c5553
mov rcx, qword [rbp + 0x240]
mov rax, qword [rbp + 0x480]
mov qword [rbp + 0x410], rax
mov rax, qword [rbp + 0x488]
mov qword [rbp + 0x418], rax
lea rdx, [rbp + 0x410]
sub rsp, 0x20
call fcn.14001c4cf
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp + 0x11f], al
jmp 0x1401c55e1
mov cl, byte [rbp + 0x12f]
mov al, 1
test cl, 1
mov byte [rbp + 0x157], al
jne 0x1401c5950
jmp 0x1401c556f
lea rcx, [rbp + 0x400]
sub rsp, 0x20
call fcn.14008e95c
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rax, qword [rbp + 0x400]
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x408]
mov qword [rbp + 0x110], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x157], al
jne 0x1401c5950
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x110]
mov rdx, qword [rbp + 0x240]
mov r8, qword [rbp + 0x108]
mov qword [rdx], r8
mov qword [rax], rcx
xor eax, eax
mov byte [rbp + 0x11f], al
mov rcx, qword [rbp + 0x120]
mov al, byte [rbp + 0x11f]
mov byte [rbp + 0x107], al
mov cl, byte [rcx]
test cl, cl
sete cl
test al, al
setne al
or al, cl
test al, 1
jne 0x1401c596e
mov rcx, qword [rbp + 0x240]
xor eax, eax
cmp qword [rcx], 0
mov byte [rbp + 0x157], al
je 0x1401c5950
mov eax, dword [0x140222910]
mov r8d, dword [0x140222914]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
and eax, eax
mov ecx, 0xab3b37bc
xor ecx, 0x54c4c843
xor eax, ecx
mov ecx, 0x4f75e565
and ecx, 0x4f75e565
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x63b8c9b5
xor ecx, 0xdcab2883
sub eax, ecx
add eax, 0x31ee8d7f
add eax, 0xbf13e136
mov ecx, 0x9c4efbd5
xor edx, edx
div ecx
cmp eax, 0x3fe5317b
je 0x1401c6e61
mov rax, qword [rbp + 0x240]
mov ecx, dword [0x140222918]
mov edx, dword [0x14022291c]
add ecx, edx
mov edx, ecx
xor edx, 0xa7efd473
xor ecx, 0xe7362fd1
and ecx, edx
imul rcx, rcx, 0x145710fb
shr rcx, 0x3c
mov dword [rbp + 0x100], ecx
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x3e0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x3f0]
lea rdx, [rbp + 0x3e0]
call fcn.14001fd14
add rsp, 0x20
mov rcx, qword [rbp + 0x3f0]
mov rax, qword [rbp + 0x3f8]
mov qword [rbp + 0x3d0], rcx
mov qword [rbp + 0x3d8], rax
sub rsp, 0x20
lea rcx, [rbp + 0x3d0]
call fcn.1400cf620
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x100]
mov cl, byte [rcx]
mov byte [rbp + 0x105], cl
test cl, cl
sete cl
and cl, dl
mov byte [rbp + 0x106], cl
cmp eax, 0x975c8993
je 0x1401c56a6
mov al, byte [rbp + 0x105]
mov cl, byte [rbp + 0x106]
test cl, 1
mov byte [rbp + 0x157], al
jne 0x1401c5780
jmp 0x1401c5950
mov rax, qword [rbp + 0x240]
mov rcx, qword [rax]
mov qword [rbp + 0x3b0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x3b8], rax
lea rcx, [rbp + 0x3c0]
lea rdx, [rbp + 0x3b0]
mov r8d, 0x2f
mov r9d, 0x5c
sub rsp, 0x20
call fcn.1400455d0
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rax, qword [rbp + 0x3c0]
mov qword [rbp + 0xf0], rax
mov rax, qword [rbp + 0x3c8]
mov qword [rbp + 0xf8], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x157], al
jne 0x1401c5950
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0xf0]
mov qword [rbp + 0x3a0], rcx
mov qword [rbp + 0x3a8], rax
lea rcx, [rbp + 0x580]
lea rdx, [rbp + 0x3a0]
sub rsp, 0x20
call fcn.140016d10
mov rax, qword [rbp + 0x140]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0xe8], rax
cmp rax, 0
je 0x1401c58de
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0x5635a0d608851ee7
movabs r8, 0x1635a0d608851ee7
xor rdx, r8
movabs r8, 0xd10c6825f4f379ab
movabs r9, 0x2ef397da0b0c8654
xor r8, r9
xor rdx, r8
or rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
movabs rdx, 0x107d8d904b885ce0
movabs r8, 0xef82726fb477a31f
xor rdx, r8
xor rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x1401c58de
mov rcx, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
lea rcx, [rbp + 0x480]
sub rsp, 0x20
call fcn.140069710
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5961
lea rcx, [rbp + 0x4a0]
sub rsp, 0x20
call fcn.140069710
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5961
mov rcx, qword [rbp + 0x158]
sub rsp, 0x20
call fcn.1400e9011
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov al, byte [rax]
cmp al, 0
je 0x1401c5aed
jmp 0x1401c5af2
mov al, byte [rbp + 0x157]
mov byte [rbp + 0xe7], al
jmp 0x1401c597a
mov al, 1
mov byte [rbp + 0xe6], al
jmp 0x1401c5a8d
mov al, byte [rbp + 0x107]
mov byte [rbp + 0xe7], al
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x298]
mov dl, byte [rbp + 0xe7]
mov byte [rbp + 0xd7], dl
mov byte [rcx], 0
mov rax, qword [rax]
mov qword [rbp + 0xd8], rax
cmp rax, 0
je 0x1401c5a11
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0xa08e5198c662530d
movabs r8, 0x5f71ae67399dacf2
xor rdx, r8
xor rax, rdx
movabs rdx, 0x2bb97882aae26e3b
movabs r8, 0x6bb97882aae26e3b
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1401c5a11
mov rcx, qword [rbp + 0xd8]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
lea rcx, [rbp + 0x480]
sub rsp, 0x20
call fcn.140069710
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xe6], al
jne 0x1401c5a8d
lea rcx, [rbp + 0x4a0]
sub rsp, 0x20
call fcn.140069710
mov rcx, qword [rbp + 0x298]
mov al, byte [rbp + 0xd7]
add rsp, 0x20
mov dl, 1
mov byte [rbp + 0xd5], dl
cmp byte [rcx], 0
mov byte [rbp + 0xd6], al
je 0x1401c5a81
mov al, byte [rbp + 0xd5]
mov byte [rbp + 0xd6], al
mov al, byte [rbp + 0xd6]
mov byte [rbp + 0xe6], al
mov rax, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x158]
mov dl, byte [rbp + 0xe6]
mov byte [rbp + 0xd4], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400e9011
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c5ae8
mov al, byte [rbp + 0xd4]
mov rdx, qword [rbp + 0x298]
mov cl, 0x11
xor cl, 0x11
mov byte [rdx], al
cmp al, cl
jne 0x1401c5ae8
jmp 0x1401c5b8f
jmp 0x1401c5afc
jmp 0x1401c5ba6
jmp 0x1401c5afc
jmp 0x1401c5b8f
sub rsp, 0x20
call fcn.1401c6f7e
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0xc8], rax
cmp word [rax + 0x12], 1
jle 0x1401c5b8f
mov rax, qword [rbp + 0xc8]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x298f1a5d
xor ecx, 0xecfd383c
cmp eax, ecx
jne 0x1401c5b8f
mov rax, qword [rbp + 0x298]
mov cl, 0xe1
xor cl, 0xe1
mov byte [rax], cl
sub rsp, 0x20
call fcn.1401c6f90
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.1400a4060
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x16f], al
jne 0x1401c6c9e
sub rsp, 0x20
call fcn.1401c6fc5
add rsp, 0x20
mov rax, qword [rbp + 0x298]
mov al, byte [rax]
cmp al, 0
mov byte [rbp + 0x16f], al
jne 0x1401c6c9e
mov eax, dword [0x140222920]
mov edx, dword [0x140222924]
mov r8d, eax
and r8d, edx
mov ecx, 0x9e087b01
xor ecx, 0x9e087b03
imul ecx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x915512b4
xor ecx, 0xab1cf127
sub eax, ecx
mov ecx, 0x68dc19b7
xor ecx, 0x396d7254
add eax, ecx
sub eax, 0x7d2446e0
cmp eax, 0x2ab14a4e
jb 0x1401c6e6a
mov ecx, dword [0x140222928]
xor ecx, 0x53b423e8
mov edx, dword [0x14022292c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0x26abb164
xor r9d, 0xd9544e9b
mov r8d, edx
xor r8d, r9d
and eax, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
mov edx, 0xa85e40ff
xor edx, 0x57a1bf00
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
imul eax, eax, 0x8e49c8d3
xor eax, 0x6b7bb742
and eax, 0xb41a57b7
cmp qword [rbp + 0x580], 0
sete cl
mov byte [rbp + 0xc7], cl
cmp eax, 0x1096a511
je 0x1401c5bf5
mov al, byte [rbp + 0xc7]
test al, 1
jne 0x1401c5c7b
jmp 0x1401c5d23
mov rax, qword [rbp + 0x2a0]
mov rax, qword [rax]
mov qword [rbp + 0xb8], rax
cmp rax, 0
je 0x1401c6e3d
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rax]
movabs rdx, 0x79d2be763ca5026d
movabs rax, 0x862d4189c35afd92
xor rdx, rax
mov rax, rcx
xor rax, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
movabs rdx, 0x7c5fc37c7904370b
movabs r8, 0x83a03c8386fbc8f4
xor rdx, r8
xor rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401c6e3d
mov rcx, qword [rbp + 0xb8]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
jmp 0x1401c6e3d
mov rax, qword [rbp + 0x248]
mov qword [rax], 0
mov ecx, 0x7d5
sub rsp, 0x20
call fcn.1400704f9
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov dword [rbp + 0xac], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov ecx, 0x5a8
sub rsp, 0x20
call fcn.1400704f9
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov dword [rbp + 0xa8], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov eax, dword [rbp + 0xa8]
mov ecx, dword [rbp + 0xac]
movsxd rcx, ecx
movsxd rdx, eax
lea r8, [rbp + 0x398]
sub rsp, 0x20
call fcn.1401c6fef
add rsp, 0x20
test al, 1
jne 0x1401c5dc6
jmp 0x1401c5de1
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xb0], rax
jmp 0x1401c6c1a
mov rax, qword [rbp + 0x398]
mov qword [rbp + 0xa0], rax
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c5e23
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xb0], rax
jmp 0x1401c6c1a
mov ecx, 0xb28
sub rsp, 0x20
call fcn.1400704f9
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov dword [rbp + 0x9c], eax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rcx, qword [rbp + 0xa0]
mov eax, dword [rbp + 0x9c]
movsxd rdx, eax
lea r8, [rbp + 0x390]
sub rsp, 0x20
call fcn.1401c6fef
add rsp, 0x20
test al, 1
jne 0x1401c5e85
jmp 0x1401c5ea0
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xb0], rax
jmp 0x1401c6c1a
mov rax, qword [rbp + 0x390]
mov qword [rbp + 0x90], rax
movabs rcx, 0x5098d2d5c7778ca
movabs rdx, 0xfaf672d2dc7778ca
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401c5ef6
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xb0], rax
jmp 0x1401c6c1a
mov rax, qword [rbp + 0x90]
mov dword [rbp + 0x74], eax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001ec20
add rsp, 0x20
mov qword [rbp + 0x78], rax
movabs rcx, 0xcb4c559b6ed039c7
movabs rax, 0xcb4c559b6ed039c6
xor rcx, rax
movabs rdx, 0x9fc0e17b6713b6c2
movabs rax, 0x9fc0e17b6713b6d2
xor rdx, rax
movabs r8, 0xf97f97262a3cf50
movabs rax, 0xf97f97262a3cf58
xor r8, rax
sub rsp, 0x20
call fcn.14001d300
add rsp, 0x20
mov qword [rbp + 0x80], rax
mov word [rbp + 0x38e], 0x348
lea rcx, [rbp + 0x38e]
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov qword [rbp + 0x88], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rax, qword [rbp + 0x88]
mov rcx, qword [rax]
mov qword [rbp + 0x368], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x370], rax
lea rcx, [rbp + 0x378]
lea rdx, [rbp + 0x368]
sub rsp, 0x20
call fcn.14001fd14
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x268]
add rsp, 0x20
mov r8, qword [rbp + 0x378]
mov rdx, qword [rbp + 0x380]
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
movabs rdx, 0x2d5eac7ade6cb045
movabs rax, 0x2d5eac7ade6cb05d
xor rdx, rax
sub rsp, 0x20
call fcn.1401c6e90
mov rax, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x268]
add rsp, 0x20
mov byte [rcx + 0x10], 1
movabs r8, 0x1a289698d61054be
movabs r9, 0x1a289698d61054bf
xor r8, r9
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001bce0
mov rdx, qword [rbp + 0x268]
mov rcx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rcx], r8
mov r8, qword [rdx + 8]
mov qword [rcx + 8], r8
mov rdx, qword [rdx + 0x10]
mov qword [rcx + 0x10], rdx
mov cl, byte [rax]
mov dl, 0x14
xor dl, 0x14
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov ecx, 1
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.14001d300
add rsp, 0x20
mov qword [rbp + 0x58], rax
movabs rcx, 0x9322839bd361e623
movabs rax, 0x9322839bd361e63b
xor rcx, rax
movabs rdx, 0x776ae86477f836ea
movabs rax, 0x776ae86477f836e2
xor rdx, rax
sub rsp, 0x20
call fcn.14001ec20
add rsp, 0x20
mov qword [rbp + 0x60], rax
mov ax, 0x81ed
xor ax, 0x8bd4
mov word [rbp + 0x38c], ax
lea rcx, [rbp + 0x38c]
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x68], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rax, qword [rbp + 0x68]
mov rcx, qword [rax]
mov qword [rbp + 0x348], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x350], rax
lea rcx, [rbp + 0x358]
lea rdx, [rbp + 0x348]
sub rsp, 0x20
call fcn.14001fd14
mov rax, qword [rbp + 0x60]
add rsp, 0x20
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rbp + 0x360]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov cx, 0x3028
xor cx, 0x31bc
sub rsp, 0x20
call fcn.1400704f9
mov rdx, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x78]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rax, qword [rbp + 0x58]
mov rcx, qword [rbp + 0x60]
mov edx, dword [rbp + 0x74]
mov dword [rcx + 0x14], edx
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x580]
mov qword [rbp + 0x338], rcx
mov rcx, qword [rbp + 0x588]
mov qword [rbp + 0x340], rcx
movabs rcx, 0x2460ffee748bfd8d
movabs rdx, 0x2460ffee748bfd8c
xor rcx, rdx
mov qword [rbp + 0x328], rcx
mov qword [rbp + 0x330], rax
lea rcx, [rbp + 0x338]
lea rdx, [rbp + 0x328]
sub rsp, 0x20
call fcn.140169700
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x50], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x248]
mov qword [rax], rcx
mov edx, 1
sub rsp, 0x20
call fcn.14016a24d
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x48], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rcx, qword [rbp + 0x250]
mov ax, 0xdad3
xor ax, 0xde1b
mov word [rcx], ax
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x40], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
movabs rcx, 0x59617b48cf0fe17e
movabs rax, 0x59617b48cf0fe17c
xor rcx, rax
movabs rdx, 0xa84c1f7962f4a2fe
movabs rax, 0xa84c1f7962f4a2f6
xor rdx, rax
movabs r8, 0x7a16842a1c89cce1
movabs rax, 0x7a16842a1c89cce9
xor r8, rax
sub rsp, 0x20
call fcn.14001d300
add rsp, 0x20
mov qword [rbp + 0x28], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001ec20
mov rcx, qword [rbp + 0x260]
add rsp, 0x20
mov qword [rbp + 0x30], rax
mov word [rcx], 0x650
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x38], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rax, qword [rbp + 0x38]
mov rcx, qword [rax]
mov qword [rbp + 0x308], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x310], rax
lea rcx, [rbp + 0x318]
lea rdx, [rbp + 0x308]
sub rsp, 0x20
call fcn.14001fd14
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov rdx, qword [rbp + 0x318]
mov rcx, qword [rbp + 0x320]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x7eb
sub rsp, 0x20
call fcn.1400704f9
mov rdx, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x78]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov eax, dword [0x140222930]
xor eax, 0x8f2ef6b2
mov edx, dword [0x140222934]
or eax, eax
xor eax, 0xffffffff
mov r8d, 0x71672b58
xor r8d, 0x8e98d4a7
mov ecx, edx
xor ecx, r8d
mov r8d, 0x9d34fd8f
xor r8d, 0x62cb0270
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x3b2a6e2c
xor ecx, 0xffffffff
add eax, 0x3b2a6e2c
add eax, 1
add eax, ecx
mov ecx, 0xabc8693e
xor edx, edx
div ecx
mov ecx, 0xe753a485
xor edx, edx
div ecx
cmp eax, 0x663f0f77
ja 0x1401c6e73
mov rcx, qword [rbp + 0x30]
mov eax, dword [0x140222938]
xor edx, edx
div dword [0x14022293c]
mov r8d, 0x587a859b
xor edx, edx
div r8d
mov edx, dword [rbp + 0x74]
mov r9d, eax
mov rax, qword [rbp + 0x28]
mov r8d, r9d
and r8d, 0xd36ac3fb
xor r9d, 0xd36ac3fb
or r8d, r9d
or r8d, 0x90614
mov dword [rbp + 0x14], r8d
mov dword [rcx + 0x14], edx
mov qword [rax + 8], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001ec20
add rsp, 0x20
mov qword [rbp + 8], rax
mov word [rbp + 0x38a], 0x736
lea rcx, [rbp + 0x38a]
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x14]
mov qword [rbp + 0x18], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x27], cl
cmp eax, 0x41cea670
jbe 0x1401c6495
mov rax, qword [rbp + 0x78]
mov cl, byte [rbp + 0x27]
test cl, 1
mov qword [rbp + 0xb0], rax
jne 0x1401c655b
jmp 0x1401c6c1a
mov rcx, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x278]
mov rax, qword [rbp + 0x18]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001fd14
mov rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 8]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x615
sub rsp, 0x20
call fcn.1400704f9
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x78]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov r8, qword [rbp + 0x288]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x28]
mov rdx, qword [rbp + 0x40]
mov r9, qword [rbp + 8]
mov r10d, dword [rbp + 0x74]
mov dword [r9 + 0x14], r10d
mov qword [rax + 0x10], r9
mov r9, qword [rdx]
mov qword [rbp + 0x2f8], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x300], rdx
mov qword [r8], 2
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x2f8]
mov r9d, 1
sub rsp, 0x20
call fcn.140169f02
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rdx, qword [rbp]
mov rcx, qword [rbp + 0x248]
sub rsp, 0x20
call fcn.140169cae
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rcx, qword [rbp + 0x248]
mov rax, qword [rcx]
mov qword [rbp - 8], rax
sub rsp, 0x20
call fcn.1401696f4
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x6e
xor dl, 0x6e
cmp cl, dl
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov word [rbp + 0x388], 0x61b
lea rcx, [rbp + 0x388]
sub rsp, 0x20
call fcn.140070140
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp - 0x10], rdx
mov cl, byte [rcx]
mov dl, 0x3c
xor dl, 0x3c
cmp cl, dl
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov eax, dword [0x140222940]
mov r8d, dword [0x140222944]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0x3bd3c578
xor ecx, 0xc42c3a87
mov r9d, r8d
xor r9d, ecx
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x233862d9
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xfc9ede3
xor edx, 0x3f0c947a
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x30c57999
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x30c57999
or eax, 0x30c57999
imul eax, edx
add eax, ecx
mov ecx, 0xd043728d
xor ecx, 0xdd1206c4
xor eax, ecx
mov ecx, 0xed8ac558
xor ecx, 0xaebb183e
cmp eax, ecx
ja 0x1401c6e7c
mov rcx, qword [rbp + 0x290]
mov rax, qword [rbp - 0x10]
mov r8d, dword [0x140222948]
xor r8d, 0xcdea725a
mov r10d, dword [0x14022294c]
mov r11d, r10d
xor r11d, 0xffffffff
mov r9d, r8d
and r9d, r11d
mov edx, r8d
or edx, r11d
xor edx, 0xffffffff
imul edx, r9d
mov r9d, r8d
and r9d, r10d
or r8d, r10d
imul r8d, r9d
add r8d, edx
mov edx, r8d
and edx, edx
xor edx, 0xffffffff
xor edx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x99975a5a
or edx, r9d
mov r9d, 0xffffffff
xor r9d, 0x99975a5a
mov r10d, 0xffffffff
xor r10d, 0x99975a5a
or r9d, r10d
xor r8d, 0xffffffff
xor r9d, 0xffffffff
or r8d, r9d
mov r9d, 0x9f394944
xor r9d, 0x60c6b6bb
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
mov r8d, 0xb45c5a35
xor r8d, 0x2c21f352
or edx, r8d
or edx, 0xd5b2f876
mov dword [rbp - 0x1c], edx
mov rdx, qword [rax]
mov qword [rbp + 0x2e8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2f0], rax
lea rdx, [rbp + 0x2e8]
sub rsp, 0x20
call fcn.14001fd14
mov rax, qword [rbp + 0x290]
mov rdx, qword [rbp + 0x200]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov rdx, qword [rdx]
add rdx, 0x18
mov qword [rbp - 0x28], rdx
mov qword [rbp + 0x2d8], rcx
mov qword [rbp + 0x2e0], rax
lea rcx, [rbp + 0x2c8]
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp - 8]
mov r9, qword [rbp + 0x78]
add rsp, 0x20
lea r8, [rbp + 0x2d8]
lea rax, [rbp + 0x2c8]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140177f90
mov rcx, qword [rbp + 0x298]
add rsp, 0x30
mov edx, eax
mov eax, dword [rbp - 0x1c]
mov dword [rbp - 0x18], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x11], cl
cmp eax, 0xb7cb4d86
je 0x1401c6e7c
mov rax, qword [rbp + 0x78]
mov cl, byte [rbp - 0x11]
test cl, 1
mov qword [rbp + 0xb0], rax
jne 0x1401c6946
jmp 0x1401c6c1a
sub rsp, 0x20
mov cx, 0xf6
call fcn.14006fe60
mov rcx, qword [rbp + 0x298]
mov r8d, dword [rbp - 0x18]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov cl, byte [rcx]
test cl, cl
sete cl
movsxd r8, r8d
sub rdx, r8
setl dl
and cl, dl
test cl, 1
mov qword [rbp + 0xb0], rax
jne 0x1401c6990
jmp 0x1401c6c1a
movabs rcx, 0xeb8ab6fb4b61cecd
movabs rax, 0xeb8ab6fb4b61cefd
xor rcx, rax
movabs rdx, 0x19b032f1e238c413
movabs rax, 0x19b032f1e238c41b
xor rdx, rax
sub rsp, 0x20
call fcn.14001ec20
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov qword [rax], 0
mov ecx, 0x26598b34
xor ecx, 0x26598b35
mov dword [rax + 8], ecx
mov cx, 0x17ea
xor cx, 0x1136
sub rsp, 0x20
call fcn.1400704f9
mov rdx, qword [rbp + 0x298]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x40]
mov dword [rax + 0xc], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jne 0x1401c6bc7
mov ecx, 0x10
mov edx, 8
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x18]
mov qword [rbp - 0x48], rdx
mov dword [rdx + 8], eax
lea rcx, [rbp + 0x2b8]
sub rsp, 0x20
call fcn.140086b60
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp + 0x298]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov r8, qword [rbp + 0x2b8]
mov qword [rcx + 0x10], r8
mov r8, qword [rbp + 0x2c0]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jne 0x1401c6bc7
mov ecx, dword [0x140222950]
add ecx, dword [0x140222954]
and ecx, ecx
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0xc3f41f6c
mov edx, 0xffffffff
xor edx, 0xc3f41f6c
or eax, edx
mov edx, 0xea260e7b
xor edx, 0x15d9f184
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x46835cc7
or edx, 0x46835cc7
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x46835cc7
mov edx, 0xc6d2e03
xor edx, 0xf392d1fc
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x134ddb58
xor edx, edx
div ecx
mov ecx, 0x59cfec01
xor ecx, 0x89a6980a
cmp eax, ecx
je 0x1401c6e85
mov rdx, qword [rbp - 0x40]
mov rax, qword [rbp + 0x200]
mov ecx, dword [0x140222958]
or ecx, dword [0x14022295c]
mov r8d, 0xc7422618
xor r8d, 0xb24e97f6
sub ecx, r8d
xor ecx, 0x8deaa502
mov r9d, ecx
and r9d, 0x3808d735
mov r8d, 0xcf07c862
xor r8d, 0xcf07c860
imul r8d, r9d
add ecx, 0x3808d735
sub ecx, r8d
mov dword [rbp - 0x50], ecx
mov rcx, qword [0x14022d3c0]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x14022d3c8]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.14002c7a0
mov rcx, qword [rbp + 0x298]
mov eax, dword [rbp - 0x50]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x49], cl
cmp eax, 0x9f8705ef
jbe 0x1401c6b18
mov rax, qword [rbp - 0x48]
mov cl, byte [rbp - 0x49]
mov byte [rbp - 0x31], cl
mov qword [rbp - 0x30], rax
jmp 0x1401c6bc7
mov rax, qword [rbp + 0x298]
mov dl, byte [rbp - 0x31]
mov rcx, qword [rbp - 0x30]
mov byte [rbp - 0x51], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401c40b0
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0xb0], rax
jne 0x1401c6c1a
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x298]
mov dl, byte [rbp - 0x51]
mov byte [rcx], dl
mov qword [rbp + 0xb0], rax
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x248]
mov rdx, qword [rbp + 0xb0]
mov qword [rbp - 0x60], rdx
mov dl, byte [rcx]
mov byte [rbp - 0x53], dl
mov byte [rcx], 0
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140169695
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x52], al
jne 0x1401c6c95
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.1400e0869
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x52], al
jne 0x1401c6c95
mov al, byte [rbp - 0x53]
mov rcx, qword [rbp + 0x298]
mov byte [rcx], al
mov byte [rbp - 0x52], al
mov al, byte [rbp - 0x52]
mov byte [rbp + 0x16f], al
mov rcx, qword [rbp + 0x2a0]
mov al, byte [rbp + 0x16f]
mov byte [rbp - 0x71], al
mov rcx, qword [rcx]
mov qword [rbp - 0x70], rcx
cmp rcx, 0
mov byte [rbp - 0x61], al
je 0x1401c6daf
mov al, byte [rbp - 0x71]
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rcx]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0xb6b0b9571cdcb6ae
movabs r9, 0x494f46a8e3234951
xor r8, r9
xor rdx, r8
and rcx, rdx
movabs rdx, 0x154d5c7d10049745
movabs r8, 0x554d5c7d10049745
xor rdx, r8
movabs r8, 0xb2f73ba98e4a0fb8
movabs r9, 0x4d08c45671b5f047
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
and rdx, r8
movabs r8, 0xb4ba3e36d71f1839
movabs r9, 0x4b45c1c928e0e7c6
xor r8, r9
xor rcx, r8
movabs r8, 0x3d95bd5e774c88c
movabs r9, 0xfc26a42a188b3773
xor r8, r9
xor rdx, r8
and rcx, rdx
movabs rdx, 0xdf064be21cce78c0
movabs r8, 0xdf064be21cce78c0
xor rdx, r8
cmp rcx, rdx
mov byte [rbp - 0x61], al
jne 0x1401c6daf
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.140010918
mov rax, qword [rbp + 0x298]
add rsp, 0x20
mov al, byte [rax]
mov byte [rbp - 0x61], al
mov al, byte [rbp - 0x61]
cmp al, 0
je 0x1401c6e3d
sub rsp, 0x20
call fcn.1401c6f7e
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
mov ax, word [rax + 0x12]
mov cx, 0x485d
xor cx, 0x485c
cmp ax, cx
jle 0x1401c6e3d
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x1401c6e3d
mov rax, qword [rbp + 0x298]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401c6f90
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.1400a4060
mov rax, qword [rbp + 0x298]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401c6e3d
sub rsp, 0x20
call fcn.1401c6fc5
add rsp, 0x20
lea rsp, [rbp + 0x590]
pop rbp
ret
in eax, dx
jg 0x1401c6de8
scasb al, byte [rdi]
jmp 0x1401c4c03
movabs byte [0xffffde97e928bfac], al
jmp 0x1297bfd72
jle 0x1401c6e9b
invalid
rol byte [rdi], 1
pushfq
add ch, cl
invalid
hlt
scasd eax, dword [rdi]
or byte [rax], bl
sbb eax, 0xfff926e9
invalid
invalid
and al, 0x38