Function at 0x140145c00
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x370
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x158], rdx
mov qword [rbp + 0x140], rcx
mov qword [rbp + 0x100], rcx
mov eax, 0x10
mov qword [rbp + 0x128], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x150], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x138], rax
sub rsp, 0x20
call fcn.140153418
mov rcx, qword [rbp + 0x140]
add rsp, 0x20
mov qword [rbp + 0x170], rax
add rax, 0x60
mov qword [rbp + 0x148], rax
movabs rdx, 0x49633444f708a568
movabs rax, 0x49633444f708a570
xor rdx, rax
sub rsp, 0x20
call fcn.140145990
mov rax, qword [rbp + 0x150]
mov rdx, qword [rbp + 0x158]
add rsp, 0x20
mov qword [rbp + 0x2e0], 0
lea rcx, [rbp + 0x2e0]
add rcx, 8
mov qword [rbp + 0x160], rcx
mov qword [rbp + 0x2e8], 0
mov qword [rax], 0
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x168], rcx
mov qword [rax + 8], 0
mov rax, qword [rdx]
mov qword [rbp + 0x2d0], rax
mov rax, qword [rdx + 8]
mov qword [rbp + 0x2d8], rax
lea rcx, [rbp + 0x2e0]
lea rdx, [rbp + 0x2d0]
sub rsp, 0x20
call fcn.140018d5d
add rsp, 0x20
lea rcx, [rbp + 0x2e0]
mov edx, 0x5c
sub rsp, 0x20
call fcn.14004112b
mov rcx, qword [rbp + 0x170]
add rsp, 0x20
xor eax, eax
cmp byte [rcx + 0x60], 0
mov rcx, rax
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov eax, dword [0x1401d05c0]
xor edx, edx
div dword [0x1401d05c4]
mov r11d, eax
mov eax, 0xb984a9d8
xor eax, 0xc90030bd
sub r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xa7301048
mov edx, 0xffffffff
xor edx, 0x5e8b351b
mov eax, ecx
and eax, 0x5e8b351b
and r11d, edx
mov r9d, r8d
and r9d, 0x5e8b351b
mov r10d, edx
and r10d, 0xa7301048
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x5e8b351b
and ecx, edx
or eax, ecx
mov ecx, eax
and ecx, 0xfd1aefda
mov edx, 0x853b4db4
xor edx, 0x853b4db6
imul ecx, edx
xor eax, 0xfd1aefda
add eax, ecx
mov ecx, 0x254bc16f
xor ecx, 0xec4632e5
cmp eax, ecx
ja 0x1401475f0
mov eax, dword [0x1401d05c8]
xor eax, dword [0x1401d05cc]
mov ecx, 0x2865489f
xor ecx, 0xd79ab760
mov edx, eax
xor edx, ecx
and edx, 0x62cafbbf
mov r8d, 0xffffffff
xor r8d, 0x62cafbbf
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x62cafbbf
or eax, 0x62cafbbf
imul eax, edx
add eax, ecx
mov ecx, 0x994c21c3
xor ecx, 0x6ca5914a
sub eax, ecx
sub eax, 0x4df38b14
mov dword [rbp + 0xe4], eax
mov rax, qword [rbp + 0x2e0]
mov qword [rbp + 0x2b0], rax
mov rax, qword [rbp + 0x2e8]
mov qword [rbp + 0x2b8], rax
mov r8b, 0x95
xor r8b, 0xc9
movabs r9, 0x4de2525a68bf3a43
movabs rax, 0xb21dada59740c5bc
xor r9, rax
lea rcx, [rbp + 0x2c0]
lea rdx, [rbp + 0x2b0]
sub rsp, 0x20
call fcn.14003bbc0
mov rcx, qword [rbp + 0x148]
mov eax, dword [rbp + 0xe4]
add rsp, 0x20
mov rdx, qword [rbp + 0x2c0]
mov qword [rbp + 0xe8], rdx
mov rdx, qword [rbp + 0x2c8]
mov qword [rbp + 0xf0], rdx
mov cl, byte [rcx]
mov dl, 0xa7
xor dl, 0xa7
cmp cl, dl
sete cl
mov byte [rbp + 0xff], cl
cmp eax, 0x96076564
jae 0x1401475f0
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov dl, byte [rbp + 0xff]
test dl, 1
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140145fb1
jmp 0x140147345
mov rax, qword [rbp + 0x150]
mov rcx, qword [0x1401dd000]
mov qword [rax], rcx
mov rcx, qword [0x1401dd008]
mov qword [rax + 8], rcx
mov ecx, 0x4a7
sub rsp, 0x20
call fcn.140062510
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0xd0], rcx
mov cl, byte [rax]
mov dl, 0xc9
xor dl, 0xc9
xor eax, eax
cmp cl, dl
mov qword [rbp + 0xd8], rax
jne 0x1401462b6
mov r9, qword [rbp + 0xd0]
mov r8, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xf0]
mov rdx, rcx
add rdx, 8
xor eax, eax
cmp rcx, 0
cmove rdx, rax
mov qword [rbp + 0xb8], rdx
lea rcx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.140147650
mov rcx, qword [rbp + 0x148]
add rsp, 0x20
mov rax, qword [rbp + 0x2a0]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x2a8]
mov qword [rbp + 0xc8], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0xd8], rax
jne 0x1401462b6
mov rcx, qword [rbp + 0x108]
mov ax, 0x4b
xor ax, 0x871
mov word [rcx], ax
sub rsp, 0x20
call fcn.140062840
mov rcx, qword [rbp + 0x148]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0xb0], rdx
mov cl, byte [rcx]
mov dl, 0x88
xor dl, 0x88
cmp cl, dl
mov qword [rbp + 0xd8], rax
jne 0x1401462b6
mov rax, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xb0]
mov rcx, qword [rdx]
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xa8], rdx
cmp rax, rcx
jne 0x1401462c6
mov rax, qword [rbp + 0xc0]
movabs rcx, 0x9c6802ca4ca2e83c
movabs rdx, 0x9c6802ca4ca2e83c
xor rcx, rdx
cmp rax, rcx
je 0x1401461dc
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0xc8]
add rdx, 8
mov qword [rbp + 0x88], rdx
add rax, 8
mov qword [rbp + 0x90], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x98], rax
xor eax, eax
mov qword [rbp + 0xa0], rax
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0x80], rax
cmp rax, rcx
je 0x1401461dc
mov rax, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x88]
mov cl, byte [rcx + rax]
mov dl, byte [rdx + rax]
movabs r8, 0x6b8745a478347779
movabs r9, 0x6b8745a478347779
xor r8, r9
movabs r9, 0xd7eaf4d8d1b4c633
movabs r10, 0xd7eaf4d8d1b4c632
xor r9, r10
sub r8, r9
sub rax, r8
cmp cl, dl
mov qword [rbp + 0xa0], rax
je 0x14014615b
jmp 0x1401462c6
mov cx, 0x5386
xor cx, 0x5433
sub rsp, 0x20
call fcn.140062510
mov rcx, qword [rbp + 0x148]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x78], rdx
cmp byte [rcx], 0
mov qword [rbp + 0xd8], rax
jne 0x1401462b6
mov r9, qword [rbp + 0x78]
mov r8, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xb8]
lea rcx, [rbp + 0x290]
sub rsp, 0x20
call fcn.140147650
mov rcx, qword [rbp + 0x148]
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov rdx, qword [rbp + 0x290]
mov qword [rbp + 0x68], rdx
mov rdx, qword [rbp + 0x298]
mov qword [rbp + 0x70], rdx
mov cl, byte [rcx]
mov dl, 0x1b
xor dl, 0x1b
cmp cl, dl
mov qword [rbp + 0xd8], rax
jne 0x1401462b6
mov rcx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x68]
mov qword [rbp + 0x280], rdx
mov qword [rbp + 0x288], rax
lea rdx, [rbp + 0x280]
sub rsp, 0x20
call fcn.140013b10
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x60], rax
jmp 0x140146393
mov ecx, 0x36f
sub rsp, 0x20
call fcn.140062510
mov rcx, qword [rbp + 0x148]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0xc8]
mov qword [rbp + 0x58], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x60], rax
jne 0x140146393
mov rcx, qword [rbp + 0x110]
mov r9, qword [rbp + 0x58]
mov r8, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xb8]
sub rsp, 0x20
call fcn.140147650
mov rdx, qword [rbp + 0x110]
mov rcx, qword [rbp + 0x148]
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0x48], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x50], rdx
mov cl, byte [rcx]
mov dl, 0x33
xor dl, 0x33
cmp cl, dl
mov qword [rbp + 0x60], rax
jne 0x140146393
mov rcx, qword [rbp + 0x150]
mov rax, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x48]
mov qword [rbp + 0x270], rdx
mov qword [rbp + 0x278], rax
lea rdx, [rbp + 0x270]
sub rsp, 0x20
call fcn.140013b10
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov qword [rbp + 0x60], rax
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0x40], rax
mov eax, dword [0x1401d05d0]
xor eax, 0x1c793ff1
mov edx, dword [0x1401d05d4]
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
xor eax, 0x23d5cd77
mov r8d, 0xffffffff
xor r8d, 0xc2dae103
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc2dae103
mov r8d, 0xee7c9f80
xor r8d, 0x2ca67e83
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xafe2ed17
xor ecx, 0xae93cb0f
xor edx, edx
div ecx
cmp eax, 0x95d5830a
je 0x1401475f9
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x1401d05d8]
sub eax, dword [0x1401d05dc]
mov edx, 0xd586dcc8
xor edx, 0x2a792337
xor eax, edx
mov r8d, 0xffffffff
xor r8d, 0x3d79fe59
mov edx, 0xffffffff
xor edx, 0x8111fe2b
or eax, r8d
or edx, 0x8111fe2b
mov r8d, 0x237d65ab
xor r8d, 0xdc829a54
xor eax, r8d
and eax, edx
sub eax, 0xe72e2720
imul eax, eax, 0x119264a3
cmp rcx, 0
sete cl
mov byte [rbp + 0x3f], cl
cmp eax, 0x3046e9fa
jbe 0x1401475f9
mov al, byte [rbp + 0x3f]
test al, 1
jne 0x1401465a7
jmp 0x140146493
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x94b79512410165f
movabs r8, 0x494b79512410165f
xor rdx, r8
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
movabs rcx, 0xd4702136763e145e
movabs rdx, 0xd4702136763e145e
xor rcx, rdx
cmp rax, rcx
jne 0x1401465a7
mov ecx, dword [0x1401d05e0]
or ecx, dword [0x1401d05e4]
and ecx, 0xdad36c04
or ecx, 0x301871
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xa54c5ff0
and ecx, 0xa54c5ff0
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xf1c080a5
xor ecx, 0xe3f7f5a
xor eax, ecx
cmp eax, 0xf12b4489
jbe 0x140147602
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x1401d05e8]
imul eax, dword [0x1401d05ec]
or eax, 0xb511043
mov r8d, 0xd5a4faf3
xor edx, edx
div r8d
mov r8d, 0xdbd11d97
xor edx, edx
div r8d
mov dword [rbp + 0x38], eax
mov eax, 0x942d02e0
xor eax, 0x794297de
mov dword [rbp + 0x34], eax
sub rsp, 0x20
call fcn.14000e572
mov ecx, dword [rbp + 0x34]
mov eax, dword [rbp + 0x38]
add rsp, 0x20
cmp eax, ecx
jae 0x14014654b
jmp 0x1401465a7
mov rax, qword [rbp + 0x148]
cmp byte [rax], 0
je 0x1401468b6
mov rax, qword [rbp + 0x148]
mov byte [rax], 0
lea rcx, [rbp + 0x258]
mov edx, 0x18
sub rsp, 0x20
call fcn.140145990
add rsp, 0x20
lea rcx, [rbp + 0x258]
sub rsp, 0x20
call fcn.140145b55
mov rax, qword [rbp + 0x148]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x41
xor cl, 0x41
cmp al, cl
jne 0x140146895
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x258]
mov qword [rcx], rdx
mov rdx, qword [rbp + 0x260]
mov qword [rcx + 8], rdx
mov rdx, qword [rbp + 0x268]
mov qword [rcx + 0x10], rdx
mov rax, qword [rax]
mov qword [rbp + 0x28], rax
cmp rax, 0
je 0x140146685
mov rcx, qword [rbp + 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x95ecf39359eade
movabs rdx, 0x95ecf39359eade
xor rcx, rdx
cmp rax, rcx
jne 0x140146685
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x248], rcx
mov qword [rbp + 0x250], rax
lea rcx, [rbp + 0x248]
sub rsp, 0x20
call fcn.140017fc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
cmp rax, 0
je 0x140146883
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
movabs rdx, 0xbf271febcc8eb01
movabs r8, 0x4bf271febcc8eb01
xor rdx, r8
movabs r8, 0xc8dec51e27913e55
movabs r9, 0x37213ae1d86ec1aa
xor r8, r9
xor rdx, r8
or rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rdx, 0xb6e0491879b9a5f6
movabs r8, 0x491fb6e786465a09
xor rdx, r8
xor rcx, rdx
or rax, rcx
cmp rax, 0
jne 0x140146883
mov eax, dword [0x1401d05f0]
mov ecx, 0x53eed18c
xor ecx, 0xe046591c
xor eax, ecx
mov r8d, dword [str.37__]
mov r9d, r8d
xor r9d, 0xffffffff
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
add eax, 0xa4522efd
imul ecx, eax, 0x48c0daad
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x641aa6c5
xor edx, 0xbb1780c0
mov r8d, 0xa17d6d82
xor r8d, 0x5e82927d
xor edx, r8d
or eax, edx
mov edx, 0x76ffa4ed
xor edx, 0xa9f282e8
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x8fcb1d40
xor edx, 0x7034e2bf
xor ecx, edx
or eax, ecx
cmp eax, 0x93ca62e
jbe 0x14014760b
mov rcx, qword [rbp + 0x20]
mov edx, dword [0x1401d05f8]
imul edx, dword [0x1401d05fc]
xor edx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x2d60d9e5
mov r8d, 0xffffffff
xor r8d, 0xaf0e7210
or edx, eax
mov eax, 0xe3d6499a
xor eax, 0x4cd83b8a
or eax, r8d
xor edx, 0xffffffff
and edx, eax
mov eax, edx
or eax, 0x9a42e8e0
mov r8d, 0xb807bf33
xor r8d, 0x47f840cc
xor eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x9a42e8e0
and edx, r8d
or eax, edx
mov edx, 0x8b6c9383
xor edx, 0x74936c7c
xor eax, edx
and eax, 0x395c3205
mov dword [rbp + 0x1c], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp + 0x1c]
add rsp, 0x20
cmp eax, 0x51e52af1
jae 0x1401467e3
jmp 0x140146883
sub rsp, 0x20
call fcn.14014782e
add rsp, 0x20
jmp 0x1401475e0
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jmp 0x140147345
mov ecx, 0x4ed
sub rsp, 0x20
call fcn.140062510
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xe8]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0x10], r8
mov dl, byte [rdx]
mov r8b, 0x16
xor r8b, 0x16
cmp dl, r8b
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov r8, qword [rbp + 0x10]
mov rdx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x150]
mov rcx, qword [0x14024ed08]
mov r9, qword [rax]
mov qword [rdx], r9
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14005b3eb
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xe8]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 8], r8
mov dl, byte [rdx]
mov r8b, 0x4e
xor r8b, 0x4e
cmp dl, r8b
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov ecx, 0x7f3
sub rsp, 0x20
call fcn.140062510
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x148]
mov qword [rbp], rcx
cmp byte [rax], 0
jne 0x140146e61
mov rax, qword [rbp + 8]
mov rcx, qword [rbp]
cmp rax, rcx
je 0x140146e87
mov rcx, qword [rbp + 8]
xor eax, eax
mov edx, eax
sub rdx, 1
mov rax, rcx
sub rax, rdx
mov qword [rbp - 8], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
and rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
mov rcx, rax
add rcx, 1
movabs r8, 0x9a7d36d708f783cc
movabs r9, 0x6582c928f7087c33
xor r8, r9
xor rax, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x140146a23
sub rsp, 0x20
call fcn.140008024
add rsp, 0x20
jmp 0x140146e61
mov r8, qword [rbp - 8]
mov rax, qword [rbp + 0x150]
mov rcx, qword [0x14024ed08]
mov rdx, qword [rax]
mov qword [rbp + 0x228], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x230], rax
lea rdx, [rbp + 0x228]
sub rsp, 0x20
call fcn.14005cd3b
mov rax, qword [rbp + 0x148]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140146e61
mov ecx, dword [0x1401d0600]
mov edx, dword [0x1401d0604]
mov eax, 0xae405cb3
xor eax, 0x332f1f6e
xor edx, eax
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
or eax, 0x62368b00
mov ecx, 0xc192b487
xor edx, edx
div ecx
and eax, 0x87a8fc52
cmp eax, 0xd4de8211
jae 0x140147614
mov rdx, qword [rbp - 8]
mov ecx, dword [0x1401d0608]
mov eax, 0xf3bf581c
xor eax, 0xb697404
xor ecx, eax
mov r8d, dword [0x1401d060c]
xor r8d, 0x567f571f
mov eax, ecx
and eax, r8d
mov r9d, 0x5955d02f
xor r9d, 0x5955d02d
imul eax, r9d
xor ecx, r8d
add ecx, eax
and ecx, ecx
mov eax, 0x21317f41
xor eax, 0xdece80be
xor ecx, eax
mov eax, 0x50e3bd49
and eax, 0x50e3bd49
xor eax, 0xffffffff
mov r8d, 0x7a94b3b
xor r8d, 0xf856b4c4
xor ecx, r8d
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x434840a2
mov r8d, 0xffffffff
xor r8d, 0x434840a2
or ecx, r8d
and eax, ecx
xor eax, 0xffffffff
mov r8d, 0x5e1a8422
xor r8d, 0xa78aad6
mov ecx, eax
xor ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x4dd55d85
xor r8d, 0x19b77371
or eax, r8d
and eax, ecx
mov dword [rbp - 0x24], eax
mov qword [rbp + 0x238], 0
mov qword [rbp + 0x240], 0
movabs r8, 0x3d2f1acc2b730a84
movabs rax, 0x3d2f1acc2b730a85
xor r8, rax
lea rcx, [rbp + 0x218]
sub rsp, 0x20
call fcn.140041a50
mov rcx, qword [rbp + 0x148]
mov eax, dword [rbp - 0x24]
add rsp, 0x20
mov rdx, qword [rbp + 0x218]
mov qword [rbp - 0x20], rdx
mov rdx, qword [rbp + 0x220]
mov qword [rbp - 0x18], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp - 9], cl
cmp eax, 0x39cf0dd9
jb 0x140146ab5
mov al, byte [rbp - 9]
test al, 1
jne 0x140146bfd
jmp 0x140146e61
mov ecx, dword [0x1401d0610]
mov edx, dword [0x1401d0614]
xor edx, 0x219e3879
mov eax, ecx
or eax, edx
mov r8d, 0x155fd75e
xor r8d, 0xeaa028a1
xor eax, r8d
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x84d8e925
xor ecx, 0x7b2716da
xor eax, ecx
mov edx, eax
xor edx, 0xe1aafe1
xor edx, 0xffffffff
and edx, 0xe1aafe1
mov ecx, 0xba1ec590
xor ecx, 0xba1ec592
imul ecx, edx
sub ecx, 0xe1aafe1
sub eax, ecx
mov ecx, 0xa8b49129
xor ecx, 0x2938afde
sub eax, ecx
add eax, 0xb2b4f0b8
mov ecx, 0xca4620f
xor ecx, 0x8d285cf8
add eax, ecx
mov edx, 0x1373aecd
xor edx, 0x1373aecc
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x1793369d
add eax, ecx
cmp eax, 0x30261a3f
je 0x14014761d
mov rcx, qword [rbp + 0x150]
mov rax, qword [rbp - 0x20]
mov r8d, dword [0x1401d0618]
mov edx, dword [0x1401d061c]
xor edx, 0xabae314a
xor edx, 0xffffffff
mov r9d, 0x65439816
xor r9d, 0x65439816
mov r10d, 0x975469d2
xor r10d, 0x975469d3
sub r9d, r10d
sub edx, r9d
sub r8d, edx
mov edx, 0x9d876065
xor edx, 0xb79dd85b
and r8d, edx
mov edx, r8d
xor edx, 0xffffffff
and edx, 0x6e584caa
mov r9d, 0xe9e2e1a
xor r9d, 0x60c662b0
mov r10d, 0x4325f648
xor r10d, 0xbcda09b7
xor r9d, r10d
and r8d, r9d
or edx, r8d
mov r8d, 0xf6b29e8f
xor r8d, 0x454998e3
or edx, r8d
mov dword [rbp - 0x2c], edx
mov rdx, qword [rcx]
xor rax, 0xffffffffffffffff
xor ecx, ecx
sub rcx, 1
sub rax, rcx
sub rdx, rax
lea rcx, [rbp + 0x238]
sub rsp, 0x20
call fcn.1400197e0
mov rax, qword [rbp + 0x150]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0x208], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x210], rax
lea rcx, [rbp + 0x238]
lea rdx, [rbp + 0x208]
sub rsp, 0x20
call fcn.140147860
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rbp + 0x120]
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x238]
sub rsp, 0x20
call fcn.140147860
mov rcx, qword [rbp + 0x150]
add rsp, 0x20
mov rax, qword [rbp + 0x238]
mov qword [rbp + 0x1f8], rax
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x200], rax
lea rdx, [rbp + 0x1f8]
sub rsp, 0x20
call fcn.140013b10
mov rcx, qword [rbp - 0x18]
mov eax, dword [rbp - 0x2c]
add rsp, 0x20
cmp rcx, 0
sete cl
mov byte [rbp - 0x25], cl
cmp eax, 0x3367ed13
jb 0x140146ca1
mov al, byte [rbp - 0x25]
test al, 1
jne 0x140146e82
jmp 0x140146e20
mov rax, qword [rbp - 0x18]
mov rax, qword [rax]
movabs rcx, 0xbb3391fad121451f
movabs rdx, 0xfb3391fad121451f
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140146e82
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
jmp 0x140146e82
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jmp 0x140147345
jmp 0x140146f37
mov cx, 0xc38f
xor cx, 0xc2e7
sub rsp, 0x20
call fcn.140062510
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xe8]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0xf0]
mov qword [rbp - 0x38], r8
cmp byte [rdx], 0
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov r8, qword [rbp - 0x38]
mov rax, qword [rbp + 0x150]
mov rcx, qword [0x14024ed08]
mov rdx, qword [rax]
mov qword [rbp + 0x1e8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1f0], rax
lea rdx, [rbp + 0x1e8]
sub rsp, 0x20
call fcn.14005cd3b
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov eax, dword [0x1401d0620]
and eax, dword [0x1401d0624]
or eax, 0xed182155
mov r8d, 0xffffffff
xor r8d, 0xa412d4ac
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xa412d4ac
or eax, 0xa412d4ac
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0x459c334f
mov ecx, 0x474085e6
xor ecx, 0x474085e4
imul ecx, edx
mov edx, 0x9521661
xor edx, 0x4cce252e
add eax, edx
sub eax, ecx
cmp eax, 0x7aaa9aad
jb 0x140147626
mov rcx, qword [rbp + 0x150]
mov eax, dword [0x1401d0628]
xor eax, 0x4a3ead42
xor eax, dword [0x1401d062c]
mov r8d, 0x538bd66e
xor edx, edx
div r8d
mov edx, 0xc36586e3
xor edx, 0x661b8ca1
add eax, edx
mov edx, 0xdb287db
xor edx, 0x193bc883
add eax, edx
sub eax, 0xa57e0a42
mov edx, 0x22abaee8
xor edx, 0x3651538c
imul eax, edx
cmp qword [rcx], 0
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x75c75312
jae 0x140146fa7
mov al, byte [rbp - 0x39]
test al, 1
jne 0x14014701c
jmp 0x140147021
jmp 0x140147103
mov rcx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x150]
mov rdx, qword [rax]
mov qword [rbp + 0x1d8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1e0], rax
lea rdx, [rbp + 0x1d8]
mov r9d, 1
lea rax, [0x1401dcfd0]
sub rsp, 0x30
mov r8d, r9d
mov qword [rsp + 0x20], rax
call fcn.14003b300
mov r8, qword [rbp + 0x130]
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
add rsp, 0x30
mov r9, qword [r8]
mov qword [rbp - 0x50], r9
mov r8, qword [r8 + 8]
mov qword [rbp - 0x48], r8
cmp byte [rdx], 0
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jne 0x140147345
mov rcx, qword [rbp + 0x150]
mov rdx, qword [rbp + 0x138]
mov rax, qword [rbp - 0x48]
mov r8, qword [rbp - 0x50]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140013b10
mov rax, qword [rbp + 0x150]
add rsp, 0x20
mov rax, qword [rax]
movabs rcx, 0x676a09597f49370c
movabs rdx, 0x676a09597f49370c
xor rcx, rdx
cmp rax, rcx
jne 0x140147188
lea rcx, [rbp + 0x1c0]
mov edx, 0x18
sub rsp, 0x20
call fcn.140145990
add rsp, 0x20
lea rcx, [rbp + 0x1c0]
sub rsp, 0x20
call fcn.140145b55
mov rax, qword [rbp + 0x148]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140147167
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x1c0]
mov qword [rax], rcx
mov rcx, qword [rbp + 0x1c8]
mov qword [rax + 8], rcx
mov rcx, qword [rbp + 0x1d0]
mov qword [rax + 0x10], rcx
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
jmp 0x140147345
mov rcx, qword [rbp + 0x150]
mov rax, qword [rcx]
mov qword [rbp + 0x198], rax
mov rax, qword [rcx + 8]
mov qword [rbp + 0x1a0], rax
sub rsp, 0x20
call fcn.14000f979
add rsp, 0x20
lea rcx, [rbp + 0x1a8]
mov edx, 0x18
sub rsp, 0x20
call fcn.140145990
add rsp, 0x20
lea rcx, [rbp + 0x1a8]
lea rdx, [rbp + 0x198]
sub rsp, 0x20
call fcn.140145b75
mov rax, qword [rbp + 0x148]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140147329
mov eax, dword [0x1401d0630]
mov ecx, dword [0x1401d0634]
mov edx, 0x8c616fc8
xor edx, 0x6c27e7c6
xor ecx, edx
and eax, ecx
mov ecx, 0xcecf26d
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x52a5766
xor edx, 0x6513ea3b
mov eax, ecx
xor eax, edx
xor eax, 0xffffffff
and eax, 0x6039bd5d
shl eax, 1
sub eax, 0x6039bd5d
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xedefcd10
mov edx, 0xffffffff
xor edx, 0xedefcd10
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x3059e2a
xor ecx, 0x2f9b3635
cmp eax, ecx
jb 0x14014762f
mov rcx, qword [rbp + 0x140]
mov eax, dword [0x1401d0638]
mov r8d, dword [0x1401d063c]
mov edx, 0xa7871327
xor edx, 0xd1fa471f
xor r8d, edx
mov r9d, eax
and r9d, r8d
mov edx, 0x1791140c
xor edx, 0x1791140e
imul edx, r9d
add eax, r8d
sub eax, edx
mov r8d, 0x88b12cf6
xor edx, edx
div r8d
mov r8d, 0xffffffff
xor r8d, 0xfccc4544
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0xfccc4544
add eax, r8d
sub eax, edx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xbac5c4b2
or edx, 0xbac5c4b2
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov rdx, qword [rbp + 0x1a8]
mov qword [rcx], rdx
mov rdx, qword [rbp + 0x1b0]
mov qword [rcx + 8], rdx
mov rdx, qword [rbp + 0x1b8]
mov qword [rcx + 0x10], rdx
cmp eax, 0xba199dec
ja 0x14014762f
jmp 0x140147329
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rbp + 0xe8]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x180]
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x60], rcx
mov rax, qword [rax]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x14014748f
mov rcx, qword [rbp - 0x58]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14014748f
mov eax, dword [0x1401d0640]
and eax, dword [0x1401d0644]
mov ecx, 0xc576d699
xor edx, edx
div ecx
mov ecx, 0x879f0f42
xor ecx, 0x27e21a08
and ecx, eax
xor ecx, 0xffffffff
add eax, 0xa07d154a
add eax, 1
add eax, ecx
mov ecx, 0xfd5e4b1e
xor edx, edx
div ecx
cmp eax, 0x5eb6c412
je 0x140147638
mov rcx, qword [rbp - 0x58]
mov eax, dword [0x1401d0648]
mov edx, 0x4e635e10
xor edx, 0xca230402
xor eax, edx
mov r8d, dword [0x1401d064c]
mov edx, eax
xor edx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, edx
mov r9d, 0xc1952249
xor r9d, 0xe4ac6522
mov edx, 0xca2dc08b
xor edx, 0x35d23f74
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x2539476b
or eax, 0x2539476b
imul eax, r8d
add eax, edx
mov edx, 0xd8db1236
xor edx, 0xd8db1236
mov r8d, 0xbb1e608a
xor r8d, 0x49a20159
sub edx, r8d
add eax, edx
mov edx, 0x4df31cc4
xor edx, 0x535667fc
xor eax, edx
mov dword [rbp - 0x6c], eax
sub rsp, 0x20
call fcn.14000e572
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
cmp eax, 0xf0d1edcd
ja 0x140147638
jmp 0x14014748f
mov rax, qword [rbp - 0x68]
mov rcx, qword [rbp - 0x60]
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rax
lea rcx, [rbp + 0x188]
sub rsp, 0x20
call fcn.140017fc0
mov rax, qword [rbp + 0x160]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x1401475e0
mov eax, dword [0x1401d0650]
xor edx, edx
div dword [0x1401d0654]
mov ecx, eax
and ecx, 0x3481d7e
shl ecx, 1
xor eax, 0x3481d7e
add eax, ecx
xor eax, 0x7ed8f676
mov ecx, 0xc299229a
xor ecx, 0xfa1a9113
sub eax, ecx
sub eax, 0x3c1e6e53
mov ecx, 0x2d593a42
xor ecx, 0x15da89cb
add eax, ecx
cmp eax, 0x2ead944c
jb 0x140147641
mov eax, dword [0x1401d0658]
xor eax, 0x90e330cd
xor edx, edx
div dword [0x1401d065c]
mov rdx, qword [rbp - 0x78]
mov ecx, eax
mov eax, 0x1e35f707
xor eax, 0x8300a59f
and ecx, eax
mov eax, ecx
and eax, eax
mov r8d, 0x467cce2a
xor r8d, 0xb98331d5
xor eax, r8d
mov r8d, 0x3b631f94
xor r8d, 0x322aa5a4
and eax, r8d
xor eax, 0xffffffff
mov r8d, 0x949ba30
and r8d, 0x949ba30
xor r8d, 0xffffffff
and ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x994c3695
xor r8d, 0x66b3c96a
xor eax, r8d
xor ecx, 0xffffffff
or eax, ecx
and eax, 0xbf7beb32
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp - 0x79], cl
cmp eax, 0x605979a2
je 0x140147641
mov al, byte [rbp - 0x79]
test al, 1
jne 0x1401475cf
jmp 0x1401475e0
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000e572
add rsp, 0x20
mov rax, qword [rbp + 0x100]
lea rsp, [rbp + 0x2f0]
pop rbp
ret
pop rdi
out 0xfa, eax
movsb byte [rdi], byte [rsi]
jmp 0x140145e86
cmp cl, byte [rax]
jge 0x140147663
jmp 0x140146413
xchg ebx, eax
jnp 0x1401475a7
ret 0x40e9
invalid
invalid
cmc
ret
or byte [rdi + 0x78e9401e], 0xf9
invalid
jle 0x14014767b
sti
jmp 0x140147276
imul r12d, dword [r8 - 0x26f16b2], 0xffffffff
dec dword [rbp + rax - 7]
xor eax, 0xfffed6e9
jmp qword [rsi + 0xf]
add rax, 0xffffffffd6e935f9
invalid
mov eax, 0xfdaa9c51
invalid