Function at 0x14003fd90
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x390
mov qword [rsp + 0x370], r8
mov qword [rsp + 0x358], rdx
mov qword [rsp + 0x360], rcx
mov qword [rsp + 0x368], rcx
call fcn.14003fd6d
mov r8, qword [rsp + 0x370]
mov qword [rsp + 0x378], rax
movabs rax, 0xe6c51665ed871cfc
movabs rcx, 0xe6c51665ed871cfc
xor rax, rcx
cmp r8, rax
jge 0x14003fe0f
mov rcx, qword [rsp + 0x370]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov rdx, qword [rsp + 0x370]
lea rcx, [rsp + 0x380]
call fcn.140019539
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x360]
movups xmm0, xmmword [rsp + 0x380]
movups xmmword [rax], xmm0
mov rdx, rcx
add rdx, 0xfffffffffffffffa
mov qword [rsp + 0x2f0], rdx
mov r8, rcx
not r8
mov r9, r8
xor r9, rdx
mov r10, rcx
and r10, r9
add r10, r10
mov r9, rcx
sub r9, r10
add rdx, r9
sets r9b
mov rdx, rcx
sub rdx, 6
setge dl
and dl, r9b
mov byte [rsp + 0x2ff], dl
mov rdx, rcx
add rdx, 0xfffffffffffffffb
mov qword [rsp + 0x300], rdx
movabs r10, 0xed94723db86bd1ff
and r8, r10
movabs r11, 0x126b8dc247942e00
mov r9, rcx
and r9, r11
xor rdx, r10
or r8, r9
xor rdx, r8
sets r9b
mov rdx, rcx
sub rdx, 5
setge dl
setl r8b
or r8b, r9b
add dl, r8b
inc dl
mov byte [rsp + 0x30f], dl
mov r8, 0xffffffffffffffff
xor r8, 0xfffffffffffffffc
movabs rdx, 0xe3f4e597776e9c71
movabs r9, 0xe3f4e597776e9c71
xor rdx, r9
movabs r9, 0xdd2e3d7e76f61539
movabs r10, 0xdd2e3d7e76f61538
xor r9, r10
sub rdx, r9
sub r8, rdx
mov rdx, rcx
sub rdx, r8
mov qword [rsp + 0x310], rdx
xor rdx, rcx
cmp rdx, 0
setl r8b
movabs rdx, 0x28bd8ee68c3f3c55
movabs r9, 0x28bd8ee68c3f3c56
xor rdx, r9
cmp rcx, rdx
setg dl
and dl, r8b
mov byte [rsp + 0x31f], dl
xor edx, edx
mov r8d, edx
sub r8, rcx
xor edx, edx
sub rdx, 0xfffffffffffffffd
add r8, rdx
xor edx, edx
sub rdx, r8
mov qword [rsp + 0x320], rdx
xor rdx, rcx
movabs r8, 0x30a8eb04ddc29bdb
movabs r9, 0x30a8eb04ddc29bdb
xor r8, r9
cmp rdx, r8
setl r8b
movabs rdx, 0x5295eb837ecfdf5c
movabs r9, 0x5295eb837ecfdf5e
xor rdx, r9
cmp rcx, rdx
setg dl
and dl, r8b
mov byte [rsp + 0x32f], dl
mov r8, rcx
add r8, 0xfffffffffffffffe
mov qword [rsp + 0x330], r8
movabs r9, 0xcd71fb46547e2193
movabs rdx, 0x328e04b9ab81de6c
xor r9, rdx
mov rdx, r8
xor rdx, r9
movabs r10, 0x991ab7e30c9a30e8
movabs r9, 0x66e5481cf365cf17
xor r10, r9
mov r9, r8
xor r9, r10
or rdx, r9
and rdx, rcx
xor rdx, 0xffffffffffffffff
mov r9, rcx
and r9, r9
xor r9, 0xffffffffffffffff
movabs r10, 0xc540a4e77c60b518
movabs r11, 0x3abf5b18839f4ae7
xor r10, r11
xor r8, r10
movabs r10, 0xf2908a4a6f184876
movabs r11, 0xd6f75b590e7b789
xor r10, r11
xor r9, r10
or r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
cmp rdx, 0
setl dl
movabs r8, 0x6c124566c4209cf2
movabs r9, 0x6c124566c4209cf3
xor r8, r9
cmp rcx, r8
setg cl
and cl, dl
mov byte [rsp + 0x33f], cl
add rax, 8
mov qword [rsp + 0x340], rax
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x348], rcx
mov qword [rsp + 0x350], rax
mov rcx, qword [rsp + 0x348]
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x2d8], rax
mov eax, dword [0x140251f70]
xor eax, dword [0x140251f74]
and eax, 0x2154db22
sub eax, 0x660d58f0
mov ecx, 0x957a4195
xor edx, edx
div ecx
cmp eax, 0x2165390a
je 0x140043944
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x370]
mov ecx, dword [0x140251f78]
mov eax, dword [0x140251f7c]
xor eax, 0x373618ab
imul ecx, eax
or ecx, 0x8fc3c41d
sub ecx, 0xb7740e87
mov eax, 0x102df24c
xor eax, 0x5b3348be
add ecx, eax
add ecx, 0xb7740e87
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x85d4263b
mov r9d, 0xffffffff
xor r9d, 0x85d4263b
and ecx, r9d
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x56b1e09b
xor ecx, 0xc4b592f2
cmp rdx, r8
setl dl
mov byte [rsp + 0x2d7], dl
cmp eax, ecx
jae 0x140040102
mov al, byte [rsp + 0x2d7]
test al, 1
jne 0x1400401a2
jmp 0x140043931
mov rax, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d8]
mov al, byte [rax + rcx]
mov byte [rsp + 0x2d6], al
cmp al, 0xff
jle 0x14004021e
mov rax, qword [rsp + 0x2d8]
mov cl, byte [rsp + 0x2d6]
movzx ecx, cl
movabs rdx, 0x9853fc79146549ee
add rax, rdx
movabs rdx, 0xd98637c75039d98d
movabs r8, 0xd98637c75039d98c
xor rdx, r8
add rax, rdx
movabs rdx, 0x9853fc79146549ee
sub rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov al, byte [rsp + 0x2d6]
movzx eax, al
mov qword [rsp + 0x2b8], rax
movabs rcx, 0xa0df2413e7e7e99
movabs rdx, 0xa0df2413e7e7e79
xor rcx, rdx
and rax, rcx
cmp rax, 0xc0
jne 0x1400403cf
mov al, byte [rsp + 0x33f]
test al, 1
jne 0x14004026a
jmp 0x140040274
call fcn.140007e9d
jmp 0x140043931
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x330]
movabs rcx, 0x4f15c919b8fa8e4e
movabs rax, 0x4f15c919b8fa8e4f
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x2b0], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x1400415a3
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x370]
cmp rax, rcx
jl 0x140040337
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x370]
movabs rax, 0x864ed8f65565525a
movabs r8, 0x79b12709aa9aada5
xor rax, r8
movabs r8, 0x8824eb4bade6b398
movabs r9, 0x77db14b452194c67
xor r8, r9
xor rax, r8
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x358]
mov r8, qword [rsp + 0x2b0]
mov cl, byte [rsp + 0x2d6]
and cl, 0x1f
movzx ecx, cl
shl ecx, 6
mov dl, byte [rdx + r8]
mov r8b, 0x71
xor r8b, 0x4e
and dl, r8b
movzx r9d, dl
mov edx, 0x59c5ef82
xor edx, 0xa63a107d
mov r8d, r9d
xor r8d, edx
mov edx, ecx
and edx, r8d
mov r8d, ecx
xor r8d, r9d
add ecx, r8d
sub ecx, edx
mov rdx, rax
and rdx, 2
movabs r8, 0x36f4ea5203f504fa
movabs r9, 0x36f4ea5203f504f8
xor r8, r9
imul rdx, r8
xor rax, 2
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov rax, qword [rsp + 0x2b8]
and rax, 0xf0
cmp rax, 0xe0
jne 0x140040668
mov al, byte [rsp + 0x32f]
test al, 1
jne 0x1400403fd
jmp 0x140040407
call fcn.140007e9d
jmp 0x140043931
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x320]
movabs rcx, 0x53af8051b2d516a3
movabs rax, 0x53af8051b2d516a2
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x2a8], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x1400415a3
mov ecx, dword [0x140251f80]
mov r8d, dword [0x140251f84]
xor r8d, 0x181a4e04
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0xfeea8527
xor eax, 0xffffffff
and ecx, 0xfeea8527
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x82eb4b67
xor ecx, 0x7d14b498
xor eax, ecx
imul eax, eax, 0xabd2c867
add eax, 0x16f679d9
cmp eax, 0x6ce0aab
jbe 0x14004394d
mov rcx, qword [rsp + 0x2a8]
mov eax, dword [0x140251f88]
mov edx, dword [0x140251f8c]
xor edx, 0x5c1a66c2
xor eax, edx
mov r8d, 0x3dbfcddb
xor r8d, 0xb7e9f5a9
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x370]
xor eax, 0xd4d02cab
xor r8d, r8d
sub r8d, 0xa6e754d2
sub eax, r8d
cmp rcx, rdx
setl cl
mov byte [rsp + 0x2a7], cl
cmp eax, 0x15e7cd19
jbe 0x1400404c9
mov al, byte [rsp + 0x2a7]
test al, 1
jne 0x14004055b
jmp 0x14004053d
mov rcx, qword [rsp + 0x2a8]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
add rax, 2
mov qword [rsp + 0x298], rax
cmp rax, rcx
jl 0x1400405ce
mov rcx, qword [rsp + 0x298]
mov rdx, qword [rsp + 0x370]
movabs rax, 0xc3bff9501a3b2443
add rdx, rax
movabs rax, 0x4c7c3f997c9f365f
movabs r8, 0xb383c0668360c9a0
xor rax, r8
add rdx, rax
movabs rax, 0xc3bff9501a3b2443
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x358]
mov r8, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x2a8]
mov r9b, byte [rsp + 0x2d6]
mov r11b, 0x9b
xor r11b, 0x94
mov r10b, r9b
xor r10b, r11b
xor r10b, 0xff
or r9b, 0xf
and r9b, r10b
movzx r10d, r9b
shl r10d, 0xc
mov cl, byte [rdx + rcx]
mov r9b, 0x6b
xor r9b, 0x54
and cl, r9b
movzx r9d, cl
shl r9d, 6
mov ecx, r9d
and ecx, r10d
xor r9d, r10d
or ecx, r9d
mov r8b, byte [rdx + r8]
mov r9b, 0xff
xor r9b, 0x3f
mov dl, r8b
xor dl, r9b
and dl, r8b
movzx edx, dl
or ecx, edx
add rax, 3
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov rax, qword [rsp + 0x2b8]
xor rax, 0xffffffffffffffff
movabs rdx, 0x7302a86e6bd46133
movabs rcx, 0x7302a86e6bd461cb
xor rdx, rcx
movabs rcx, 0x46f0205e1cc46c33
movabs r8, 0xb90fdfa1e33b93cc
xor rcx, r8
xor rdx, rcx
movabs rcx, 0x70304f2bc9781d1a
movabs r8, 0x922f85ddb53fac11
xor rcx, r8
movabs r8, 0x1fab1fa662bd18ec
movabs r9, 0xe054e0599d42e713
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0xe21fcaf67c47b10b
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0xf0
jne 0x1400409e9
mov al, byte [rsp + 0x31f]
test al, 1
jne 0x14004070d
jmp 0x140040717
call fcn.140007e9d
jmp 0x140043931
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x310]
movabs rcx, 0xbc535eb05061673f
movabs rax, 0xfcc460cd2f31cd15
xor rcx, rax
mov rax, rdx
add rax, rcx
movabs rcx, 0xdf4568535fc5ee5e
movabs r9, 0xdf4568535fc5ee5f
xor rcx, r9
add rax, rcx
movabs rcx, 0x40973e7d7f50aa2a
sub rax, rcx
mov qword [rsp + 0x290], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x1400415a3
mov rax, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x370]
cmp rax, rcx
jl 0x1400407c7
mov rcx, qword [rsp + 0x290]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
add rax, 2
mov qword [rsp + 0x288], rax
cmp rax, rcx
jl 0x14004080a
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
xor edx, edx
sub rdx, 3
sub rax, rdx
mov qword [rsp + 0x280], rax
cmp rax, rcx
jl 0x140040866
mov rcx, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x370]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov eax, dword [0x140251f90]
mov ecx, 0xcb852aec
xor ecx, 0xf454af14
xor eax, ecx
mov edx, dword [0x140251f94]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov ecx, 0x2865a67e
xor edx, edx
div ecx
or eax, 0x8c3e6849
mov r8d, 0xffffffff
xor r8d, 0x7f71335f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x2a5d0a8f
xor r8d, 0xd5a2f570
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x7f71335f
or eax, 0x7f71335f
imul eax, edx
add eax, ecx
cmp eax, 0x697d54eb
je 0x140043956
mov r8, qword [rsp + 0x358]
mov r9, qword [rsp + 0x280]
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x290]
mov r10b, byte [rsp + 0x2d6]
mov eax, dword [0x140251f98]
or eax, dword [0x140251f9c]
and eax, 0xc86dde6e
mov r11d, 0x509904df
xor r11d, 0x89ddd7bd
add eax, r11d
add eax, 0xeef13711
sub eax, 0xd944d362
and eax, 0xb5725849
mov r11b, 0x6f
xor r11b, 0x68
and r10b, r11b
movzx r10d, r10b
shl r10d, 0x12
mov dl, byte [r8 + rdx]
mov r11b, 0x8a
xor r11b, 0xb5
and dl, r11b
movzx edx, dl
shl edx, 0xc
or edx, r10d
mov cl, byte [r8 + rcx]
mov r10b, cl
add r10b, 1
xor cl, 0xff
mov r11b, 0xc6
xor r11b, 0xf9
or cl, r11b
add cl, r10b
movzx r10d, cl
mov ecx, 0x20d477d6
xor ecx, 0x20d477d0
shl r10d, cl
mov rcx, qword [rsp + 0x2d8]
or edx, r10d
mov r8b, byte [r8 + r9]
and r8b, 0x3f
movzx r8d, r8b
or edx, r8d
mov dword [rsp + 0x274], edx
add rcx, 4
mov qword [rsp + 0x278], rcx
cmp eax, 0x4ae16f40
jb 0x140043956
mov rax, qword [rsp + 0x278]
mov ecx, dword [rsp + 0x274]
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov rax, qword [rsp + 0x2b8]
and rax, 0xfc
cmp rax, 0xf8
jne 0x1400410ee
mov al, byte [rsp + 0x30f]
test al, 1
jne 0x140040a17
jmp 0x140040a21
call fcn.140007e9d
jmp 0x140043931
mov eax, dword [0x140251fa0]
mov ecx, 0x9a8c9b64
xor ecx, 0x8122273c
xor eax, ecx
xor edx, edx
div dword [0x140251fa4]
mov ecx, 0x2e5353c2
xor ecx, 0xcb7f7646
add eax, ecx
imul eax, eax, 0xf673c080
mov ecx, 0x882df70f
xor ecx, 0x88ad3b71
or eax, ecx
cmp eax, 0x6befa0a3
jae 0x14004395f
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x300]
mov eax, dword [0x140251fa8]
imul eax, dword [0x140251fac]
imul eax, eax, 0x6f9d74ac
mov r8d, 0x92e65f0b
xor r8d, 0xae28bb1e
add eax, r8d
imul eax, eax, 0xf25f8141
cmp rcx, rdx
setg dl
mov byte [rsp + 0x267], dl
movabs rdx, 0x3d5dd6d17bbd1d79
movabs r8, 0x17d358521873e97e
xor rdx, r8
sub rcx, rdx
add rcx, 1
movabs rdx, 0xdc1f801828abc6c6
movabs r8, 0xf6910e9b4b6532c1
xor rdx, r8
add rcx, rdx
mov qword [rsp + 0x268], rcx
cmp eax, 0x68a4ea25
jb 0x14004395f
mov rax, qword [rsp + 0x268]
mov dl, byte [rsp + 0x267]
mov ecx, 0xfffd
test dl, 1
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jne 0x1400415a3
jmp 0x140040b29
mov rax, qword [rsp + 0x268]
mov rcx, qword [rsp + 0x370]
cmp rax, rcx
jl 0x140040b6a
mov rcx, qword [rsp + 0x268]
mov rax, qword [rsp + 0x370]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov eax, dword [0x140251fb0]
xor eax, 0xbc5662a4
mov ecx, dword [0x140251fb4]
xor ecx, 0x58068bc3
sub eax, ecx
mov ecx, 0x85ca9659
xor ecx, 0x759a5139
imul eax, ecx
mov ecx, 0x3641fcb7
xor edx, edx
div ecx
mov ecx, 0xee259c49
xor ecx, 0x11da63b6
mov edx, eax
xor edx, ecx
and edx, 0xc8237d9d
mov r8d, 0xffffffff
xor r8d, 0xc8237d9d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x2a9e3402
xor r8d, 0xe2bd499f
mov edx, eax
and edx, r8d
or eax, 0xc8237d9d
imul eax, edx
add eax, ecx
cmp eax, 0x5186ac01
je 0x140043968
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x2d8]
mov eax, dword [0x140251fb8]
mov r8d, 0x2363da45
xor r8d, 0xc3030260
xor eax, r8d
add eax, dword [0x140251fbc]
mov r8d, eax
xor r8d, 0x9d18ef47
xor r8d, 0xffffffff
or eax, 0x9d18ef47
and eax, r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xd737f2d3
mov r9d, 0xffffffff
xor r9d, 0xd737f2d3
and eax, r9d
sub eax, r8d
mov r10d, 0x6518a3a4
xor r10d, 0xf02a6c05
mov r8d, 0x259e2e2
xor r8d, 0xfda61d1d
xor r10d, r8d
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
mov r10d, 0xcf5bd804
xor r10d, 0x30a427fb
xor r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x9532cfa1
or eax, 0x9532cfa1
imul eax, r9d
add eax, r8d
movabs r8, 0xfa8888dc69d0848c
movabs r9, 0xfa8888dc69d0848e
xor r8, r9
add rcx, r8
mov qword [rsp + 0x258], rcx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x266], cl
cmp eax, 0x920b28c1
ja 0x140043968
mov al, byte [rsp + 0x266]
test al, 1
jne 0x140040d23
jmp 0x140040cef
mov rcx, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x370]
movabs rax, 0xdadf3a8e53ef836a
movabs r8, 0x2520c571ac107c95
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov r8d, dword [0x140251fc0]
mov eax, 0xd18b793a
xor eax, 0xe6b2ef02
xor r8d, eax
mov ecx, dword [0x140251fc4]
xor r8d, 0xffffffff
xor ecx, 0xffffffff
mov eax, 0xffffffff
xor eax, 0x7b054c56
or r8d, ecx
or eax, 0x7b054c56
xor r8d, 0xffffffff
and r8d, eax
add r8d, 0xae4cdcbf
add r8d, 0xd31a9102
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xb7e8830
mov edx, 0xffffffff
xor edx, 0xb7e8830
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x53919e5c
and ecx, 0xb7e8830
and edx, 0x53919e5c
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x499c298b
xor ecx, 0x4f7d8037
cmp eax, ecx
je 0x140043971
mov rcx, qword [rsp + 0x2d8]
mov eax, dword [0x140251fc8]
xor eax, 0x260811b4
xor edx, edx
div dword [0x140251fcc]
mov edx, eax
mov eax, 0x650bf122
xor eax, 0x50263062
or edx, eax
mov eax, edx
and eax, 0x7f03f579
or edx, 0x7f03f579
add eax, edx
mov r8d, 0x826517df
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x370]
movabs r8, 0x867966fd1f8af7c9
add rcx, r8
add rcx, 3
movabs r8, 0x867966fd1f8af7c9
sub rcx, r8
mov qword [rsp + 0x248], rcx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x257], cl
cmp eax, 0xabd73bfd
je 0x140040db5
mov al, byte [rsp + 0x257]
test al, 1
jne 0x140040e86
jmp 0x140040e52
mov rcx, qword [rsp + 0x248]
mov rdx, qword [rsp + 0x370]
movabs rax, 0x91854fa66d72f877
movabs r8, 0x6e7ab059928d0788
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 4
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x240], rax
cmp rax, rcx
jl 0x140040f11
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x370]
movabs rax, 0x5e3a486db81a2fa4
movabs r8, 0x5e3a486db81a2fa4
xor rax, r8
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
movabs rdx, 0x9c6f79c10072f27c
movabs r8, 0x9c6f79c10072f27c
xor rdx, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov eax, dword [0x140251fd0]
xor edx, edx
div dword [0x140251fd4]
mov ecx, 0x9485fd80
xor edx, edx
div ecx
mov ecx, 0xb1dcb02f
xor edx, edx
div ecx
mov ecx, 0xd5e21dd5
xor edx, edx
div ecx
cmp eax, 0x7c3f0083
jae 0x14004397a
mov r8, qword [rsp + 0x240]
mov r9, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x258]
mov r11, qword [rsp + 0x268]
mov r10b, byte [rsp + 0x2d6]
mov eax, dword [0x140251fd8]
mov esi, dword [0x140251fdc]
xor esi, 0xaf5584c1
xor edx, edx
div esi
mov rdx, qword [rsp + 0x358]
xor eax, 0x40f53c5
and eax, 0x2f97328d
imul eax, eax, 0x357b4dab
and r10b, 3
movzx r10d, r10b
shl r10d, 0x18
mov r11b, byte [rdx + r11]
and r11b, 0x3f
movzx edi, r11b
shl edi, 0x12
or edi, r10d
mov cl, byte [rdx + rcx]
xor cl, 0xff
mov r11b, 0xff
xor r11b, 0x3f
mov r10b, 0xff
xor r10b, 0xbf
or cl, r11b
or r10b, 0xbf
mov r11b, 0xa4
xor r11b, 0x5b
xor cl, r11b
and cl, r10b
movzx r11d, cl
mov ecx, 0xea15d679
xor ecx, 0xea15d675
shl r11d, cl
mov rcx, qword [rsp + 0x2d8]
mov r10d, r11d
and r10d, edi
xor r10d, 0xffffffff
add edi, r11d
add edi, 1
add edi, r10d
mov r9b, byte [rdx + r9]
and r9b, 0x3f
movzx r9d, r9b
shl r9d, 6
or edi, r9d
mov dl, byte [rdx + r8]
mov r8b, dl
xor r8b, 0x3f
xor r8b, 0xff
or dl, 0x3f
and dl, r8b
movzx esi, dl
mov edx, 0x5c01d6a4
xor edx, 0xa3fe295b
mov r8d, edi
xor r8d, edx
mov r10d, esi
xor r10d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x20fb8658
mov edx, r8d
and edx, 0x20fb8658
and edi, r9d
mov r11d, r10d
and r11d, 0x20fb8658
and esi, r9d
or edx, edi
or r11d, esi
xor edx, r11d
or r8d, r10d
xor r8d, 0xffffffff
or r9d, 0x20fb8658
and r8d, r9d
or edx, r8d
mov dword [rsp + 0x234], edx
movabs rdx, 0xabae7d11e2b7136e
sub rcx, rdx
add rcx, 5
movabs rdx, 0xabae7d11e2b7136e
add rcx, rdx
mov qword [rsp + 0x238], rcx
cmp eax, 0x799fbbee
je 0x140040f45
mov rax, qword [rsp + 0x238]
mov ecx, dword [rsp + 0x234]
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov rax, qword [rsp + 0x2b8]
and rax, 0xfe
cmp rax, 0xfc
jne 0x14004147c
mov al, byte [rsp + 0x2ff]
test al, 1
jne 0x14004111c
jmp 0x140041126
call fcn.140007e9d
jmp 0x140043931
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x2f0]
xor eax, eax
mov ecx, eax
sub rcx, rdx
xor eax, eax
sub rax, 1
add rcx, rax
xor eax, eax
sub rax, rcx
mov qword [rsp + 0x228], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x1400415a3
mov rax, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x370]
cmp rax, rcx
jl 0x1400411f1
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x370]
movabs rax, 0x469dd7ce99546bd0
movabs r8, 0xf63837d9c62614c4
xor rax, r8
add rdx, rax
movabs rax, 0x3ccf89ddac374d47
movabs r8, 0xc330762253c8b2b8
xor rax, r8
add rdx, rax
movabs rax, 0xe23642de7ca70e35
movabs r8, 0x5293a2c923d57121
xor rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
add rax, 2
mov qword [rsp + 0x220], rax
cmp rax, rcx
jl 0x140041234
mov rcx, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0xbda3a2b1c4488112
add rax, rdx
add rax, 3
movabs rdx, 0xd7d735063c118718
movabs r8, 0x6a7497b7f859060a
xor rdx, r8
sub rax, rdx
mov qword [rsp + 0x218], rax
cmp rax, rcx
jl 0x14004129e
mov rcx, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x2d8]
mov rax, rdx
and rax, 4
movabs r8, 0x55ab2946815a6ed7
movabs r9, 0x55ab2946815a6ed3
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x210], rax
cmp rax, rcx
jl 0x14004133b
mov rcx, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x370]
movabs rax, 0x48201f3795770315
movabs r8, 0xb7dfe0c86a88fcea
xor rax, r8
movabs r8, 0x9bbdf08f63cd3d8e
movabs r9, 0x64420f709c32c271
xor r8, r9
xor rax, r8
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x2d8]
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 5
add rdx, rax
movabs rax, 0x90f4395b291ea7d5
movabs r8, 0x90f4395b291ea7d5
xor rax, r8
sub rax, rdx
mov qword [rsp + 0x208], rax
cmp rax, rcx
jl 0x1400413a2
mov rcx, qword [rsp + 0x208]
mov rdx, qword [rsp + 0x370]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x208]
mov r9, qword [rsp + 0x228]
mov r8b, byte [rsp + 0x2d6]
and r8b, 1
movzx r8d, r8b
shl r8d, 0x1e
movd xmm1, dword [rcx + r9]
movaps xmm0, xmmword [0x140260570]
pand xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
movaps xmm2, xmmword [0x140260580]
movaps xmm0, xmm1
pmuludq xmm0, xmm2
pshufd xmm0, xmm0, 0xe8
pshufd xmm1, xmm1, 0xf5
movaps xmm2, xmmword [0x140260590]
pmuludq xmm1, xmm2
pshufd xmm1, xmm1, 0xe8
punpckldq xmm0, xmm1
movzx edx, byte [rcx + rdx]
and edx, 0x3f
pshufd xmm1, xmm0, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm0, xmm1
movd ecx, xmm0
or ecx, r8d
or ecx, edx
movabs r8, 0x6f173cc4c34ca992
movabs rdx, 0x6f173cc4c34ca994
xor r8, rdx
mov rdx, rax
and rdx, r8
shl rdx, 1
xor rax, 6
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov ecx, dword [0x140251fe0]
mov eax, 0xa30af93e
xor eax, 0xc6f6213b
xor ecx, eax
mov edx, dword [0x140251fe4]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
and eax, 0x58b42a37
sub eax, 0x86c5634
sub eax, 0x7dafaecf
add eax, 0x86c5634
or eax, eax
mov ecx, 0xafc6e865
xor ecx, 0x5039179a
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x42425544
mov edx, 0xffffffff
xor edx, 0x42425544
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x9279fc5c
xor ecx, 0xeaf2dcd6
cmp eax, ecx
jae 0x140043983
mov rcx, qword [rsp + 0x2d8]
mov dl, byte [rsp + 0x2d6]
mov eax, dword [0x140251fe8]
or eax, dword [0x140251fec]
imul eax, eax, 0x3e8a6181
mov r8d, 0x452aa7bd
xor r8d, 0x99d660b
xor eax, r8d
mov r8d, 0x63302e5e
xor r8d, 0x6cb67890
sub eax, r8d
add eax, 0xfaaad847
add eax, 0xf8656ce
movzx edx, dl
mov dword [rsp + 0x1fc], edx
movabs rdx, 0x5e675ab886c1b7c4
add rcx, rdx
add rcx, 1
movabs rdx, 0x5e675ab886c1b7c4
sub rcx, rdx
mov qword [rsp + 0x200], rcx
cmp eax, 0xc4bedde6
jae 0x1400414fa
mov rax, qword [rsp + 0x200]
mov ecx, dword [rsp + 0x1fc]
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x1400415a3
mov ecx, dword [rsp + 0x2c4]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x1f0], rax
call fcn.14003f570
mov ecx, eax
mov rax, qword [rsp + 0x378]
mov dword [rsp + 0x1f8], ecx
mov al, byte [rax]
mov cl, 0x65
xor cl, 0x65
cmp al, cl
jne 0x140043931
mov eax, dword [rsp + 0x1f8]
mov ecx, 0xaf399c78
xor ecx, 0xaf399cf8
cmp eax, ecx
jae 0x1400418c5
mov rcx, qword [rsp + 0x2e0]
movabs rdx, 0xff71b98424448652
movabs rax, 0xff71b98424448653
xor rdx, rax
movabs rax, 0x27065f0fb74b43a8
movabs r8, 0xd8f9a0f048b4bc57
xor rax, r8
xor rdx, rax
xor eax, eax
sub rax, 1
sub rdx, rax
mov rax, rcx
sub rax, rdx
mov qword [rsp + 0x1e8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xf4a0a17384995eb1
movabs rdx, 0xf4a0a17384995eb1
xor rcx, rdx
cmp rax, rcx
jge 0x14004167a
call fcn.140007e9d
jmp 0x140043931
mov rax, qword [rsp + 0x1e8]
cmp rax, 0
jge 0x1400417e4
mov eax, dword [0x140251ff0]
and eax, dword [0x140251ff4]
xor eax, 0xec428ffe
mov ecx, 0xeac3916f
xor ecx, 0xeac3916f
mov edx, 0x4e39aa43
xor edx, 0x62aceed6
sub ecx, edx
sub eax, ecx
mov ecx, 0x74cf8257
xor ecx, 0xe191e403
xor edx, edx
div ecx
cmp eax, 0xbb0e143f
je 0x14004398c
mov rcx, qword [rsp + 0x1e8]
mov eax, dword [0x140251ff8]
xor edx, edx
div dword [0x140251ffc]
mov edx, eax
add edx, 1
mov r8d, 0xec799c4a
xor r8d, 0x138663b5
xor eax, r8d
or eax, 0xb53f2f90
add eax, edx
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0x1547ecff
xor r8d, 0xd4260f4
and r8d, edx
mov r9d, 0xc2f83a8
xor r9d, 0x142a0fa3
mov edx, 0x6604f8bf
xor edx, 0x99fb0740
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x18058c0b
or eax, 0x18058c0b
imul eax, r8d
add eax, edx
and eax, eax
mov edx, 0xfcb119b
xor edx, 0xf034ee64
xor eax, edx
mov edx, 0x901f0945
xor edx, 0x606a6036
mov r8d, 0x21c7c227
xor r8d, 0xd1b2ab54
and edx, r8d
xor edx, 0xffffffff
mov r8d, 0xdc331048
xor r8d, 0x23ccefb7
xor eax, r8d
xor edx, 0xffffffff
or eax, edx
mov dword [rsp + 0x1e4], eax
movabs rdx, 0x7cc06fad5e182b0
movabs rax, 0x7cc06fad5e182b0
xor rdx, rax
movabs r8, 0x94d44b0294c49b43
movabs rax, 0xeb2bb4fd6b3b64bc
xor r8, rax
call fcn.14000cee2
mov eax, dword [rsp + 0x1e4]
cmp eax, 0xdf76f9d
je 0x1400416d1
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x1e8]
call fcn.140014c40
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1d8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140041885
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x1d8]
movabs rax, 0x814166ad9ac749be
add rdx, rax
movabs rax, 0xa90cc70a6d9395b7
movabs r8, 0x56f338f5926c6a48
xor rax, r8
add rdx, rax
movabs rax, 0xf9d71d1c448b844f
movabs r8, 0x78967bb1de4ccdf1
xor rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x2e0]
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
jmp 0x1400438ec
mov eax, dword [rsp + 0x1f8]
cmp eax, 0x800
jae 0x140041c0f
mov rdx, qword [rsp + 0x2e0]
movabs rcx, 0x307219c2bfad561a
mov rax, rdx
add rax, rcx
add rax, 2
movabs rcx, 0x151917089e396330
movabs r8, 0x256b0eca2194352a
xor rcx, r8
sub rax, rcx
mov qword [rsp + 0x1b8], rax
movabs rcx, 0x10d034ff1989e4f9
movabs r8, 0xef2fcb00e6761b06
xor rcx, r8
xor rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x140041954
call fcn.140007e9d
jmp 0x140043931
mov rax, qword [rsp + 0x1b8]
cmp rax, 0
jge 0x140041986
mov rcx, qword [rsp + 0x1b8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x1b8]
call fcn.140014c40
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1b0], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140041a00
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x1b0]
movabs rax, 0xa6329f86f5b0a910
movabs r8, 0x59cd60790a4f56ef
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r8d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r8d, 6
or r8b, 0xc0
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0xd5dcd109ec0ed6bd
movabs r8, 0xd5dcd109ec0ed6bc
xor rdx, r8
movabs r8, 0xcce63ae587396ff2
movabs r9, 0x3319c51a78c6900d
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x1a0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1a8], rcx
cmp rax, rcx
jl 0x140041b8e
mov eax, dword [0x140252000]
mov ecx, dword [0x140252004]
mov edx, 0x88bd2619
xor edx, 0xf968be86
sub eax, edx
add eax, ecx
mov ecx, 0xc001bc02
xor ecx, 0xb1d4249d
add eax, ecx
sub eax, 0x85292754
mov ecx, 0xc2122c5
xor ecx, 0x1b1c772a
add eax, ecx
mov edx, 0xffffffff
xor edx, 0x737054be
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x737054be
add eax, edx
sub eax, ecx
mov ecx, 0x39ba28b1
xor ecx, 0x390f4735
cmp eax, ecx
jbe 0x140043995
mov rcx, qword [rsp + 0x1a0]
mov eax, dword [0x140252008]
mov edx, dword [0x14025200c]
xor edx, 0xe8f3b888
add eax, 0x62bb5cf0
sub eax, edx
sub eax, 0x62bb5cf0
imul eax, eax, 0xb66f021a
mov r8d, 0x52c3913d
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x1a8]
or eax, 0xc4f7e4b0
mov dword [rsp + 0x19c], eax
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
movabs rdx, 0x96800ef9c683e045
movabs r8, 0x96800ef9c683e045
xor rdx, r8
sub rdx, rax
call fcn.140013507
mov eax, dword [rsp + 0x19c]
cmp eax, 0xa40061d8
je 0x140043995
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x1b8]
mov r9b, 0xea
xor r9b, 0xd5
mov r8b, cl
xor r8b, r9b
xor r8b, 0xff
or cl, 0x3f
and cl, r8b
mov r9b, 0xa
xor r9b, 0x8a
mov r8b, 0x7f
xor r8b, 0x80
xor r9b, r8b
mov r8b, cl
and r8b, r9b
mov r10b, 0xf3
xor r10b, 0x73
mov r9b, cl
xor r9b, r10b
add cl, r9b
sub cl, r8b
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
jmp 0x1400438ec
mov eax, dword [rsp + 0x1f8]
mov ecx, 0xc2663ec6
xor ecx, 0xc2673ec6
cmp eax, ecx
jae 0x1400422fb
mov rax, qword [rsp + 0x2e0]
xor ecx, ecx
mov edx, ecx
sub rdx, rax
movabs rcx, 0x77aa58c60d4d2b56
movabs r8, 0x77aa58c60d4d2b56
xor rcx, r8
movabs r8, 0x3d2983f2bd7e3a26
movabs r9, 0x3d2983f2bd7e3a25
xor r8, r9
sub rcx, r8
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov qword [rsp + 0x190], rcx
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, rax
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0xfb4c6033fcb73eb5
movabs r9, 0x4b39fcc0348c14a
xor r8, r9
xor rdx, r8
or rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
or rdx, rax
movabs rax, 0x12487c92a734a734
movabs r8, 0xedb7836d58cb58cb
xor rax, r8
xor rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140041cfc
call fcn.140007e9d
jmp 0x140043931
mov eax, dword [0x140252010]
mov ecx, dword [0x140252014]
xor ecx, 0xdd592411
xor eax, ecx
mov ecx, 0x5ade4c5c
xor ecx, 0x87b8f2e9
sub eax, ecx
and eax, 0x7a40a9dc
add eax, 0x8603ee72
cmp eax, 0x59654cae
je 0x14004399e
mov rdx, qword [rsp + 0x190]
mov ecx, dword [0x140252018]
mov eax, dword [0x14025201c]
xor eax, 0x73b7d67
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x3a6a0a44
or eax, r8d
mov r8d, 0x3a6a0a44
and r8d, 0x3a6a0a44
xor r8d, 0xffffffff
and ecx, r8d
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0x786b32c2
xor r8d, 0x8794cd3d
xor ecx, r8d
or eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x9dfefe21
mov ecx, 0xffffffff
xor ecx, 0xe66c0878
or eax, r8d
or ecx, 0xe66c0878
xor eax, 0xffffffff
and eax, ecx
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xb4cec8a
mov r9d, 0xffffffff
xor r9d, 0xb4cec8a
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0xb4cec8a
or eax, 0xb4cec8a
imul eax, r8d
add eax, ecx
mov ecx, 0xcadbd466
xor ecx, 0xeb87bb45
movabs r8, 0xb77e1087054c1c08
movabs r9, 0xb77e1087054c1c08
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rsp + 0x18f], dl
cmp eax, ecx
jbe 0x14004399e
mov al, byte [rsp + 0x18f]
test al, 1
jne 0x140041e48
jmp 0x140041e68
mov rcx, qword [rsp + 0x190]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov ecx, dword [0x140252020]
mov eax, dword [0x140252024]
xor eax, 0xf8a03d5d
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xb375f5bf
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, 0xc5f6b0eb
xor edx, 0x3a094f14
mov ecx, eax
xor ecx, edx
and ecx, 0x1c45cff4
mov edx, 0x3b629524
xor edx, 0x27275ad0
mov r8d, 0x89d38225
xor r8d, 0x762c7dda
xor edx, r8d
and eax, edx
sub eax, ecx
or eax, 0xb532d87b
mov ecx, 0x8a61eebb
xor ecx, 0x75de026e
cmp eax, ecx
ja 0x1400439a7
mov rcx, qword [rsp + 0x360]
mov eax, dword [0x140252028]
mov r8d, dword [0x14025202c]
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x190]
imul eax, eax, 0x91ead805
mov r8d, eax
and r8d, 0x3e4aae61
mov r9d, eax
xor r9d, 0x1b5519e
add eax, r9d
sub eax, r8d
or eax, 0xcd8743ce
mov dword [rsp + 0x17c], eax
call fcn.140014c40
mov r8, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x2e0]
mov eax, dword [rsp + 0x17c]
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rsp + 0x180], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0x18e], cl
cmp eax, 0x5c13c07f
jbe 0x140041ed8
mov al, byte [rsp + 0x18e]
test al, 1
jne 0x14004213b
jmp 0x140041f81
mov eax, dword [0x140252030]
mov r8d, dword [0x140252034]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
or eax, eax
mov ecx, 0xa6fb1f56
xor ecx, 0x5904e0a9
xor eax, ecx
mov ecx, 0x726753ff
xor ecx, 0x8f9a311
mov edx, 0x23402095
xor edx, 0xdcbfdf6a
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x7a9ef0ee
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor eax, 0x85afe2b7
mov edx, eax
xor edx, 0xffffffff
and edx, 0x9222dcec
mov r8d, 0xffffffff
xor r8d, 0x9222dcec
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x9222dcec
or eax, 0x9222dcec
imul eax, edx
add eax, ecx
mov ecx, 0xbda77a4e
xor ecx, 0xb2a90f00
cmp eax, ecx
jb 0x1400439b0
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x180]
mov eax, dword [0x140252038]
mov r8d, 0x619e07d0
xor r8d, 0xb7ffef4e
xor eax, r8d
mov r8d, dword [0x14025203c]
mov r9d, 0xc7b802ab
xor r9d, 0xb0e46a7d
xor r8d, r9d
or eax, r8d
xor eax, 0xe74dca91
mov r10d, 0xffffffff
xor r10d, 0x85e71862
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, eax
and r9d, 0x85e71862
mov r10d, 0x883f4405
xor r10d, 0xdd85c67
or eax, r10d
imul eax, r9d
add eax, r8d
sub eax, 0x3260c89c
sub eax, 0x9facb6eb
mov r8d, 0x13784aa4
xor r8d, 0x21188238
add eax, r8d
mov dword [rsp + 0x178], eax
movabs rax, 0x30427f4c1b2ebd89
movabs r8, 0x30427f4c1b2ebd89
xor rax, r8
sub rax, rdx
movabs rdx, 0xc7490fec7cedee44
movabs r8, 0xc7490fec7cedee44
xor rdx, r8
movabs r8, 0xc27e6a0e6e6710ef
movabs r9, 0x3d8195f19198ef10
xor r8, r9
sub rdx, r8
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140013507
mov eax, dword [rsp + 0x178]
cmp eax, 0xd99fd959
je 0x1400439b0
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r8d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r8d, 0xc
mov dil, r8b
mov r8b, 0xa5
xor r8b, 0x5a
mov r9b, dil
xor r9b, r8b
mov r11b, 0xf9
xor r11b, 0x19
mov r8b, 0x1d
xor r8b, 0xe2
xor r11b, r8b
mov r10b, 0xff
xor r10b, 0x42
mov bl, 0x65
xor bl, 0x27
mov r8b, r9b
and r8b, bl
and dil, r10b
mov bl, r11b
and bl, 0x42
mov sil, 0xc2
xor sil, 0x22
and sil, r10b
or r8b, dil
or bl, sil
xor r8b, bl
or r9b, r11b
xor r9b, 0xff
or r10b, 0x42
and r9b, r10b
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
add rax, 1
mov qword [rsp + 0x168], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x170], rcx
cmp rax, rcx
jl 0x140042212
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x168]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 6
mov r10b, 0xfb
xor r10b, 0xc4
and r9b, r10b
or r9b, 0x80
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 2
mov qword [rsp + 0x158], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x160], rcx
cmp rax, rcx
jl 0x1400422ae
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x160]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x190]
and cl, 0x3f
mov r8b, 0xf7
xor r8b, 0x77
or cl, r8b
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
jmp 0x1400438ec
mov eax, dword [rsp + 0x1f8]
cmp eax, 0x200000
jae 0x140042890
mov eax, dword [0x140252040]
or eax, dword [0x140252044]
mov ecx, 0x216c40e7
xor ecx, 0xd706b9a1
or eax, ecx
xor eax, 0xc92d20b1
mov ecx, 0xf7d28ef2
xor ecx, 0xc27ebee9
xor edx, edx
div ecx
cmp eax, 0x19baaeee
je 0x1400439b9
mov r8, qword [rsp + 0x2e0]
mov eax, dword [0x140252048]
add eax, dword [0x14025204c]
mov ecx, 0xe3cfaf6c
xor ecx, 0x3a9d9f54
sub eax, ecx
mov ecx, 0x651ecc22
xor ecx, 0x320a1e04
mov edx, eax
and edx, ecx
mov ecx, 0xbfcf8cda
xor ecx, 0xbfcf8cd8
imul ecx, edx
add eax, 0x5714d226
sub eax, ecx
and eax, 0x6dadfccd
mov rcx, r8
add rcx, 4
mov qword [rsp + 0x148], rcx
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r10, 0xb12fc6b420b5475f
movabs r9, 0x4ed0394bdf4ab8a0
xor r10, r9
mov r9, r8
xor r9, r10
and rdx, r9
movabs r9, 0xada2bcf6f367ea4a
movabs r10, 0x525d43090c9815b5
xor r9, r10
movabs r10, 0xa8d46ee037701697
movabs r11, 0x572b911fc88fe968
xor r10, r11
or r9, r10
xor r9, 0xffffffffffffffff
movabs r10, 0x3ee3b3cb9cc91cb0
movabs r11, 0xc11c4c346336e34f
xor r10, r11
xor rdx, r10
xor r9, 0xffffffffffffffff
and rdx, r9
xor r8, 0xffffffffffffffff
movabs r9, 0x8901d31ff3ce667c
movabs r10, 0x76fe2ce00c319983
xor r9, r10
movabs r10, 0x14424a2c6df71818
movabs r11, 0xebbdb5d39208e7e7
xor r10, r11
xor r9, r10
and r8, r9
movabs r9, 0x3808991ef81d79ad
movabs r10, 0xc7f766e107e28652
xor r9, r10
xor rdx, r9
movabs r9, 0xa287b5c902dd7ab7
movabs r10, 0x5d784a36fd228548
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rcx
movabs r8, 0x2ceb1183d92b43db
movabs r9, 0xd314ee7c26d4bc24
xor r8, r9
xor rcx, r8
or rdx, rdx
xor rdx, 0xffffffffffffffff
movabs r8, 0x4d153c44bf777a71
movabs r9, 0xb2eac3bb4088858e
xor r8, r9
xor rcx, r8
movabs r8, 0xb089c0ae73358aac
movabs r9, 0x4f763f518cca7553
xor r8, r9
xor rdx, r8
and rcx, rdx
movabs rdx, 0x969b1861a70e7e2b
movabs r8, 0x969b1861a70e7e2b
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x157], cl
cmp eax, 0xcdca44e0
ja 0x140042345
mov al, byte [rsp + 0x157]
test al, 1
jne 0x140042528
jmp 0x140042532
call fcn.140007e9d
jmp 0x140043931
mov rax, qword [rsp + 0x148]
cmp rax, 0
jge 0x140042564
mov rcx, qword [rsp + 0x148]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x148]
call fcn.140014c40
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x140], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400425f8
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x140]
movabs rax, 0x6b9dab312983d44d
movabs r8, 0x6b9dab312983d44d
xor rax, r8
movabs r8, 0xe70d21ac109f0e1d
movabs r9, 0x18f2de53ef60f1e2
xor r8, r9
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r8d, dword [rsp + 0x1f8]
mov rax, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x2e0]
mov ecx, 0x3d9e5ff5
xor ecx, 0x3d9e5fe7
shr r8d, cl
mov rcx, qword [rsp + 0x360]
or r8b, 0xf0
mov rax, qword [rax]
mov byte [rax + rdx + 8], r8b
mov rax, rdx
and rax, 1
movabs r8, 0x6e8d3d6d0850a230
movabs r9, 0x6e8d3d6d0850a231
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x130], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x138], rcx
cmp rax, rcx
jl 0x1400426b3
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x138]
movabs rax, 0x7f53af5b221ce791
movabs r8, 0x80ac50a4dde3186e
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x130]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 0xc
and r9b, 0x3f
mov r10b, 0xf8
xor r10b, 0x78
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 2
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x120], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x128], rcx
cmp rax, rcx
jl 0x140042763
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x128]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x120]
mov rax, qword [rsp + 0x2e0]
mov ecx, 0xd421971f
xor ecx, 0xd4219719
shr r9d, cl
mov rcx, qword [rsp + 0x360]
and r9b, 0x3f
mov r10b, 0xf9
xor r10b, 0x79
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 3
mov qword [rsp + 0x110], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x118], rcx
cmp rax, rcx
jl 0x14004282a
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
movabs rax, 0x630b65ef45fd1e8b
movabs r8, 0x630b65ef45fd1e8b
xor rax, r8
movabs r8, 0x3b17f024fe905688
movabs r9, 0xc4e80fdb016fa977
xor r8, r9
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x148]
and cl, 0x3f
and cl, cl
mov r8b, 0x81
xor r8b, 0x7e
xor cl, r8b
mov r8b, 0xff
xor r8b, 0x80
mov r9b, 0xff
xor r9b, 0x80
or r8b, r9b
and cl, r8b
xor cl, 0xff
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
jmp 0x1400438ec
mov eax, dword [rsp + 0x1f8]
cmp eax, 0x4000000
jae 0x140043028
mov r9, qword [rsp + 0x2e0]
mov rax, r9
add rax, 5
mov qword [rsp + 0x108], rax
mov rcx, r9
xor rcx, 0xffffffffffffffff
movabs rdx, 0x32c6e538b3765888
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0x32c6e538b3765888
xor r10, rdx
and r9, r10
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0x32c6e538b3765888
and rdx, r8
movabs r8, 0x39ff94d48a0147be
movabs r11, 0xc6006b2b75feb841
xor r8, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0xb7ea5706d93043c5
movabs r8, 0x4815a8f926cfbc3a
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x101baad5d32e44bd
xor rdx, r8
or rax, rcx
movabs rcx, 0xce8dffcdd7ceb250
movabs r8, 0xde96551804e0f6ed
xor rcx, r8
or rcx, rdx
movabs rdx, 0x220a3b60a0ed9534
movabs r8, 0xddf5c49f5f126acb
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x14004299f
call fcn.140007e9d
jmp 0x140043931
mov rax, qword [rsp + 0x108]
cmp rax, 0
jge 0x1400429d1
mov rcx, qword [rsp + 0x108]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x108]
call fcn.140014c40
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x100], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140042ad7
mov eax, dword [0x140252050]
mov edx, dword [0x140252054]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
add eax, 0x86b5b173
mov ecx, 0x22872a0c
xor ecx, 0x432c8f1
sub eax, ecx
sub eax, 0x86b5b173
add eax, 0xd81bae8e
sub eax, 0x238d337a
cmp eax, 0x2f5eb0cd
je 0x1400439c2
mov rcx, qword [rsp + 0x2e0]
mov eax, dword [0x140252058]
mov edx, 0x1e13fabe
xor edx, 0xd7728f78
xor eax, edx
mov edx, dword [0x14025205c]
xor edx, 0x4199f750
sub eax, edx
mov r8d, 0x50f8170f
xor r8d, 0x93e60735
xor edx, edx
div r8d
sub eax, 0xf38064c5
mov r8d, 0x4d24e6be
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x100]
mov dword [rsp + 0xfc], eax
add rdx, 0xffffffffffffffff
call fcn.140013507
mov eax, dword [rsp + 0xfc]
cmp eax, 0x172ccec6
ja 0x1400439c2
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r8d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r8d, 0x18
mov r9b, 0x44
xor r9b, 0xbc
and r9b, r8b
xor r9b, 0xff
add r8b, 0xf8
mov r10b, 0x70
xor r10b, 0x71
add r8b, r10b
add r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x19604174eca965a8
add rax, rdx
add rax, 1
movabs rdx, 0x19604174eca965a8
sub rax, rdx
mov qword [rsp + 0xe8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xf0], rcx
cmp rax, rcx
jl 0x140042bb7
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0xf0]
movabs rax, 0x14ac7e0219d11a68
movabs r8, 0x14ac7e0219d11a68
xor rax, r8
movabs r8, 0x69612b0750ba32ea
movabs r9, 0x969ed4f8af45cd15
xor r8, r9
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0xe8]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 0x12
xor r9b, 0xff
mov r10b, 0xff
xor r10b, 0x3f
mov r11b, 0x10
xor r11b, 0xe7
mov bl, 0x10
xor bl, 0xef
xor r11b, bl
or r9b, r10b
mov r10b, 0x5f
xor r10b, 0xa8
or r10b, r11b
xor r9b, 0xff
and r9b, r10b
mov r11b, 0xb1
xor r11b, 0x31
mov r10b, 0x5b
xor r10b, 0xa4
xor r11b, r10b
mov r10b, r9b
and r10b, r11b
mov r11b, r9b
xor r11b, 0x80
add r9b, r11b
sub r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
mov rdx, 0xffffffffffffffff
xor rdx, 2
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0xd8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xe0], rcx
cmp rax, rcx
jl 0x140042c9c
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0xd8]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 0xc
or r9b, r9b
mov r10b, 0x71
xor r10b, 0x8e
xor r9b, r10b
mov r10b, 0xff
xor r10b, 0x3f
mov r11b, 0xff
xor r11b, 0x3f
and r10b, r11b
or r9b, r10b
mov r10b, 0x6c
xor r10b, 0x93
xor r9b, r10b
mov r11b, 0xe8
xor r11b, 0x68
mov r10b, 0x2c
xor r10b, 0xd3
xor r11b, r10b
mov r10b, r9b
and r10b, r11b
mov r11b, r9b
xor r11b, 0x80
add r9b, r11b
sub r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 3
mov qword [rsp + 0xc8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xd0], rcx
cmp rax, rcx
jl 0x140042d6a
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xd0]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov ecx, dword [0x140252060]
xor ecx, 0x60dfe814
mov edx, dword [0x140252064]
mov eax, edx
and eax, ecx
xor eax, 0xffffffff
add ecx, edx
mov edx, 0xecb12cd
xor edx, 0xecb12cc
add ecx, edx
add ecx, eax
add ecx, 0xd827357a
mov eax, 0xf03130ea
xor eax, 0x4664474a
and ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
mov edx, 0x61e15041
xor edx, 0x9e1eafbe
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x73af6d78
or eax, edx
mov edx, 0x854ab2fa
xor edx, 0xf6e5df82
mov r8d, 0x45160170
xor r8d, 0x36b96c08
and edx, r8d
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x64f51333
xor ecx, 0xd0fd3cf6
cmp eax, ecx
jae 0x1400439cb
mov rcx, qword [rsp + 0x360]
mov edx, dword [0x140252068]
and edx, dword [0x14025206c]
sub edx, 0x3b824801
mov eax, 0x2691c25f
xor eax, 0xe45d5165
sub edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xbfaad945
xor r8d, 0x1e8a47c7
and eax, r8d
mov r8d, 0x8439fad6
xor r8d, 0x7bc60529
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0xa1209e82
mov r9d, 0x7a2d5c32
xor r9d, 0xdb0dc2b0
mov r10d, 0x13f8a000
xor r10d, 0xec075fff
xor r9d, r10d
or r8d, r9d
and edx, r8d
mov r8d, 0x380b3549
xor r8d, 0xc7f4cab6
xor edx, r8d
mov r8d, 0xddcb6ee4
xor r8d, 0x2234911b
xor eax, r8d
mov r8d, 0xa9d4664e
xor r8d, 0x562b99b1
xor edx, r8d
or eax, edx
mov dword [rsp + 0xac], eax
call fcn.1400439f0
mov r10d, dword [rsp + 0x1f8]
mov r8, qword [rsp + 0x340]
mov r9, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x360]
mov eax, dword [rsp + 0xac]
shr r10d, 6
mov bl, 0x71
xor bl, 0x4e
mov r11b, 0xcc
xor r11b, 0x33
xor bl, r11b
mov r11b, r10b
xor r11b, bl
and r11b, r10b
mov bl, 0xb9
xor bl, 0x39
mov r10b, r11b
and r10b, bl
xor r11b, 0x80
or r10b, r11b
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
movabs r9, 0x6a966f43b4f426d3
movabs r8, 0x6a966f43b4f426d7
xor r9, r8
mov r8, rcx
and r8, r9
shl r8, 1
movabs r9, 0xad79108eb81e260
movabs r10, 0xad79108eb81e264
xor r9, r10
xor rcx, r9
add rcx, r8
mov qword [rsp + 0xb0], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0xb8], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0xc7], cl
cmp eax, 0x2e6f1ef3
jbe 0x140042e05
mov al, byte [rsp + 0xc7]
test al, 1
jne 0x140042fe2
jmp 0x140042faa
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
movabs rax, 0xf89cf3d93855112
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xf89cf3d93855112
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x108]
and cl, 0x3f
or cl, 0x80
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
jmp 0x1400438ec
mov rax, qword [rsp + 0x1f0]
mov ecx, dword [rsp + 0x1f8]
cmp ecx, 0xffffffff
mov qword [rsp + 0x2e8], rax
jle 0x1400400c8
mov rdx, qword [rsp + 0x2e0]
mov rcx, rdx
and rcx, 6
shl rcx, 1
mov rax, rdx
xor rax, 6
add rax, rcx
mov qword [rsp + 0xa0], rax
xor rdx, 0xffffffffffffffff
movabs r8, 0xa9f3aa4fb942bd7
movabs rcx, 0xa9f3aa4fb942bd6
xor r8, rcx
mov rcx, rax
add rcx, r8
movabs r8, 0x6a0350ee4c3593d6
movabs r9, 0x95fcaf11b3ca6c29
xor r8, r9
xor rax, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1400430c2
call fcn.140007e9d
jmp 0x140043931
mov eax, dword [0x140252070]
mov r8d, dword [0x140252074]
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
mov ecx, 0x51a300de
xor ecx, 0x43f28638
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x76ee6c46
xor edx, 0x64bfeaa0
add eax, edx
add eax, 1
add eax, ecx
and eax, 0xe1ef9526
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0xc32d23e3
add eax, ecx
mov ecx, 0x54ea4f19
xor ecx, 0x1a474e6
cmp eax, ecx
jb 0x1400439d4
mov rcx, qword [rsp + 0xa0]
mov eax, dword [0x140252078]
mov r9d, dword [0x14025207c]
mov r8d, 0x7b6bd085
xor r8d, 0x84942f7a
mov edx, eax
xor edx, r8d
mov r8d, r9d
and r8d, edx
mov r10d, r9d
xor r10d, 0xffffffff
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, eax
xor edx, 0xcb8086a
mov r8d, 0xffffffff
xor r8d, 0xcb8086a
and eax, r8d
shl eax, 1
sub eax, edx
sub eax, 0xd018e5ec
mov edx, 0x9342188f
xor edx, 0xb7a90f19
sub eax, edx
cmp rcx, 0
setl cl
mov byte [rsp + 0x9f], cl
cmp eax, 0x558eb205
jb 0x14004313c
mov al, byte [rsp + 0x9f]
test al, 1
jne 0x1400431e4
jmp 0x140043204
mov rcx, qword [rsp + 0xa0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000cee2
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0xa0]
call fcn.140014c40
mov rdx, qword [rsp + 0x360]
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x90], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140043268
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x90]
add rdx, 0xffffffffffffffff
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r8d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r8d, 0x1e
mov r9b, 0x8e
xor r9b, 0x72
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x6caa8b5872b32129
movabs r8, 0x6caa8b5872b32129
xor rdx, r8
movabs r8, 0x45ae079a3f1dad2c
movabs r9, 0x45ae079a3f1dad2d
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x80], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x88], rcx
cmp rax, rcx
jl 0x140043353
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
movabs rax, 0x9300a6b179f8f86
movabs r8, 0xf6cff594e8607079
xor rax, r8
movabs r8, 0xf606d8e5c74eea2c
movabs r9, 0x9f9271a38b115d3
xor r8, r9
xor rax, r8
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x80]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 0x18
mov r10b, r9b
mov r11b, 0xff
xor r11b, 0x3f
mov r9b, r10b
xor r9b, r11b
and r9b, r10b
mov r11b, 0xff
xor r11b, 0x80
mov r10b, r9b
and r10b, r11b
mov r11b, r9b
xor r11b, 0x80
add r9b, r11b
sub r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xf39b3a89e8b35bf2
add rax, rdx
movabs rdx, 0xd90b3d5972712a07
movabs r8, 0xd90b3d5972712a05
xor rdx, r8
add rax, rdx
movabs rdx, 0xf39b3a89e8b35bf2
sub rax, rdx
mov qword [rsp + 0x70], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x78], rcx
cmp rax, rcx
jl 0x140043437
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov r9d, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x70]
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x360]
shr r9d, 0x12
and r9b, 0x3f
mov r10b, 0x45
xor r10b, 0xc5
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xb1ab6c2d71c32ccc
movabs r8, 0xb1ab6c2d71c32ccc
xor rdx, r8
sub rdx, rax
xor eax, eax
sub rax, 3
add rdx, rax
movabs rax, 0x710fd350cac62998
movabs r8, 0x710fd350cac62998
xor rax, r8
sub rax, rdx
mov qword [rsp + 0x60], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
cmp rax, rcx
jl 0x140043502
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140013507
jmp 0x140043931
mov ecx, dword [0x140252080]
mov edx, dword [0x140252084]
mov eax, 0xfdff0d2d
xor eax, 0xfb5ba248
xor edx, eax
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0x7a68e3eb
mov ecx, 0x34e18fd
xor ecx, 0x11e6d970
imul eax, ecx
xor ecx, ecx
sub ecx, 0x68d7226a
sub eax, ecx
mov ecx, 0xd0f8423d
xor ecx, 0x18d963ab
cmp eax, ecx
jae 0x1400439dd
mov rcx, qword [rsp + 0x360]
mov eax, dword [0x140252088]
mov edx, 0x51b0723
xor edx, 0xc0a84d26
xor eax, edx
xor edx, edx
div dword [0x14025208c]
mov edx, eax
mov eax, 0x59f7484a
xor eax, 0x55ed5eab
or edx, eax
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, 0x15ad86ee
xor edx, 0xa6a3c9fa
mov r8d, 0xd0d9874
xor r8d, 0xbe03d760
and edx, r8d
xor edx, 0xffffffff
mov r8d, 0x5c0918e3
xor r8d, 0xa3f6e71c
xor eax, r8d
mov r8d, 0xe975072c
xor r8d, 0x168af8d3
xor edx, r8d
or eax, edx
sub eax, 0xb404b004
mov dword [rsp + 0x44], eax
call fcn.1400439f0
mov r10d, dword [rsp + 0x1f8]
mov r8, qword [rsp + 0x340]
mov r9, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x360]
mov eax, dword [rsp + 0x44]
mov ecx, 0xdd5702de
xor ecx, 0xdd5702d2
shr r10d, cl
mov rcx, qword [rsp + 0x2e0]
and r10b, 0x3f
or r10b, 0x80
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
xor r8d, r8d
sub r8, rcx
xor ecx, ecx
sub rcx, 4
add r8, rcx
xor ecx, ecx
sub rcx, r8
mov qword [rsp + 0x48], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x50], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x5f], cl
cmp eax, 0xf0115b17
je 0x1400439dd
mov al, byte [rsp + 0x5f]
test al, 1
jne 0x1400436bf
jmp 0x14004366a
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
movabs rax, 0xfddd27f87bf7d032
sub rdx, rax
movabs rax, 0xcd9f834ec2337781
movabs r8, 0x32607cb13dcc887e
xor rax, r8
add rdx, rax
movabs rax, 0x61ab0e73e2642abc
movabs r8, 0x9c76298b9993fa8e
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov eax, dword [0x140252090]
xor eax, 0x2786ec26
mov edx, dword [0x140252094]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0x94f73e7e
xor r8d, 0x6b08c181
xor edx, r8d
and eax, edx
sub eax, ecx
add eax, 0xafd547fc
add eax, 0x3532e551
imul eax, eax, 0x7570664e
cmp eax, 0xa8ca459
je 0x1400439e6
mov rcx, qword [rsp + 0x360]
mov eax, dword [0x140252098]
mov edx, dword [0x14025209c]
mov r8d, 0x2ef507ad
xor r8d, 0x34595832
xor edx, r8d
imul eax, edx
mov edx, 0x418e65ca
xor edx, 0xf95ead16
add eax, edx
mov edx, 0xe43c5f2f
xor edx, 0x544fcd21
sub eax, edx
sub eax, 0xb8d0c8dc
mov edx, 0x9df95ac4
xor edx, 0x6206a53b
xor eax, edx
mov r8d, 0xffffffff
xor r8d, 0x5290d574
mov edx, 0x18ec6e46
xor edx, 0x42a49d85
mov r9d, 0xcf2e33c2
xor r9d, 0x30d1cc3d
xor edx, r9d
or eax, r8d
or edx, 0x5a48f3c3
xor eax, 0xffffffff
and eax, edx
mov r8d, 0xffffffff
xor r8d, 0x60852ca4
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0x60852ca4
add eax, r8d
sub eax, edx
mov dword [rsp + 0x2c], eax
call fcn.1400439f0
mov r10d, dword [rsp + 0x1f8]
mov r8, qword [rsp + 0x340]
mov r9, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x360]
mov eax, dword [rsp + 0x2c]
shr r10d, 6
mov r11b, r10b
xor r11b, 0x3f
mov bl, 5
xor bl, 0xfa
xor r11b, bl
or r10b, 0x3f
and r10b, r11b
mov bl, 0xf4
xor bl, 0x74
mov r11b, 0x7f
xor r11b, 0x80
xor bl, r11b
mov r11b, r10b
and r11b, bl
mov bl, r10b
xor bl, 0x80
add r10b, bl
sub r10b, r11b
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
mov r8, rcx
and r8, 5
shl r8, 1
movabs r9, 0xa36b22549e2ce8a7
movabs r10, 0xa36b22549e2ce8a2
xor r9, r10
xor rcx, r9
add rcx, r8
mov qword [rsp + 0x30], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x38], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x43], cl
cmp eax, 0xfd31a979
ja 0x1400439e6
mov al, byte [rsp + 0x43]
test al, 1
jne 0x1400438ae
jmp 0x140043880
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
movabs rax, 0x4059df684400002
movabs r8, 0xfbfa62097bbffffd
xor rax, r8
add rdx, rax
call fcn.140013507
jmp 0x140043931
mov rcx, qword [rsp + 0x360]
call fcn.1400439f0
mov ecx, dword [rsp + 0x1f8]
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0xa0]
and cl, 0x3f
or cl, 0x80
mov qword [rsp + 0x1c0], rdx
mov byte [rsp + 0x1cf], cl
mov qword [rsp + 0x1d0], rax
mov rax, qword [rsp + 0x1f0]
mov rdx, qword [rsp + 0x340]
mov r8, qword [rsp + 0x1c0]
mov r9b, byte [rsp + 0x1cf]
mov rcx, qword [rsp + 0x1d0]
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
mov qword [rsp + 0x348], rcx
mov qword [rsp + 0x350], rax
jmp 0x1400400a8
mov rax, qword [rsp + 0x368]
add rsp, 0x390
pop rbx
pop rdi
pop rsi
ret
movsq qword [rdi], qword [rsi]
or edi, dword [rax - 0x384a17]
invalid
jns 0x14004399e
add dword [rcx + rbp*8 - 0x348d], eax
rol byte [rdx - 0x7e16b40e], 0xcf
invalid
invalid
invalid
adc dh, ah
invalid
ja 0x140043966
retf
cmp ebx, ecx
add bh, byte [rdx - 0x17]
ret 0xffd5
invalid
out 0xd3, al
add al, byte [rax]
jmp 0x1400416d1
jno 0x1400439d3
sub ecx, 0xffffe161
ret 0x6185
invalid
sub ch, ah
invalid
invalid
test rax, 0xffffffff83e98c4b
jmp 0x1287c39c3
ja 0x1400439ac
xor ecx, ebp
xchg edx, eax
invalid
invalid
push qword [rax]
xor dword [rcx + 0x2d], ebx
jmp 0x14004313c
xor byte [rcx], dh
pop rcx
sub eax, 0xfff75fe9
call [rcx + rsi - 0x32]
pop rsp
xor esi, ecx
add al, 0xe9
insd dword [rdi], dx
sti
invalid
stosd dword [rdi], eax
rol dl, 0x57
jmp 0x140043706