Function at 0x1400c1690
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x300
lea rbp, [rsp + 0x80]
mov eax, 0x10
mov qword [rbp + 0x188], rax
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x168], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x170], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x178], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x180], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, qword [rbp + 0x188]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.1401d4340
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x198], rax
sub rsp, 0x20
call fcn.1400c4377
add rsp, 0x20
add rax, 0x60
mov qword [rbp + 0x1a0], rax
mov rax, qword [0x1401fb8d0]
cmp rax, 0
mov qword [rbp + 0x1a8], rax
jne 0x1400c2fbd
mov ecx, 0x60
sub rsp, 0x20
call fcn.14009db4c
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x160], rcx
cmp byte [rax], 0
jne 0x1400c2fbd
mov rax, qword [rbp + 0x160]
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x158], rax
cmp rax, 0
jne 0x1400c184d
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
lea rax, [0x1401da160]
mov qword [rcx], rax
lea rax, [0x1401e9f50]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401e9fa0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401e9fa8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1401e9f50]
lea r8, [0x1401e9f6f]
lea r9, [0x1401e9f87]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x15ac3c38
call fcn.14001331d
add rsp, 0x30
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x140], rcx
mov rcx, rax
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jmp 0x1400c2def
mov rax, qword [rbp + 0x158]
mov rcx, rax
and rcx, 0x3f0
movabs rdx, 0xfc554d215eeb0021
movabs r8, 0xfc554d215eeb0023
xor rdx, r8
imul rcx, rdx
xor rax, 0x3f0
add rax, rcx
mov rax, qword [rax]
mov qword [rbp + 0x138], rax
cmp rax, 0
jne 0x1400c1943
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.1400133d1
add rsp, 0x20
mov rcx, rax
lea rax, [0x1401da160]
mov qword [rcx], rax
lea rax, [0x1401e9f50]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401e9fa0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401e9fa8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x25dbf7ca4b5fb953
movabs rdx, 0xda24083595920636
xor rax, rdx
lea rdx, [0x1401e9f50]
lea r8, [0x1401e9f6f]
lea r9, [0x1401e9f87]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14001331d
add rsp, 0x30
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x140], rcx
mov rcx, rax
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jmp 0x1400c2def
mov rax, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x158]
movabs rdx, 0x4f4463d925f3866d
movabs r8, 0x4f4463d925f3866d
xor rdx, r8
sub rdx, rcx
xor ecx, ecx
sub rcx, 0x80
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x128], rcx
mov ecx, 2
cqo
idiv rcx
mov rcx, rax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x130], rcx
movabs rcx, 0xb7898f01964a6fb5
movabs rdx, 0x487670fe69b5904a
xor rcx, rdx
cmp rax, rcx
jge 0x1400c1ac5
mov ecx, dword [0x1401da1f8]
xor ecx, 0xfb772e26
mov edx, dword [0x1401da1fc]
xor edx, 0x61c864d5
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0xf67b0202
xor ecx, 0xcf9503d
add eax, ecx
xor eax, 0xedefa6f3
mov ecx, 0x56829289
xor edx, edx
div ecx
cmp eax, 0x74209f3c
je 0x1400c2fcd
mov rcx, qword [rbp + 0x130]
mov eax, dword [0x1401da200]
xor eax, 0xe1aca383
mov edx, dword [0x1401da204]
xor edx, 0x7a56fb2b
add eax, edx
mov edx, 0xd13b23e3
xor edx, 0xe4d04101
imul eax, edx
sub eax, 0xcdd2874e
mov edx, 0xffffffff
xor edx, 0x5678a2aa
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
mov dword [rbp + 0x124], eax
movabs rdx, 0x3de6677b1a8182ac
movabs rax, 0x3de6677b1a8182ac
xor rdx, rax
movabs r8, 0xaeb7245cc45e874e
movabs rax, 0xd148dba33ba178b1
xor r8, rax
sub rsp, 0x20
call fcn.14000d167
mov eax, dword [rbp + 0x124]
add rsp, 0x20
cmp eax, 0xbde7da06
je 0x1400c1a07
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x140], rcx
mov rcx, rax
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jmp 0x1400c2def
mov rdx, qword [rbp + 0x130]
lea rcx, [rbp + 0x270]
sub rsp, 0x20
call fcn.140096f70
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rax, qword [rbp + 0x270]
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x118], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x140], rcx
mov rcx, rax
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jne 0x1400c2def
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp + 0x110]
mov qword [rbp + 0x260], rcx
mov qword [rbp + 0x268], rax
lea rcx, [rbp + 0x260]
sub rsp, 0x20
call fcn.1400c3027
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x118]
mov qword [rbp + 0x108], rdx
mov dl, byte [rcx]
mov r8b, 0x19
xor r8b, 0x19
xor ecx, ecx
cmp dl, r8b
mov rdx, rcx
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jne 0x1400c2def
mov rax, qword [rbp + 0x138]
cmp rax, 0
jge 0x1400c1bf6
mov rcx, qword [rbp + 0x138]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000d167
mov rax, qword [rbp + 0x118]
add rsp, 0x20
xor ecx, ecx
mov rdx, rcx
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jmp 0x1400c2def
xor eax, eax
mov qword [rbp + 0x100], rax
mov rax, qword [rbp + 0x100]
mov qword [rbp + 0xf8], rax
mov eax, dword [0x1401da208]
xor edx, edx
div dword [0x1401da20c]
mov edx, eax
xor edx, 0x76d361b0
mov ecx, 0x9c258a2e
xor ecx, 0x63da75d1
xor edx, ecx
and edx, 0x76d361b0
mov ecx, 0xa35ee556
xor ecx, 0xa35ee554
imul ecx, edx
sub ecx, 0x76d361b0
sub eax, ecx
mov ecx, 0x409f4581
xor ecx, 0x8f53e409
add eax, ecx
add eax, 0x87554dd1
sub eax, 0xcfcca188
mov ecx, 0xf38e630e
xor ecx, 0x358f326f
xor edx, edx
div ecx
cmp eax, 0x32345d5b
je 0x1400c2fd6
mov rdx, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x138]
mov eax, dword [0x1401da210]
mov ecx, dword [0x1401da214]
xor ecx, 0xb6a6e996
sub eax, ecx
sub eax, 0xe47c5a63
add eax, 0x9cdfc18a
add eax, 0xe47c5a63
xor eax, 0xffffffff
mov r9d, 0x769c023e
xor r9d, 0xce773a56
mov ecx, 0xbbd5885a
xor ecx, 0x442a77a5
xor r9d, ecx
mov ecx, 0xffffffff
xor ecx, 0x88768c84
or eax, r9d
or ecx, 0x88768c84
mov r9d, 0x772c95ff
xor r9d, 0x88d36a00
xor eax, r9d
and eax, ecx
mov r10d, 0x29123cfe
xor r10d, 0x933a3189
mov ecx, 0x8ac691ee
xor ecx, 0x75396e11
xor r10d, ecx
mov r9d, eax
and r9d, r10d
mov ecx, eax
or ecx, r10d
xor ecx, 0xffffffff
imul ecx, r9d
mov r9d, eax
and r9d, 0xba280d77
or eax, 0xba280d77
imul eax, r9d
add eax, ecx
mov ecx, 0x679cac81
xor ecx, 0x565be39a
cmp rdx, r8
sete dl
mov byte [rbp + 0xf7], dl
cmp eax, ecx
je 0x1400c2fd6
mov al, byte [rbp + 0xf7]
test al, 1
jne 0x1400c1ea1
jmp 0x1400c1d66
mov eax, dword [0x1401da218]
mov edx, dword [0x1401da21c]
xor edx, 0x1695ad4
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xd2e68188
mov r8d, 0xffffffff
xor r8d, 0xd2e68188
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xd2e68188
or eax, 0xd2e68188
imul eax, edx
add eax, ecx
sub eax, 0xacfed17d
and eax, 0x66dc47a7
cmp eax, 0x94d65adc
je 0x1400c2fdf
mov rdx, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x108]
mov r9, qword [rbp + 0x128]
mov eax, dword [0x1401da220]
xor eax, 0x363da6cc
imul eax, dword [0x1401da224]
mov ecx, 0x7c813c8f
xor ecx, 0x85446eda
imul eax, ecx
mov ecx, eax
xor ecx, 0xeab6d9c
mov r10d, 0x4a348dfd
xor r10d, 0xb5cb7202
xor ecx, r10d
or eax, 0xeab6d9c
and eax, ecx
sub eax, 0xbd8edd3f
mov ecx, 0x795aa492
xor ecx, 0xd7501952
mov r9b, byte [r9 + rdx]
mov byte [r8 + rdx], r9b
movabs r9, 0xaf3fb2e1fad074dc
movabs r8, 0xaf3fb2e1fad074dd
xor r9, r8
mov r8, rdx
and r8, r9
shl r8, 1
movabs r9, 0xaca9c261ff2b4976
movabs r10, 0xaca9c261ff2b4977
xor r9, r10
xor rdx, r9
add rdx, r8
mov qword [rbp + 0xe8], rdx
cmp eax, ecx
je 0x1400c2fdf
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x100], rax
jmp 0x1400c1bff
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x110]
mov qword [rbp + 0x250], rdx
mov qword [rbp + 0x258], rax
lea rdx, [rbp + 0x250]
sub rsp, 0x20
call fcn.1400c3060
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x118]
add rsp, 0x20
mov r8, qword [rcx]
mov qword [rbp + 0xd8], r8
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xe0], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov rdx, rcx
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jne 0x1400c2def
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x178]
mov rax, qword [rbp + 0xe0]
mov r8, qword [rbp + 0xd8]
mov qword [rdx], r8
mov qword [rdx + 8], rax
mov r9d, 1
lea rax, [0x1401e9fd0]
sub rsp, 0x30
mov r8d, r9d
mov qword [rsp + 0x20], rax
call fcn.14003d920
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x30
mov rdx, qword [rax]
mov qword [rbp + 0xb8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc0], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
jne 0x1400c2d0b
mov rdx, qword [rbp + 0x180]
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xb8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x240]
xor r8d, r8d
mov r9, 0xffffffffffffffff
sub rsp, 0x20
call fcn.14003cef0
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x98], rax
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0xa0], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rax
jne 0x1400c2c67
sub rsp, 0x20
call fcn.14001b961
add rsp, 0x20
mov rdx, rax
lea rcx, [0x1401fb8d0]
sub rsp, 0x20
call fcn.14001b410
mov rax, qword [rbp + 0x190]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
add rax, 8
mov qword [rbp + 0x58], rax
lea rax, [rbp + 0x230]
add rax, 8
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x200]
add rax, 8
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x1e0]
add rax, 8
mov qword [rbp + 0x70], rax
lea rax, [rbp + 0x1c0]
add rax, 8
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x1d0]
add rax, 8
mov qword [rbp + 0x80], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x88], rax
xor eax, eax
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x90]
mov qword [rbp + 0x50], rdx
cmp rdx, r8
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rax
je 0x1400c2c67
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x190]
mov r9, qword [rbp + 0x50]
mov rax, qword [rbp + 0xa0]
add rax, 8
shl r9, 4
add rax, r9
mov qword [r8], 0
mov qword [rdx], 0
mov qword [rbp + 0x230], 0
mov qword [rcx], 0
mov rcx, qword [rax]
mov qword [rbp + 0x1f0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1f8], rax
lea rcx, [rbp + 0x200]
lea rdx, [rbp + 0x1f0]
mov r8d, 0x3d
mov r9d, 2
sub rsp, 0x20
call fcn.14003cef0
mov rcx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, qword [rbp + 0x200]
mov qword [rbp + 0x30], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x38], rcx
mov cl, byte [rax]
mov dl, 0x40
xor dl, 0x40
xor eax, eax
cmp cl, dl
mov rcx, rax
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
jne 0x1400c2afd
mov rax, qword [rbp + 0x30]
cmp rax, 0
jg 0x1400c2587
mov eax, dword [0x1401da228]
mov ecx, 0xff8370e7
xor ecx, 0x23a054d4
xor eax, ecx
mov edx, dword [0x1401da22c]
xor edx, 0xec18a02f
mov r8d, 0xfe9cc380
xor r8d, 0x1633c7f
mov ecx, eax
xor ecx, r8d
mov r8d, eax
xor r8d, 0xffffffff
and ecx, r8d
mov r9d, 0x1fe2fb1b
xor r9d, 0xe01d04e4
mov r8d, edx
xor r8d, r9d
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
or ecx, r8d
mov r8d, 0x4774c083
xor r8d, 0xb88b3f7c
xor ecx, r8d
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0x91886dae
mov edx, 0x391bd404
xor edx, 0xc6e42bfb
xor eax, edx
or ecx, 0x91886dae
and ecx, eax
mov edx, 0x878dd536
xor edx, 0x69195844
mov eax, ecx
or eax, edx
mov edx, 0xf280d078
xor edx, 0xd7f2f87
xor eax, edx
or ecx, 0xee948d72
mov edx, 0xf7fae13c
xor edx, 0x8051ec3
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xe60e0976
xor edx, edx
div ecx
mov ecx, 0xc62ec738
xor ecx, 0xa6f69dcb
cmp eax, ecx
jae 0x1400c2fe8
mov eax, dword [0x1401da230]
add eax, dword [0x1401da234]
mov ecx, 0xfe55e056
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x60]
mov ecx, eax
and ecx, 0x351730bf
mov r8d, 0x2ca6fac1
xor r8d, 0xe22c7ac3
mov eax, 0x52349f3e
xor eax, 0xadcb60c1
xor r8d, eax
mov eax, ecx
xor eax, r8d
and eax, ecx
mov ecx, 0x32272259
xor ecx, 0x6ce92bf6
mov rdx, qword [rdx]
mov qword [rbp + 0x20], rdx
cmp rdx, 0
sete dl
mov byte [rbp + 0x2f], dl
cmp eax, ecx
jae 0x1400c22a9
mov al, byte [rbp + 0x2f]
test al, 1
jne 0x1400c240e
jmp 0x1400c231f
mov eax, dword [0x1401da238]
xor eax, dword [0x1401da23c]
sub eax, 0x7cb50c6b
imul eax, eax, 0xbacc9dd7
imul eax, eax, 0xe15ee62b
cmp eax, 0x66f72dde
jae 0x1400c2ff1
mov rcx, qword [rbp + 0x20]
mov eax, dword [0x1401da240]
mov edx, dword [0x1401da244]
xor edx, 0xffffffff
add eax, edx
mov edx, 0xb0aff155
xor edx, 0xb0aff154
add eax, edx
mov edx, 0x1a1df7e9
xor edx, 0xc13807fb
add eax, edx
mov r8d, 0x346065ab
xor edx, edx
div r8d
xor edx, edx
sub edx, eax
mov eax, 0x7e261d6b
xor eax, 0x7e261d6b
mov r8d, 0xaccd3b89
xor r8d, 0xc5bda11b
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov rdx, qword [rcx]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0x4000000000000000
movabs r8, 0x4000000000000000
or rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
sete cl
mov byte [rbp + 0x1f], cl
cmp eax, 0x2d603e05
jbe 0x1400c2347
mov al, byte [rbp + 0x1f]
test al, 1
jne 0x1400c23fd
jmp 0x1400c240e
mov rcx, qword [rbp + 0x20]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov qword [rbp + 0x10], rax
cmp rax, 0
je 0x1400c2558
mov rcx, qword [rbp + 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xec5e7e02325818c6
movabs rdx, 0xec5e7e02325818c6
xor rcx, rdx
cmp rax, rcx
jne 0x1400c2558
mov eax, dword [0x1401da248]
xor eax, dword [0x1401da24c]
imul eax, eax, 0x4c50d574
mov ecx, 0x6a45f70d
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x42fd7b55
mov edx, 0x9fbbab21
xor edx, 0x8b8d0d28
mov eax, 0x5efb46fc
xor eax, 0xa104b903
xor edx, eax
mov r9d, 0xb8cf1c4e
xor r9d, 0xacf9ba47
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0x1436a609
mov r10d, edx
and r10d, 0x42fd7b55
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x1436a609
and ecx, edx
or eax, ecx
cmp eax, 0x6ac23f53
ja 0x1400c2ffa
mov rcx, qword [rbp + 0x10]
mov eax, dword [0x1401da250]
xor eax, 0x55b4340f
mov edx, dword [0x1401da254]
xor edx, 0xf1caf876
add eax, edx
mov edx, 0x42a1411d
xor edx, 0x713c3069
add eax, edx
mov edx, 0x58cb0bb2
xor edx, 0x58cb0bb2
mov r8d, 0x9d433a25
xor r8d, 0x464eebad
sub edx, r8d
sub eax, edx
xor eax, 0x5c81d696
mov dword [rbp + 0xc], eax
sub rsp, 0x20
call fcn.14000eb2e
mov eax, dword [rbp + 0xc]
add rsp, 0x20
cmp eax, 0x896455d8
jae 0x1400c24e9
jmp 0x1400c2558
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x30]
mov qword [rbp + 0x1e0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1e0]
sub rsp, 0x20
call fcn.140018e70
add rsp, 0x20
jmp 0x1400c2c53
mov eax, dword [0x1401da258]
mov ecx, 0xf6905936
xor ecx, 0x314268bc
xor eax, ecx
sub eax, dword [0x1401da25c]
imul eax, eax, 0xea908b4d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x51036c7e
mov r8d, 0xffffffff
xor r8d, 0x51036c7e
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x2d509fa3
xor r8d, 0x7c53f3dd
mov edx, eax
and edx, r8d
or eax, 0x51036c7e
imul eax, edx
add eax, ecx
sub eax, 0xc1525298
mov ecx, 0xaf242176
xor ecx, 0xef1ef534
add eax, ecx
add eax, 0xc1525298
mov ecx, 0xacc84909
xor ecx, 0x9135bb91
cmp eax, ecx
ja 0x1400c3003
mov rcx, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x38]
mov r8d, dword [0x1401da260]
imul r8d, dword [0x1401da264]
mov r9d, r8d
xor r9d, 0xffffffff
mov r10d, 0x7dc500c4
xor r10d, 0x76836906
and r10d, r9d
mov r11d, 0xffffffff
xor r11d, 0xb4669c2
mov r9d, r8d
and r9d, r11d
imul r9d, r10d
mov r11d, 0x6ca13e60
xor r11d, 0x67e757a2
mov r10d, r8d
and r10d, r11d
or r8d, 0xb4669c2
imul r8d, r10d
add r8d, r9d
mov r9d, r8d
and r9d, 0xa22af7b0
shl r9d, 1
add r8d, 0xa22af7b0
sub r8d, r9d
mov r9d, 0x93d31e88
xor r9d, 0x63c29788
sub r8d, r9d
mov dword [rbp + 4], r8d
mov r8, qword [rax + 8]
mov qword [rdx], r8
mov rax, qword [rax + 0x10]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001976a
mov rcx, qword [rbp + 0x190]
mov eax, dword [rbp + 4]
add rsp, 0x20
mov rcx, qword [rcx]
movabs rdx, 0x17afe36c35fd0418
movabs r8, 0x17afe36c35fd0418
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0xb], cl
cmp eax, 0x6000e5ac
ja 0x1400c260c
mov al, byte [rbp + 0xb]
test al, 1
jne 0x1400c270c
jmp 0x1400c28d2
mov rax, qword [rbp + 0x60]
mov rax, qword [rax]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x1400c275d
mov rax, qword [rbp - 8]
mov rax, qword [rax]
movabs rcx, 0xbe98a3da2fc2b4a
movabs rdx, 0x4be98a3da2fc2b4a
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1400c275d
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov eax, dword [0x1401da268]
xor eax, 0x7d2d25b6
mov edx, dword [0x1401da26c]
mov ecx, edx
and ecx, eax
mov r8d, 0xae70f073
xor r8d, 0x518f0f8c
xor ecx, r8d
add eax, edx
add eax, 1
add eax, ecx
and eax, 0xffee8d07
xor ecx, ecx
sub ecx, 0xac02509a
add eax, ecx
imul eax, eax, 0xd43abaf4
mov ecx, 0x250a1b59
xor ecx, 0x2a9d0ac4
cmp eax, ecx
jb 0x1400c300c
mov rcx, qword [rbp + 0x58]
mov eax, dword [0x1401da270]
xor eax, 0xb95c651f
imul eax, dword [0x1401da274]
mov edx, 0x5f078582
xor edx, 0xa6dab600
add eax, edx
mov r9d, 0xffffffff
xor r9d, 0x4137d32f
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0x96c3736e
xor r9d, 0x693c8c91
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x4137d32f
mov r9d, 0xf652398b
xor r9d, 0xb765eaa4
or eax, r9d
imul eax, r8d
add eax, edx
xor edx, edx
sub edx, 0x825c5b8e
add eax, edx
mov rcx, qword [rcx]
mov qword [rbp - 0x18], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 9], cl
cmp eax, 0xf5411036
jae 0x1400c300c
mov al, byte [rbp - 9]
test al, 1
jne 0x1400c28a0
jmp 0x1400c2856
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x2423fb96bac45256
movabs r8, 0x6423fb96bac45256
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1400c28a0
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x30]
mov qword [rbp + 0x1d0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1d0]
sub rsp, 0x20
call fcn.140018e70
add rsp, 0x20
jmp 0x1400c2c53
mov rax, qword [rbp + 0x30]
movabs rcx, 0xb69273a40dd42c41
movabs rdx, 0xb69273a40dd42c40
xor rcx, rdx
cmp rax, rcx
jne 0x1400c2a04
mov eax, dword [0x1401da278]
mov ecx, dword [0x1401da27c]
mov edx, 0x995a0221
xor edx, 0x1dd88562
xor ecx, edx
xor edx, edx
div ecx
mov r8d, 0x725cdea6
xor r8d, 0x9d7c075e
mov ecx, 0x8f70b163
xor ecx, 0x708f4e9c
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0xc004a128
xor r8d, 0x3ffb5ed7
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xef20d9f8
or eax, 0xef20d9f8
imul eax, edx
add eax, ecx
sub eax, 0x7b7ef281
and eax, 0x93e7065c
mov ecx, 0xa8339
xor ecx, 0x43b94179
cmp eax, ecx
je 0x1400c3015
mov eax, dword [0x1401da280]
xor eax, 0xfecf73d6
mov edx, dword [0x1401da284]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov edx, 0xffffffff
xor edx, 0x6af71111
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x6af71111
add eax, edx
sub eax, ecx
add eax, 0x9f20d0a
add eax, 0xbd5127d2
mov ecx, 0x5b9e8c4c
xor ecx, 0x526c8146
sub eax, ecx
xor eax, 0xe3bc8bd9
mov rcx, qword [0x1401e9fa0]
mov qword [rbp + 0x230], rcx
mov rcx, qword [0x1401e9fa8]
mov qword [rbp + 0x238], rcx
cmp eax, 0xb28cc127
ja 0x1400c3015
jmp 0x1400c2a32
mov rax, qword [rbp + 0x38]
mov rcx, rax
add rcx, 0x18
mov rdx, qword [rax + 0x18]
mov qword [rbp + 0x230], rdx
mov rax, qword [rax + 0x20]
mov qword [rbp + 0x238], rax
sub rsp, 0x20
call fcn.140010510
add rsp, 0x20
mov ecx, 0x20
mov edx, 8
sub rsp, 0x20
call fcn.14001bcc0
mov rcx, qword [rbp + 0x190]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rax, qword [rcx]
mov qword [rbp + 0x220], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x228], rax
sub rsp, 0x20
call fcn.140010510
mov rax, qword [rbp - 0x20]
add rsp, 0x20
mov rcx, qword [rbp + 0x220]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x228]
mov qword [rax + 8], rcx
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x210], rax
mov rax, qword [rbp + 0x238]
mov qword [rbp + 0x218], rax
lea rcx, [rbp + 0x230]
sub rsp, 0x20
call fcn.140010510
mov rdx, qword [rbp - 0x20]
add rsp, 0x20
mov rax, qword [rbp + 0x210]
mov qword [rdx + 0x10], rax
mov rax, qword [rbp + 0x218]
mov qword [rdx + 0x18], rax
mov rcx, qword [0x1401fb8d0]
sub rsp, 0x20
call fcn.14001b9c0
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp + 0x30]
add rsp, 0x20
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x48]
mov qword [rbp - 0x38], rdx
mov qword [rbp - 0x30], rcx
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
cmp rax, 0
je 0x1400c2b64
mov rcx, qword [rbp - 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x5fa6a137e03ec46e
movabs rdx, 0x5fa6a137e03ec46e
xor rcx, rdx
cmp rax, rcx
jne 0x1400c2b64
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x58]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x1400c2bd1
mov rax, qword [rbp - 0x40]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x1400c2bd1
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x38]
mov qword [rbp + 0x1c0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x1c0]
sub rsp, 0x20
call fcn.140018e70
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
cmp byte [rax], 0
je 0x1400c2c53
mov rax, qword [rbp + 0x1a0]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1400c32d8
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
cmp byte [rax], 0
je 0x1400c2c53
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0xa8], rcx
mov qword [rbp + 0xb0], rax
jmp 0x1400c2c67
mov rax, qword [rbp + 0x50]
add rax, 1
mov qword [rbp + 0x90], rax
jmp 0x1400c20c3
mov rdx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xb0]
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], rax
cmp rdx, 0
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
je 0x1400c2d0b
mov rax, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0xc0]
mov rdx, qword [rdx]
mov r8, rdx
add r8, 1
xor rdx, 0xffffffffffffffff
movabs r9, 0x4000000000000000
or rdx, r9
add rdx, r8
cmp rdx, 0
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
jne 0x1400c2d0b
mov rcx, qword [rbp + 0xc0]
sub rsp, 0x20
call fcn.14000eb2e
mov rcx, qword [rbp - 0x50]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0x118]
mov r8, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xd0]
mov qword [rbp - 0x60], rdx
mov qword [rbp - 0x58], rcx
cmp r8, 0
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
je 0x1400c2def
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp + 0xe0]
mov r8, qword [r8]
movabs r10, 0xf8873f8563057967
movabs r9, 0xb8873f8563057967
xor r10, r9
mov r9, r8
xor r9, r10
xor r9, 0xffffffffffffffff
movabs r10, 0x4000000000000000
or r8, r10
and r8, r9
cmp r8, 0
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
jne 0x1400c2def
mov rcx, qword [rbp + 0xe0]
sub rsp, 0x20
call fcn.14000eb2e
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp + 0x118]
add rsp, 0x20
mov qword [rbp + 0x140], rdx
mov qword [rbp + 0x148], rcx
mov qword [rbp + 0x150], rax
mov rcx, qword [rbp + 0x140]
mov rax, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x150]
mov qword [rbp - 0x68], rdx
mov qword [rbp + 0x1b0], rcx
mov qword [rbp + 0x1b8], rax
lea rcx, [rbp + 0x1b0]
sub rsp, 0x20
call fcn.140018e70
mov rax, qword [rbp - 0x68]
add rsp, 0x20
cmp rax, 0
je 0x1400c2e7a
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xf1e24ec067c1968e
movabs rdx, 0xf1e24ec067c1968e
xor rcx, rdx
cmp rax, rcx
jne 0x1400c2e7a
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000eb2e
add rsp, 0x20
mov rax, qword [rbp + 0x1a0]
cmp byte [rax], 0
jne 0x1400c2e9d
mov rax, qword [0x1401fb8d0]
mov qword [rbp + 0x1a8], rax
jmp 0x1400c2fbd
mov edx, dword [0x1401da288]
xor edx, 0x9b4f25ac
mov ecx, dword [0x1401da28c]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and ecx, ecx
mov edx, 0xd31ce83e
xor edx, 0x2ce317c1
xor ecx, edx
mov edx, 0x9df5f45
xor edx, 0xf620a0ba
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x9f2eac2
xor edx, edx
div ecx
and eax, 0x905056f5
mov ecx, 0x58ccc019
xor edx, edx
div ecx
cmp eax, 0xeb296617
je 0x1400c301e
mov eax, dword [0x1401da290]
mov r8d, dword [0x1401da294]
mov ecx, 0x17444014
xor ecx, 0xe8bbbfeb
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x9000115c
xor edx, edx
div ecx
sub eax, 0x19528ed7
mov ecx, 0x27905dcb
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x1a0]
mov dword [rbp - 0x74], ecx
mov ecx, 0x47547bac
xor ecx, 0x9ea03f81
mov dword [rbp - 0x78], ecx
mov byte [rax], 0
sub rsp, 0x20
call fcn.14001b961
add rsp, 0x20
mov rdx, rax
lea rcx, [0x1401fb8d0]
sub rsp, 0x20
call fcn.14001b410
call fcn.1400c32d8
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
mov rdx, qword [0x1401fb8d0]
mov qword [rbp - 0x70], rdx
cmp eax, ecx
ja 0x1400c301e
mov rax, qword [rbp - 0x70]
mov qword [rbp + 0x1a8], rax
jmp 0x1400c2fbd
mov rax, qword [rbp + 0x1a8]
lea rsp, [rbp + 0x280]
pop rbp
ret
add edx, dword [rbp + 0x31e95cf9]
invalid
test eax, 0xe9f32607
sahf
in al, dx
invalid
fucomi st(6)
push rdx
jmp 0x1400c1dd5
int3
and dword [rax + 0x4de945af], ecx
invalid
pushfq
invalid
xor eax, 0xe90902a0
add dh, dh
invalid
invalid
mov dword [rdx + 0x12], 0xf95ce9bf
invalid
or eax, 0xe9355ea3
invalid