Function at 0x140035cd2
Capabilities:
Authenticate hmac
Encode data using base64

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x388
mov qword [rsp + 0x368], r8
mov qword [rsp + 0x350], rdx
mov qword [rsp + 0x358], rcx
mov qword [rsp + 0x360], rcx
mov rax, qword [0x1401a1928]
mov ecx, dword [rax]
call fcn.14000a414
mov r8, qword [rsp + 0x368]
add rax, 0x60
mov qword [rsp + 0x370], rax
cmp r8, 0
jge 0x140035d69
mov rcx, qword [rsp + 0x368]
movabs rdx, 0xe5ab83e3b2efb5f2
movabs rax, 0xe5ab83e3b2efb5f2
xor rdx, rax
movabs r8, 0xc9d58e452f1f4d63
movabs rax, 0xb62a71bad0e0b29c
xor r8, rax
call fcn.140010917
jmp 0x140039614
mov rdx, qword [rsp + 0x368]
lea rcx, [rsp + 0x378]
call fcn.14002129f
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x368]
mov rdx, qword [rsp + 0x378]
mov qword [rcx], rdx
mov rdx, qword [rsp + 0x380]
mov qword [rcx + 8], rdx
movabs rcx, 0x415f1b06a8badac7
movabs rdx, 0x415f1b06a8badac7
xor rcx, rdx
cmp rax, rcx
je 0x140039614
mov rax, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x368]
mov rdx, rcx
add rdx, 0xfffffffffffffffa
mov qword [rsp + 0x2e8], rdx
xor rdx, rcx
cmp rdx, 0
setl r8b
movabs rdx, 0xfb5bf646f9a81fe2
movabs r9, 0xfb5bf646f9a81fe7
xor rdx, r9
cmp rcx, rdx
setg dl
xor r9d, r9d
xor r9b, 1
xor dl, r9b
mov r9b, 1
xor r9b, 0
xor r8b, r9b
xor r9d, r9d
xor r9b, 0
mov r10b, 1
xor r10b, 0
xor r9b, r10b
or dl, r8b
xor r8d, r8d
xor r8b, 0
or r8b, r9b
xor r9d, r9d
xor r9b, 1
xor dl, r9b
and dl, r8b
mov byte [rsp + 0x2f7], dl
mov rdx, rcx
add rdx, 0xfffffffffffffffb
mov qword [rsp + 0x2f8], rdx
mov r9, rdx
and r9, rcx
movabs r8, 0xd634c5d5ad21c08a
movabs r10, 0xd634c5d5ad21c088
xor r8, r10
imul r8, r9
add rdx, rcx
sub rdx, r8
movabs r8, 0x460a6b4a7b1ecd04
movabs r9, 0x460a6b4a7b1ecd04
xor r8, r9
cmp rdx, r8
setl r9b
movabs rdx, 0x9756eee134029446
movabs r8, 0x9756eee134029442
xor rdx, r8
cmp rcx, rdx
setg dl
xor dl, 0xff
xor r9b, 0xff
mov r8b, 1
xor r8b, 1
xor r10d, r10d
xor r10b, 1
xor r8b, r10b
or dl, r9b
or r8b, 0
xor dl, 0xff
and dl, r8b
mov byte [rsp + 0x307], dl
xor edx, edx
mov r8d, edx
sub r8, rcx
movabs rdx, 0x46beb9e5a2dfa55b
movabs r9, 0x46beb9e5a2dfa55b
xor rdx, r9
movabs r9, 0x11f5aa0d426e240d
movabs r10, 0xee0a55f2bd91dbf1
xor r9, r10
sub rdx, r9
add r8, rdx
movabs rdx, 0x9382dad8e8f4ff27
movabs r9, 0x9382dad8e8f4ff27
xor rdx, r9
sub rdx, r8
mov qword [rsp + 0x308], rdx
xor rdx, rcx
movabs r8, 0xb01caf7214e82e8e
movabs r9, 0xb01caf7214e82e8e
xor r8, r9
cmp rdx, r8
setl r8b
cmp rcx, 3
setg dl
and dl, r8b
mov byte [rsp + 0x317], dl
mov r8, rcx
add r8, 0xfffffffffffffffd
mov qword [rsp + 0x318], r8
movabs rdx, 0xecedc84af3db091
movabs r9, 0xf131237b50c24f6e
xor rdx, r9
mov r9, r8
xor r9, rdx
mov rdx, rcx
and rdx, r9
movabs r10, 0x27de9cb473a3584e
movabs r9, 0xd821634b8c5ca7b1
xor r10, r9
mov r9, rcx
xor r9, r10
and r8, r9
or rdx, r8
cmp rdx, 0
setl r9b
movabs rdx, 0x1f067aaf145b521b
movabs r8, 0x1f067aaf145b5219
xor rdx, r8
cmp rcx, rdx
setg dl
mov r8b, dl
xor r8b, r9b
xor r8b, 0xff
or dl, r9b
and dl, r8b
mov byte [rsp + 0x327], dl
mov r8, 0xffffffffffffffff
xor r8, 0xfffffffffffffffe
movabs rdx, 0xe6a62d2c72c62138
movabs r9, 0xe6a62d2c72c62138
xor rdx, r9
movabs r9, 0x1143230640fe1b13
movabs r10, 0x1143230640fe1b12
xor r9, r10
sub rdx, r9
sub r8, rdx
mov rdx, rcx
sub rdx, r8
mov qword [rsp + 0x328], rdx
xor rdx, rcx
movabs r8, 0xa31ca2f47295bf11
movabs r9, 0xa31ca2f47295bf11
xor r8, r9
cmp rdx, r8
setl dl
movabs r8, 0x668b69643ca56da8
movabs r9, 0x668b69643ca56da9
xor r8, r9
cmp rcx, r8
setg cl
and cl, dl
mov byte [rsp + 0x337], cl
add rax, 8
mov qword [rsp + 0x338], rax
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x340], rcx
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x348]
mov qword [rsp + 0x2d0], rdx
mov qword [rsp + 0x2d8], rcx
mov al, byte [rax + rcx]
mov byte [rsp + 0x2e7], al
cmp al, 0xff
jle 0x140036163
mov rax, qword [rsp + 0x2d8]
mov cl, byte [rsp + 0x2e7]
movzx ecx, cl
mov rdx, rax
and rdx, 1
movabs r8, 0x1041079a387a955d
movabs r9, 0x1041079a387a955f
xor r8, r9
imul rdx, r8
movabs r8, 0xc33f52d1918841a9
movabs r9, 0xc33f52d1918841a8
xor r8, r9
xor rax, r8
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x14003619a
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov al, byte [rsp + 0x2e7]
movzx eax, al
mov ecx, eax
mov qword [rsp + 0x2b8], rcx
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 0xe0
or rax, rdx
and rcx, 0xe0
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0xc0
jne 0x140036396
mov al, byte [rsp + 0x337]
test al, 1
jne 0x1400361f8
jmp 0x140036202
call fcn.14000a590
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x328]
movabs rcx, 0xb009d05c68d49531
movabs rax, 0xb009d05c68d49530
xor rcx, rax
mov rax, rdx
and rax, rcx
movabs r9, 0xd49a35408802e958
movabs rcx, 0xd49a35408802e959
xor r9, rcx
mov rcx, rdx
or rcx, r9
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 0x14003718e
mov rax, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x1400362c1
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x368]
movabs rax, 0x40c409fb516d14a2
movabs r8, 0xbf3bf604ae92eb5d
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x350]
mov r8, qword [rsp + 0x2b0]
mov cl, byte [rsp + 0x2e7]
mov r9b, 0xa3
xor r9b, 0x5c
xor cl, r9b
mov r9b, 0x2f
xor r9b, 0x30
mov r10b, 0x25
xor r10b, 0xda
xor r9b, r10b
mov r10b, 0xff
xor r10b, 0x2b
or cl, r9b
mov r9b, 0x36
xor r9b, 0x1d
or r9b, r10b
xor cl, 0xff
and cl, r9b
movzx ecx, cl
shl ecx, 6
mov dl, byte [rdx + r8]
mov r8b, 2
xor r8b, 0x3d
and dl, r8b
movzx r9d, dl
mov edx, 0xd3f5cf04
xor edx, 0x2c0a30fb
mov r8d, r9d
xor r8d, edx
mov edx, ecx
and edx, r8d
mov r8d, ecx
xor r8d, r9d
add ecx, r8d
sub ecx, edx
movabs rdx, 0x249245f418b4ab8c
add rax, rdx
movabs rdx, 0x35cb91c177fce520
movabs r8, 0x35cb91c177fce522
xor rdx, r8
add rax, rdx
movabs rdx, 0x249245f418b4ab8c
sub rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2b8]
and rax, 0xf0
cmp rax, 0xe0
jne 0x140036637
mov al, byte [rsp + 0x327]
test al, 1
jne 0x1400363c4
jmp 0x1400363ce
call fcn.14000a590
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x318]
movabs rcx, 0x6d036cd7a91ed187
movabs rax, 0x6d036cd7a91ed187
xor rcx, rax
sub rcx, rdx
movabs rax, 0x2970d331900692db
movabs r9, 0x2970d331900692db
xor rax, r9
movabs r9, 0x81f25effb75d543
movabs r10, 0x81f25effb75d542
xor r9, r10
sub rax, r9
add rcx, rax
movabs rax, 0xbe4d553c617ad576
movabs r9, 0xbe4d553c617ad576
xor rax, r9
sub rax, rcx
mov qword [rsp + 0x2a8], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x14003718e
mov rax, qword [rsp + 0x2a8]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x1400364b8
mov rcx, qword [rsp + 0x2a8]
mov rdx, qword [rsp + 0x368]
movabs rax, 0x814317c65f5d5857
movabs r8, 0x7ebce839a0a2a7a8
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0xc3efc5dfb838d7d7
movabs r8, 0xc3efc5dfb838d7d5
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x2a0], rax
cmp rax, rcx
jl 0x140036511
mov rcx, qword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x350]
mov r8, qword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x2a8]
mov r10b, byte [rsp + 0x2e7]
mov r9b, r10b
xor r9b, 0xff
xor r10b, 0xff
and r9b, r10b
mov r10b, 0x62
xor r10b, 0x6d
mov r11b, 0x2a
xor r11b, 0x25
or r10b, r11b
mov r11b, 0xee
xor r11b, 0x11
xor r10b, r11b
or r9b, r10b
mov r10b, 0x8e
xor r10b, 0x71
xor r9b, r10b
movzx r9d, r9b
shl r9d, 0xc
mov cl, byte [rdx + rcx]
mov r10b, 0xb2
xor r10b, 0x4d
xor cl, r10b
mov r11b, 0x6f
xor r11b, 0x50
mov r10b, 0xb9
xor r10b, 0x46
xor r11b, r10b
mov r10b, 0x76
xor r10b, 0xd3
mov bl, 0x8d
xor bl, 0x72
xor r10b, bl
or cl, r11b
or r10b, 0xa5
mov r11b, 0x78
xor r11b, 0x87
xor cl, r11b
and cl, r10b
movzx ecx, cl
shl ecx, 6
or ecx, r9d
mov r8b, byte [rdx + r8]
mov dl, r8b
and dl, 0x3f
mov r9b, 0x98
xor r9b, 0x67
xor dl, r9b
mov r9b, 0x6b
xor r9b, 0x94
xor r8b, r9b
mov r9b, 0xff
xor r9b, 0x3f
or r8b, r9b
xor dl, 0xff
xor r8b, 0xff
or dl, r8b
movzx edx, dl
or ecx, edx
movabs rdx, 0x76ac9b2a3ee5238b
sub rax, rdx
add rax, 3
movabs rdx, 0xff7c3fa6a84d9b97
movabs r8, 0x89d0a48c96a8b81c
xor rdx, r8
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2b8]
and rax, 0xf8
cmp rax, 0xf0
jne 0x1400369d8
mov al, byte [rsp + 0x317]
test al, 1
jne 0x140036665
jmp 0x14003666f
call fcn.14000a590
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x308]
movabs rcx, 0x8d272bb75c604b61
movabs rax, 0x8d272bb75c604b60
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x298], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x14003718e
mov rax, qword [rsp + 0x298]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x140036702
mov rcx, qword [rsp + 0x298]
mov rax, qword [rsp + 0x368]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rdx, qword [rsp + 0x2d8]
mov rax, rdx
and rax, 2
movabs r8, 0xbdc147652dd1067c
movabs r9, 0xbdc147652dd1067e
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x290], rax
cmp rax, rcx
jl 0x140036765
mov rcx, qword [rsp + 0x290]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0x521baabb6b5daca
movabs r8, 0xc525e39b79140f83
xor rdx, r8
sub rax, rdx
add rax, 3
movabs rdx, 0xc0045930cfa1d549
add rax, rdx
mov qword [rsp + 0x288], rax
cmp rax, rcx
jl 0x1400367ef
mov rcx, qword [rsp + 0x288]
mov rax, qword [rsp + 0x368]
movabs r8, 0xd0fbc3d1cf9e6d84
movabs rdx, 0x2f043c2e3061927b
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x350]
mov r8, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x298]
mov r10b, byte [rsp + 0x2e7]
mov r11b, 0xff
xor r11b, 7
mov r9b, r10b
xor r9b, r11b
and r9b, r10b
movzx r9d, r9b
shl r9d, 0x12
mov cl, byte [rdx + rcx]
xor cl, 0xff
mov r11b, 0x8e
xor r11b, 0xb1
mov r10b, 0x34
xor r10b, 0xcb
xor r11b, r10b
mov r10b, 0xff
xor r10b, 0x4a
or cl, r11b
or r10b, 0x4a
mov r11b, 0xb5
xor r11b, 0x4a
xor cl, r11b
and cl, r10b
movzx ebx, cl
mov ecx, 0xebd8c422
xor ecx, 0xebd8c42e
shl ebx, cl
mov rcx, qword [rsp + 0x290]
or ebx, r9d
mov cl, byte [rdx + rcx]
mov r9b, 0x11
xor r9b, 0xee
xor cl, r9b
mov r9b, 0xeb
xor r9b, 0xd4
mov r10b, 0x51
xor r10b, 0xae
xor r9b, r10b
mov r10b, 0xc1
xor r10b, 0xa6
mov r11b, 0xc6
xor r11b, 0x39
xor r10b, r11b
or cl, r9b
mov r9b, 0x2b
xor r9b, 0x4c
or r9b, r10b
mov r10b, 0xbd
xor r10b, 0x42
xor cl, r10b
and cl, r9b
movzx edi, cl
shl edi, 6
mov r9d, ebx
xor r9d, 0xffffffff
mov r10d, edi
xor r10d, 0xffffffff
mov r11d, 0x582500b0
xor r11d, 0x3ebee207
mov ecx, 0xd2f477a2
xor ecx, 0x2d0b885d
xor r11d, ecx
mov esi, 0xf3b065c8
xor esi, 0x952b877f
mov ecx, r9d
and ecx, esi
and ebx, r11d
mov ebp, 0x5b086472
xor ebp, 0x3d9386c5
mov esi, r10d
and esi, ebp
and edi, r11d
or ecx, ebx
or esi, edi
xor ecx, esi
or r9d, r10d
xor r9d, 0xffffffff
mov r10d, 0x81022b7a
xor r10d, 0xe799c9cd
or r10d, r11d
and r9d, r10d
or ecx, r9d
mov dl, byte [rdx + r8]
xor dl, 0xff
mov r8b, 0xff
xor r8b, 0x3f
mov r9b, 0xff
xor r9b, 0xf
or dl, r8b
mov r8b, 0x4d
xor r8b, 0x42
or r8b, r9b
xor dl, 0xff
and dl, r8b
movzx r8d, dl
mov edx, r8d
and edx, ecx
xor edx, 0xffffffff
add ecx, r8d
mov r8d, 0xb5a3e857
xor r8d, 0xb5a3e856
add ecx, r8d
add ecx, edx
movabs rdx, 0x67f5d6d507fb55c
movabs r8, 0x67f5d6d507fb558
xor rdx, r8
movabs r8, 0x7f0abe7c41b9e87e
movabs r9, 0x80f54183be461781
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2b8]
movabs rcx, 0x4c037701f21ea334
movabs rdx, 0x4c037701f21ea3c8
xor rcx, rdx
and rax, rcx
cmp rax, 0xf8
jne 0x140036db4
mov al, byte [rsp + 0x307]
test al, 1
jne 0x140036a1a
jmp 0x140036a24
call fcn.14000a590
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x2f8]
xor eax, eax
mov ecx, eax
sub rcx, 1
mov rax, rdx
sub rax, rcx
mov qword [rsp + 0x280], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x14003718e
mov rax, qword [rsp + 0x280]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x140036ab4
mov rcx, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x368]
movabs rax, 0x35b4f2314543b211
movabs r8, 0xca4b0dcebabc4dee
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0x33f486b506215d56
movabs r8, 0x33f486b506215d54
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x278], rax
cmp rax, rcx
jl 0x140036b3d
mov rcx, qword [rsp + 0x278]
mov rdx, qword [rsp + 0x368]
movabs rax, 0x8208bf33afddaf24
movabs r8, 0x8208bf33afddaf24
xor rax, r8
movabs r8, 0x3cec979a65bc91d0
movabs r9, 0xc31368659a436e2f
xor r8, r9
sub rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0xf0fe0ec03c80afe8
sub rax, rdx
add rax, 3
movabs rdx, 0xe6a0831bfc9c83df
movabs r8, 0x165e8ddbc01c2c37
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x270], rax
cmp rax, rcx
jl 0x140036bbd
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x368]
movabs rax, 0x383f732102ca10cb
movabs r8, 0xc7c08cdefd35ef34
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0x3afb42a250e33a56
movabs r8, 0x3afb42a250e33a52
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x268], rax
cmp rax, rcx
jl 0x140036c1b
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x368]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x350]
mov r8, qword [rsp + 0x268]
mov r9, qword [rsp + 0x270]
mov r10, qword [rsp + 0x280]
mov cl, byte [rsp + 0x2e7]
and cl, 3
movzx r11d, cl
mov ecx, 0x7935ded1
xor ecx, 0x7935dec9
shl r11d, cl
mov rcx, qword [rsp + 0x278]
mov r10b, byte [rdx + r10]
mov sil, 0x37
xor sil, 8
mov bl, r10b
xor bl, sil
mov sil, 0xe9
xor sil, 0x16
xor bl, sil
mov sil, 0x32
xor sil, 0xd
or r10b, sil
and r10b, bl
movzx r10d, r10b
shl r10d, 0x12
or r10d, r11d
mov dword [rsp + 0x264], r10d
mov r10b, byte [rdx + rcx]
mov r11b, 0x9f
xor r11b, 0x60
mov cl, r10b
xor cl, r11b
mov r11b, 0x49
xor r11b, 0xb6
xor r10b, r11b
and cl, r10b
mov r10b, 0xff
xor r10b, 0x3f
mov r11b, 0xe0
xor r11b, 0xdf
mov bl, 0x6b
xor bl, 0x94
xor r11b, bl
and r10b, r11b
mov r11b, 4
xor r11b, 0xfb
xor cl, r11b
mov r11b, 0x44
xor r11b, 0xbb
xor r10b, r11b
and cl, r10b
movzx r10d, cl
mov ecx, 0xc1bb2fb
xor ecx, 0xc1bb2f7
shl r10d, cl
mov ecx, dword [rsp + 0x264]
or ecx, r10d
mov r9b, byte [rdx + r9]
and r9b, 0x3f
movzx r11d, r9b
shl r11d, 6
mov r10d, r11d
xor r10d, 0xffffffff
mov r9d, ecx
and r9d, r10d
mov r10d, ecx
xor r10d, r11d
add ecx, r10d
sub ecx, r9d
mov r8b, byte [rdx + r8]
mov r9b, 0x3d
xor r9b, 0xc2
mov dl, r8b
xor dl, r9b
mov r9b, 0xff
xor r9b, 0x3f
or dl, r9b
and r8b, 0x3f
mov r9b, 0x8c
xor r9b, 0x73
xor r8b, r9b
and dl, r8b
xor dl, 0xff
movzx edx, dl
and ecx, ecx
xor ecx, 0xffffffff
and edx, edx
xor edx, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0x8a34d7fd
xor r8d, 0x75cb2802
xor edx, r8d
or ecx, edx
movabs rdx, 0x8b28299ee531b71
movabs r8, 0x8b28299ee531b74
xor rdx, r8
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2b8]
movabs rdx, 0xc608753ae50b3ac
movabs rcx, 0xc608753ae50b352
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
movabs rdx, 0x62a7ec0498ecd3e1
movabs r8, 0x9d5813fb67132c1e
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x656e015197ed2e2c
movabs r8, 0x656e015197ed2ed2
xor rdx, r8
or rax, rdx
and rax, rcx
cmp rax, 0xfc
jne 0x14003712f
mov al, byte [rsp + 0x2f7]
test al, 1
jne 0x140036e30
jmp 0x140036e3a
call fcn.14000a590
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x2e8]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x258], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jg 0x14003718e
mov rax, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x368]
cmp rax, rcx
jl 0x140036ef7
mov rcx, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x368]
movabs rax, 0xd83c9e65dfda7e8
movabs r8, 0xbae8a9f049c8e32d
xor rax, r8
add rdx, rax
movabs rax, 0x906597a98c15d5ce
movabs r8, 0x6f9a685673ea2a31
xor rax, r8
add rdx, rax
movabs rax, 0xea69176109e39bf0
movabs r8, 0x5d0277771dd6df35
xor rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0xe79fb2eb6090191c
sub rax, rdx
add rax, 2
movabs rdx, 0xb809355bb0bbc4e
movabs r8, 0xec1f21bedb9ba552
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x250], rax
cmp rax, rcx
jl 0x140036f61
mov rcx, qword [rsp + 0x250]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0x7cf2900c0e91ff0a
movabs r8, 0x7cf2900c0e91ff09
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x248], rax
cmp rax, rcx
jl 0x140036fbf
mov rcx, qword [rsp + 0x248]
mov rdx, qword [rsp + 0x368]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
movabs rdx, 0x9ba886b229bd6de5
movabs r8, 0x9ba886b229bd6de1
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x240], rax
cmp rax, rcx
jl 0x140037018
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x2d8]
add rax, 5
mov qword [rsp + 0x238], rax
cmp rax, rcx
jl 0x14003705b
mov rcx, qword [rsp + 0x238]
mov rdx, qword [rsp + 0x368]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rdx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x238]
mov r9, qword [rsp + 0x258]
mov r8b, byte [rsp + 0x2e7]
and r8b, 1
movzx r8d, r8b
shl r8d, 0x1e
movd xmm1, dword [rax + r9]
movaps xmm0, xmmword [0x140197ec0]
pand xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
movaps xmm2, xmmword [0x140197ed0]
movaps xmm0, xmm1
pmuludq xmm0, xmm2
pshufd xmm0, xmm0, 0xe8
pshufd xmm1, xmm1, 0xf5
pshufd xmm2, xmm2, 0xf5
pmuludq xmm1, xmm2
pshufd xmm1, xmm1, 0xe8
punpckldq xmm0, xmm1
movzx eax, byte [rax + rcx]
and eax, 0x3f
pshufd xmm1, xmm0, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm0, xmm1
movd ecx, xmm0
or ecx, r8d
or ecx, eax
movabs r8, 0x64d85b1e6fa4a83c
movabs rax, 0x64d85b1e6fa4a83a
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 6
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
jmp 0x14003718e
mov rax, qword [rsp + 0x2d8]
mov cl, byte [rsp + 0x2e7]
movzx ecx, cl
movabs r8, 0xc4c720ce44afc188
movabs rdx, 0xc4c720ce44afc189
xor r8, rdx
mov rdx, rax
and rdx, r8
shl rdx, 1
movabs r8, 0x9b319698f43dfa31
movabs r9, 0x9b319698f43dfa30
xor r8, r9
xor rax, r8
add rax, rdx
mov dword [rsp + 0x2c4], ecx
mov qword [rsp + 0x2c8], rax
mov ecx, dword [rsp + 0x2c4]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x228], rax
call fcn.1400355f8
mov ecx, eax
mov rax, qword [rsp + 0x370]
mov dword [rsp + 0x234], ecx
mov al, byte [rax]
mov cl, 0x1f
xor cl, 0x1f
cmp al, cl
jne 0x140039614
mov eax, dword [rsp + 0x234]
cmp eax, 0x80
jae 0x1400373fc
mov rdx, qword [rsp + 0x2d0]
movabs rcx, 0xea85cdb622628cac
movabs rax, 0xea85cdb622628cad
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x220], rax
xor rdx, 0xffffffffffffffff
movabs rcx, 0x352725b1ecad205a
movabs r8, 0xcad8da4e1352dfa5
xor rcx, r8
xor rax, rcx
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xfc4040983817b4ed
xor rcx, r8
or rax, rdx
movabs rdx, 0xfc4040983817b4ed
or rcx, rdx
movabs rdx, 0x271253c2a56b57fb
movabs r8, 0xd8edac3d5a94a804
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140037280
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0x220]
movabs rcx, 0xfbb75c62fdf91759
movabs rdx, 0xfbb75c62fdf91759
xor rcx, rdx
cmp rax, rcx
jge 0x1400372e8
mov rcx, qword [rsp + 0x220]
movabs rdx, 0xc4f5006a21032977
movabs rax, 0xc4f5006a21032977
xor rdx, rax
movabs r8, 0x2ddec92fd547cd4e
movabs rax, 0x522136d02ab832b1
xor r8, rax
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x220]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x218], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14003734c
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x218]
add rdx, 0xffffffffffffffff
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0x271d9ceef95880de
movabs rdx, 0x271d9ceef95880df
xor r8, rdx
mov rdx, rcx
add rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x1e75b4cfdb4e7095
movabs r9, 0x5e75b4cfdb4e7095
xor r8, r9
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x210], rax
je 0x1400373ca
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0x210]
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
jmp 0x1400395e3
mov eax, dword [rsp + 0x234]
cmp eax, 0x800
jae 0x14003781d
mov rax, qword [rsp + 0x2d0]
movabs rdx, 0xa93cb84fface97e8
movabs rcx, 0xa93cb84fface97e8
xor rdx, rcx
sub rdx, rax
movabs rcx, 0x4024caa5a5a78a43
movabs r8, 0x4024caa5a5a78a43
xor rcx, r8
movabs r8, 0x5067b7330949b42a
movabs r9, 0x5067b7330949b428
xor r8, r9
sub rcx, r8
add rdx, rcx
movabs rcx, 0xf5265d7f311b902e
movabs r8, 0xf5265d7f311b902e
xor rcx, r8
sub rcx, rdx
mov qword [rsp + 0x200], rcx
mov r8, rax
xor r8, 0xffffffffffffffff
movabs rdx, 0x2c22d94495ce9abc
movabs r9, 0xd3dd26bb6a316543
xor rdx, r9
and rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rax, r8
or rdx, rax
movabs r8, 0x5754f6fd154c9c16
movabs rax, 0xa8ab0902eab363e9
xor r8, rax
mov rax, rcx
xor rax, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
or rax, r8
and rcx, rdx
movabs rdx, 0xcf22e6e0fb963029
movabs r8, 0x30dd191f0469cfd6
xor rdx, r8
xor rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xf36785e59b1eec82
movabs rdx, 0xf36785e59b1eec82
xor rcx, rdx
cmp rax, rcx
jge 0x14003752d
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0x200]
movabs rcx, 0x4a92caf917766425
movabs rdx, 0x4a92caf917766425
xor rcx, rdx
cmp rax, rcx
jge 0x140037595
mov rcx, qword [rsp + 0x200]
movabs rdx, 0x95e328ea013c6664
movabs rax, 0x95e328ea013c6664
xor rdx, rax
movabs r8, 0xc761920ed76e504d
movabs rax, 0xb89e6df12891afb2
xor r8, rax
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x200]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1f8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140037620
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x1f8]
movabs rax, 0x82b6dca5d2d3ed6c
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x3577d4473b33f6b1
movabs r8, 0xb7c108e2e9e01bdd
xor rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0x5d490afa56b2a6ae
movabs r8, 0x5d490afa56b2a6ae
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x1f0], rax
je 0x140037680
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x1f0], rax
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rax, qword [rsp + 0x1f0]
shr r8d, 6
mov r9b, 3
xor r9b, 0xc3
or r8b, r9b
mov byte [rax + rdx + 8], r8b
mov rax, rdx
and rax, 1
movabs r8, 0x3cebbb54a1f6e7be
movabs r9, 0x3cebbb54a1f6e7bf
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x1e0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1e8], rcx
cmp rax, rcx
jl 0x140037727
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
movabs rax, 0xe3cfa330831a2831
movabs r8, 0x1c305ccf7ce5d7ce
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
xor rcx, 0xffffffffffffffff
movabs r8, 0xcfd924a1e7373870
movabs rdx, 0x8fd924a1e7373870
xor r8, rdx
movabs rdx, 0xc050a9bf418051fd
movabs r9, 0x3faf5640be7fae02
xor rdx, r9
xor r8, rdx
mov rdx, 0xffffffffffffffff
movabs r9, 0xb1c0bf13984e92ed
xor rdx, r9
or rcx, r8
movabs r8, 0xb1c0bf13984e92ed
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0x3835d0fade6fb004
movabs r8, 0x3835d0fade6fb004
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x1d8], rax
je 0x1400377dd
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x200]
mov rdx, qword [rsp + 0x1e0]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0x1d8]
mov r9b, 0xe8
xor r9b, 0xd7
and r8b, r9b
or r8b, 0x80
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
jmp 0x1400395e3
mov eax, dword [rsp + 0x234]
mov ecx, 0xb34e9617
xor ecx, 0xb34f9617
cmp eax, ecx
jae 0x140037d27
mov rdx, qword [rsp + 0x2d0]
mov rax, rdx
add rax, 3
mov qword [rsp + 0x1d0], rax
movabs r8, 0x77d55e8619d0d7ef
movabs rcx, 0x882aa179e62f2810
xor r8, rcx
mov rcx, rdx
xor rcx, r8
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
shl rcx, 1
movabs r8, 0xf62593a8c4dd670
movabs r9, 0xf09da6c573b2298f
xor r8, r9
sub rcx, r8
sub rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
movabs rcx, 0x380e55284129dabf
movabs rdx, 0x380e55284129dabf
xor rcx, rdx
cmp rax, rcx
jge 0x1400378cf
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0x1d0]
movabs rcx, 0x4ea5852801a13611
movabs rdx, 0x4ea5852801a13611
xor rcx, rdx
cmp rax, rcx
jge 0x140037917
mov rcx, qword [rsp + 0x1d0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x1d0]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1c8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140037991
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x1c8]
movabs rax, 0xd504585562a8cde9
movabs r8, 0x2afba7aa9d573216
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0xf2dc4d324a91e96b
movabs r8, 0xb2dc4d324a91e96b
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x1c0], rax
je 0x1400379eb
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x1c0]
mov ecx, 0x3859f3b5
xor ecx, 0x3859f3b9
shr r8d, cl
mov rcx, qword [rsp + 0x358]
mov r9b, r8b
and r9b, 0xe0
xor r9b, 0xff
add r8b, 0xe0
add r8b, 1
add r8b, r9b
mov byte [rdx + rax + 8], r8b
add rax, 1
mov qword [rsp + 0x1b0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1b8], rcx
cmp rax, rcx
jl 0x140037ab0
mov rcx, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0xa82727a2f8217acd
movabs r9, 0xa82727a2f8217acd
xor r8, r9
movabs r9, 0xf15017622f5c097b
movabs r10, 0xf15017622f5c097a
xor r9, r10
sub r8, r9
sub rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rdx, qword [rax]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0xf19731b814b94c5e
movabs r9, 0xe68ce47eb46b3a1
xor r8, r9
xor rdx, r8
and rcx, rdx
movabs rdx, 0x363108902824905c
movabs r8, 0x763108902824905c
xor rdx, r8
movabs r8, 0x91a26c91460debfb
movabs r9, 0x6e5d936eb9f21404
xor r8, r9
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
and rdx, r8
or rcx, rdx
movabs rdx, 0x6cce545550966a35
movabs r8, 0x9331abaaaf6995ca
xor rdx, r8
xor rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x1a8], rax
je 0x140037b79
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x1a8], rax
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x1b0]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x1a8]
mov ecx, 0xac754fdd
xor ecx, 0xac754fdb
shr r9d, cl
mov rcx, qword [rsp + 0x358]
mov r10b, r9b
mov r11b, 0xca
xor r11b, 0x35
mov r9b, r10b
xor r9b, r11b
xor r10b, 0xff
and r9b, r10b
mov r10b, 0xff
xor r10b, 0x3f
mov r11b, 0xff
xor r11b, 0x3f
and r10b, r11b
or r9b, r10b
mov r10b, 0xae
xor r10b, 0x51
xor r9b, r10b
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xe7fe95aaefbac42e
movabs r8, 0xe7fe95aaefbac42c
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x198], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1a0], rcx
cmp rax, rcx
jl 0x140037c71
mov rcx, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1a0]
movabs rax, 0xdc27be9237ea86a3
add rdx, rax
movabs rax, 0xe1dff55875056e3f
movabs r8, 0x1e200aa78afa91c0
xor rax, r8
add rdx, rax
movabs rax, 0xdc27be9237ea86a3
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0x78dd25f9078d541e
movabs r8, 0x38dd25f9078d541e
xor rdx, r8
and rcx, rdx
movabs rdx, 0x5bb0147863badb82
movabs r8, 0x5bb0147863badb82
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x190], rax
je 0x140037ce1
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x190], rax
mov rax, qword [rsp + 0x1d0]
mov rdx, qword [rsp + 0x198]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0x190]
mov r9b, 0x3e
xor r9b, 1
and r8b, r9b
mov r9b, 0x6a
xor r9b, 0xea
or r8b, r9b
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
jmp 0x1400395e3
mov eax, dword [rsp + 0x234]
mov ecx, 0x75939ca8
xor ecx, 0x75b39ca8
cmp eax, ecx
jae 0x14003844a
mov rcx, qword [rsp + 0x2d0]
mov rax, rcx
and rax, 4
movabs r8, 0x4c4dc2bce8955ec0
movabs rdx, 0x4c4dc2bce8955ec4
xor r8, rdx
mov rdx, rcx
or rdx, r8
add rax, rdx
mov qword [rsp + 0x188], rax
mov rdx, rcx
or rdx, rdx
xor rdx, 0xffffffffffffffff
movabs r8, 0xaf054cdbe612594d
movabs r9, 0x50fab32419eda6b2
xor r8, r9
movabs r9, 0x49a8dae182f4c0d5
movabs r10, 0xb657251e7d0b3f2a
xor r9, r10
xor r8, r9
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
movabs r9, 0x7aeb56c5af11f23f
movabs r10, 0x8514a93a50ee0dc0
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
movabs rcx, 0x6607eea92c0a322c
movabs r8, 0x99f81156d3f5cdd3
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 0x140037e36
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0x188]
cmp rax, 0
jge 0x140037e88
mov rcx, qword [rsp + 0x188]
movabs rdx, 0x1cb44716a6c0ec1a
movabs rax, 0x1cb44716a6c0ec1a
xor rdx, rax
movabs r8, 0x62c59c40dfc2abfa
movabs rax, 0x1d3a63bf203d5405
xor r8, rax
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x188]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x180], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140037f02
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x180]
movabs rax, 0xab939561a569b697
movabs r8, 0x546c6a9e5a964968
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0x40d7e5c0ccba689b
movabs rdx, 0xd7e5c0ccba689b
xor r8, rdx
mov rdx, rcx
xor rdx, r8
movabs r8, 0x2f47834af86ce4ae
movabs r9, 0xd0b87cb507931b51
xor r8, r9
xor rdx, r8
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x178], rax
je 0x140037f89
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x178]
mov ecx, 0x104d7da4
xor ecx, 0x104d7db6
shr r8d, cl
mov rcx, qword [rsp + 0x358]
or r8b, 0xf0
mov byte [rdx + rax + 8], r8b
mov rdx, rax
and rdx, 1
movabs r8, 0x70341bff4ababe06
movabs r9, 0x70341bff4ababe04
xor r8, r9
imul rdx, r8
xor rax, 1
add rax, rdx
mov qword [rsp + 0x168], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x170], rcx
cmp rax, rcx
jl 0x14003806d
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
movabs rax, 0xee5a5bff8209be34
movabs r8, 0x5e8e064ea2858250
xor rax, r8
add rdx, rax
movabs rax, 0xe14ae6fb2db8bc89
movabs r8, 0x1eb51904d2474376
xor rax, r8
add rdx, rax
movabs rax, 0x3c899c2bc0d49019
movabs r8, 0x8c5dc19ae058ac7d
xor rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0xf367ea25e183db19
movabs r8, 0xf367ea25e183db19
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x160], rax
je 0x1400380cd
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x160], rax
mov rdx, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x168]
mov r9d, dword [rsp + 0x234]
mov rax, qword [rsp + 0x160]
mov ecx, 0xec21224f
xor ecx, 0xec212243
shr r9d, cl
mov rcx, qword [rsp + 0x358]
mov r11b, 0xd0
xor r11b, 0x2f
mov r10b, r9b
xor r10b, r11b
mov r11b, 0xff
xor r11b, 0x3f
or r10b, r11b
and r9b, 0x3f
mov r11b, 0xd1
xor r11b, 0x2e
xor r9b, r11b
xor r10b, 0xff
xor r9b, 0xff
or r10b, r9b
mov r11b, 0x10
xor r11b, 0xef
mov r9b, r10b
xor r9b, r11b
mov r11b, 0xe1
xor r11b, 0x61
mov bl, 0x2d
xor bl, 0xd2
xor r11b, bl
and r9b, r11b
mov r11b, 0x39
xor r11b, 0xb9
or r10b, r11b
xor r10b, 0xff
or r9b, r10b
mov r10b, 0xcb
xor r10b, 0x34
xor r9b, r10b
mov byte [rax + r8 + 8], r9b
mov rax, rdx
and rax, 2
movabs r8, 0x2734a50ac8fdcad5
movabs r9, 0x2734a50ac8fdcad7
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x150], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x158], rcx
cmp rax, rcx
jl 0x1400381e6
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
movabs rax, 0x91e3d0b68d01d1c0
movabs r8, 0x6e1c2f4972fe2e3f
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0x843cdcff8cc6cd0c
movabs r8, 0x843cdcff8cc6cd0c
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x148], rax
je 0x140038246
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x148], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x150]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x148]
shr r9d, 6
mov r10b, r9b
mov r11b, 0xf0
xor r11b, 0xf1
mov r9b, r10b
add r9b, r11b
xor r10b, 0xff
mov r11b, 0xf5
xor r11b, 0xca
or r10b, r11b
add r10b, r9b
mov r9b, r10b
xor r9b, 0xff
mov r11b, 0xa2
xor r11b, 0x5d
xor r10b, r11b
or r9b, r10b
mov r10b, pe_nt_image_headers64
and r10b, 0x80
xor r10b, 0xff
xor r9b, 0xff
xor r10b, 0xff
or r9b, r10b
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xa1caa11e3b22ebc2
movabs r8, 0xa1caa11e3b22ebc2
xor rdx, r8
sub rdx, rax
movabs rax, 0x353022e6e108b639
movabs r8, 0x353022e6e108b639
xor rax, r8
movabs r8, 0x474efb2411cd0f8c
movabs r9, 0x474efb2411cd0f8f
xor r8, r9
sub rax, r8
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x138], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x140], rcx
cmp rax, rcx
jl 0x140038365
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x140]
movabs rax, 0x81a5b8beee402ec6
movabs r8, 0x7e5a474111bfd139
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
mov rdx, rcx
add rdx, 1
movabs r8, 0xc203686845a869ca
movabs r9, 0x3dfc9797ba579635
xor r8, r9
xor rcx, r8
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x130], rax
je 0x1400383d6
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x138]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0x130]
mov r9b, r8b
mov r10b, 0xff
xor r10b, 0x3f
mov r8b, r9b
xor r8b, r10b
and r8b, r9b
and r8b, r8b
xor r8b, 0xff
mov r9b, 0xff
xor r9b, 0x80
mov r10b, 0x6e
xor r10b, 0xee
mov r11b, 0xdc
xor r11b, 0x23
xor r10b, r11b
or r9b, r10b
and r8b, r9b
mov r9b, 0x57
xor r9b, 0xa8
xor r8b, r9b
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
jmp 0x1400395e3
mov eax, dword [rsp + 0x234]
cmp eax, 0x4000000
jae 0x140038d2f
mov rdx, qword [rsp + 0x2d0]
movabs rcx, 0xcf7ff496889ec928
mov rax, rdx
sub rax, rcx
movabs rcx, 0x2c74fece4b1a45c1
movabs r8, 0x2c74fece4b1a45c4
xor rcx, r8
add rax, rcx
movabs rcx, 0xcf7ff496889ec928
add rax, rcx
mov qword [rsp + 0x128], rax
movabs rcx, 0x64c49ccc4093384a
movabs r8, 0x9b3b6333bf6cc7b5
xor rcx, r8
xor rdx, rcx
movabs r8, 0xa8a6b58dbb048a4e
movabs rcx, 0xa8a6b58dbb048a4f
xor r8, rcx
mov rcx, rax
add rcx, r8
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1400384f8
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0x128]
cmp rax, 0
jge 0x14003852a
mov rcx, qword [rsp + 0x128]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x128]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x120], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400385dd
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x120]
xor eax, eax
sub rax, rdx
movabs rdx, 0xd6ae4bd499a3ed49
movabs r8, 0xd6ae4bd499a3ed49
xor rdx, r8
movabs r8, 0x10a664c037ee6570
movabs r9, 0xef599b3fc8119a8f
xor r8, r9
sub rdx, r8
add rax, rdx
movabs rdx, 0x4c50d31412f595f7
movabs r8, 0x4c50d31412f595f7
xor rdx, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0x37c872e4fedd0475
movabs r8, 0x77c872e4fedd0475
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x118], rax
je 0x140038637
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x118]
mov ecx, 0xc078889f
xor ecx, 0xc0788887
shr r8d, cl
mov rcx, qword [rsp + 0x358]
mov r9b, r8b
mov r10b, 0x13
xor r10b, 0xec
mov r8b, r9b
xor r8b, r10b
mov r10b, 0x36
xor r10b, 0xc9
xor r9b, r10b
or r8b, r9b
mov r9b, 0xc5
xor r9b, 0x3d
mov r10b, 0x42
xor r10b, 0xba
and r9b, r10b
xor r9b, 0xff
and r8b, r9b
mov r9b, 0xa1
xor r9b, 0x5e
xor r8b, r9b
mov byte [rdx + rax + 8], r8b
add rax, 1
mov qword [rsp + 0x108], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x110], rcx
cmp rax, rcx
jl 0x1400386fd
mov rcx, qword [rsp + 0x108]
mov rdx, qword [rsp + 0x110]
movabs rax, 0xeadc2eb72d78bf86
movabs r8, 0x1523d148d2874079
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0x370f6e27f6a19505
movabs r8, 0x770f6e27f6a19505
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x100], rax
je 0x140038757
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x108]
mov r9d, dword [rsp + 0x234]
mov rax, qword [rsp + 0x100]
mov ecx, 0x3a9f2a33
xor ecx, 0x3a9f2a21
shr r9d, cl
mov rcx, qword [rsp + 0x358]
mov bpl, r9b
mov r9b, 0x2b
xor r9b, 0x14
and bpl, r9b
mov r9b, 0x96
xor r9b, 0x69
mov r10b, bpl
xor r10b, r9b
mov r11b, 0x62
xor r11b, 0xe2
mov r9b, 0x3d
xor r9b, 0xc2
xor r11b, r9b
mov bl, 0xff
xor bl, 0xc3
mov sil, 0x3b
xor sil, 0xf8
mov r9b, r10b
and r9b, sil
and bpl, bl
mov dil, 0x90
xor dil, 0x53
mov sil, r11b
and sil, dil
mov dil, bl
and dil, 0x80
or r9b, bpl
or sil, dil
xor r9b, sil
or r10b, r11b
xor r10b, 0xff
mov r11b, 0xc1
xor r11b, 2
or r11b, bl
and r10b, r11b
or r9b, r10b
mov byte [rax + r8 + 8], r9b
movabs r8, 0x5359467ec5bcc6e5
movabs rax, 0x5359467ec5bcc6e7
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 2
add rax, rdx
mov qword [rsp + 0xf0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xf8], rcx
cmp rax, rcx
jl 0x1400388c8
mov rcx, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0xf8]
movabs rax, 0xbd2f56a0fe3f91f
movabs r8, 0xbd2f56a0fe3f91f
xor rax, r8
sub rax, rdx
movabs rdx, 0xcc2d2ed3acf73f30
movabs r8, 0xcc2d2ed3acf73f30
xor rdx, r8
movabs r8, 0x5c6b1de1ad166686
movabs r9, 0xa394e21e52e99979
xor r8, r9
sub rdx, r8
add rax, rdx
movabs rdx, 0x720b78e36f49b64a
movabs r8, 0x720b78e36f49b64a
xor rdx, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rdx, qword [rax]
movabs r8, 0x93f1524d2c87e091
movabs rcx, 0xd3f1524d2c87e091
xor r8, rcx
mov rcx, rdx
and rcx, r8
movabs r8, 0xe47c30a7e4926f25
movabs r9, 0x1b83cf581b6d90da
xor r8, r9
xor rcx, r8
movabs r8, 0x3fe67ec90e2cea70
movabs r9, 0x7fe67ec90e2cea70
xor r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x69879c745975c064
movabs r9, 0x9678638ba68a3f9b
xor r8, r9
xor rcx, r8
movabs r8, 0xab1fbb26a3180cef
movabs r9, 0x54e044d95ce7f310
xor r8, r9
xor rdx, r8
or rcx, rdx
movabs rdx, 0x4cea5ee1c55a6ef1
movabs r8, 0x4cea5ee1c55a6ef1
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0xe8], rax
je 0x1400389aa
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0xe8], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0xf0]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0xe8]
shr r9d, 0xc
mov r11b, 0xf1
xor r11b, 0xe
mov r10b, r9b
xor r10b, r11b
xor r9b, 0xff
and r10b, r9b
mov r9b, 0x78
xor r9b, 0x47
mov r11b, 0xe0
xor r11b, 0xdf
or r9b, r11b
xor r9b, 0xff
mov r11b, 0xb7
xor r11b, 0x48
xor r10b, r11b
xor r9b, 0xff
and r10b, r9b
mov r9b, r10b
or r9b, 0x80
xor r9b, 0xff
or r10b, 0x80
mov r11b, 0xb7
xor r11b, 0x48
xor r10b, r11b
or r9b, r10b
mov r10b, 0xda
xor r10b, 0x25
xor r9b, r10b
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xfcae7790f4ec0e04
movabs r8, 0xfcae7790f4ec0e04
xor rdx, r8
movabs r8, 0x25f6bef9158b16e8
movabs r9, 0x25f6bef9158b16eb
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0xd8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xe0], rcx
cmp rax, rcx
jl 0x140038abf
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
movabs rax, 0x8a567c19efb4a7d1
movabs r8, 0x75a983e6104b582e
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rdx, qword [rax]
movabs r8, 0xf391c4af8a26c52
movabs rcx, 0x4f391c4af8a26c52
xor r8, rcx
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x75840477c68cb5e2
movabs r9, 0x35840477c68cb5e2
xor r8, r9
and rdx, r8
movabs r8, 0xd11cb243ad650a1a
movabs r9, 0x2ee34dbc529af5e5
xor r8, r9
xor rdx, r8
movabs r8, 0x98eeccb288daee05
movabs r9, 0x6711334d772511fa
xor r8, r9
xor rcx, r8
movabs r8, 0xab17b64de14cc819
movabs r9, 0x54e849b21eb337e6
xor r8, r9
xor rdx, r8
or rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xd0], rax
je 0x140038b8b
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0xd8]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0xd0]
mov ecx, 0xfffaa607
xor ecx, 0xfffaa601
shr r9d, cl
mov rcx, qword [rsp + 0x358]
and r9b, 0x3f
mov r10b, 0x4f
xor r10b, 0xcf
or r9b, r10b
mov byte [rdx + r8 + 8], r9b
movabs r8, 0xf5a78b073aa38f13
movabs rdx, 0xf5a78b073aa38f17
xor r8, rdx
mov rdx, rax
and rdx, r8
shl rdx, 1
xor rax, 4
add rax, rdx
mov qword [rsp + 0xc0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xc8], rcx
cmp rax, rcx
jl 0x140038c66
mov rcx, qword [rsp + 0xc0]
mov rdx, qword [rsp + 0xc8]
movabs rax, 0xea8783a566e2f397
movabs r8, 0xea8783a566e2f397
xor rax, r8
movabs r8, 0x1f03f6d8ec52fd90
movabs r9, 0xe0fc092713ad026f
xor r8, r9
sub rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0xe77b2adba8b5f400
movabs r8, 0xa77b2adba8b5f400
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xb8], rax
je 0x140038cc0
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x128]
mov rdx, qword [rsp + 0xc0]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0xb8]
mov r9b, r8b
mov r10b, 0xff
xor r10b, 0x3f
mov r8b, r9b
xor r8b, r10b
and r8b, r9b
mov r10b, 0x45
xor r10b, 0xc5
mov r9b, 0xbd
xor r9b, 0x42
xor r10b, r9b
mov r9b, r8b
and r9b, r10b
mov r11b, 0xb3
xor r11b, 0x33
mov r10b, r8b
xor r10b, r11b
add r8b, r10b
sub r8b, r9b
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
jmp 0x1400395e3
mov rax, qword [rsp + 0x2d0]
mov ecx, dword [rsp + 0x234]
mov edx, 0xb7fc7eca
xor edx, 0x48038135
cmp ecx, edx
mov qword [rsp + 0x208], rax
jle 0x1400395e3
mov rax, qword [rsp + 0x2d0]
movabs rdx, 0x59870e593205b897
movabs rcx, 0x59870e593205b891
xor rdx, rcx
mov rcx, rax
add rcx, rdx
mov qword [rsp + 0xb0], rcx
movabs rdx, 0xa92c3ca0eca5663b
movabs r8, 0x56d3c35f135a99c4
xor rdx, r8
mov r8, rax
xor r8, rdx
movabs rdx, 0x7050659543845dce
movabs r9, 0x8faf9a6abc7ba231
xor rdx, r9
and rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rax, r8
or rdx, rax
mov rax, rcx
xor rax, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rax, r8
movabs r8, 0xfbeb79553f4b09ab
movabs r9, 0x41486aac0b4f654
xor r8, r9
xor rcx, r8
movabs r8, 0xb62fc2b338c18c42
movabs r9, 0x49d03d4cc73e73bd
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0xd3b96c2541111f92
movabs rdx, 0xd3b96c2541111f92
xor rcx, rdx
cmp rax, rcx
jge 0x140038e47
call fcn.14000a590
jmp 0x140039614
mov rax, qword [rsp + 0xb0]
movabs rcx, 0xd0b389a9ae59e2eb
movabs rdx, 0xd0b389a9ae59e2eb
xor rcx, rdx
cmp rax, rcx
jge 0x140038e8f
mov rcx, qword [rsp + 0xb0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140010917
jmp 0x140039614
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0xb0]
call fcn.14001b50c
mov rdx, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x2d0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0xa8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140038f30
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0xa8]
movabs rax, 0x3b98c57a655b1de9
movabs r8, 0xc7339f0efbcfa1c8
xor rax, r8
sub rdx, rax
movabs rax, 0xb4791f7a36c4b269
movabs r8, 0x4b86e085c93b4d96
xor rax, r8
add rdx, rax
movabs rax, 0xfcab5a749e94bc21
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0xc33ef32e719362e2
movabs r8, 0x833ef32e719362e2
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xa0], rax
je 0x140038f8a
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0xa0], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0xa0]
shr r8d, 0x1e
or r8b, 0xfc
mov byte [rdx + rax + 8], r8b
movabs rdx, 0xd775e3580afd603f
movabs r8, 0xd775e3580afd603e
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x90], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x98], rcx
cmp rax, rcx
jl 0x140039055
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
movabs rax, 0x1c94c0fa3277d5bd
movabs r8, 0xdd92f67c317104ce
xor rax, r8
add rdx, rax
movabs rax, 0x7fef1c9dfaf66a9d
movabs r8, 0x8010e36205099562
xor rax, r8
add rdx, rax
movabs rax, 0xa8dff375d490163e
movabs r8, 0x69d9c5f3d796c74d
xor rax, r8
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0x1b49c5c00db02114
movabs rdx, 0x5b49c5c00db02114
xor r8, rdx
mov rdx, rcx
xor rdx, r8
movabs r8, 0xda99b02e91b1f0d5
movabs r9, 0x25664fd16e4e0f2a
xor r8, r9
xor rdx, r8
movabs r8, 0x9aaf7f6c26cd115a
movabs r9, 0xdaaf7f6c26cd115a
xor r8, r9
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x88], rax
je 0x1400390e9
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x88], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x90]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x88]
shr r9d, 0x18
and r9b, 0x3f
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xb94a8d74dac944c0
movabs r8, 0xb94a8d74dac944c2
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x78], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x80], rcx
cmp rax, rcx
jl 0x140039197
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
movabs rax, 0xe16ce65f09482fdf
movabs r8, 0xa3be51bff3af7eef
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x42d2b7e0fae75130
sub rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rdx, qword [rax]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
movabs r8, 0x3aad7e1c1294b7fe
movabs r9, 0x7aad7e1c1294b7fe
xor r8, r9
movabs r9, 0x97a8d56c74323e19
movabs r10, 0x68572a938bcdc1e6
xor r9, r10
xor r8, r9
or rcx, r8
movabs r8, 0x4000000000000000
and rdx, r8
movabs r8, 0xe8f0537a1137c4b4
movabs r9, 0x170fac85eec83b4b
xor r8, r9
xor rdx, r8
movabs r8, 0xdc9fe4c90fa59536
movabs r9, 0x23601b36f05a6ac9
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0x68ab8bda2109281
movabs r8, 0x68ab8bda2109281
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x70], rax
je 0x14003926a
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x78]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x70]
shr r9d, 0x12
and r9b, 0x3f
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 byte [rdx + r8 + 8], r9b
movabs rdx, 0xca515d7b2023cabc
movabs r8, 0xca515d7b2023cabc
xor rdx, r8
movabs r8, 0xd1018a73c1ea3932
movabs r9, 0xd1018a73c1ea3931
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x60], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
cmp rax, rcx
jl 0x14003933c
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
movabs rax, 0xda607b57aa3be752
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x16218389841ce0ae
movabs r8, 0xcc41f8de2e2707fc
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0xf4a187900909535c
movabs r9, 0xb4a187900909535c
xor r8, r9
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x58], rax
je 0x1400393a7
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0x358]
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x60]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x58]
shr r9d, 0xc
mov r10b, 0x4f
xor r10b, 0x70
and r9b, r10b
mov r10b, 0x3c
xor r10b, 0xbc
or r9b, r10b
mov byte [rdx + r8 + 8], r9b
add rax, 4
mov qword [rsp + 0x48], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
cmp rax, rcx
jl 0x140039422
mov rcx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x50]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0xabf099b1ef8f365c
movabs rdx, 0xabf099b1ef8f365d
xor r8, rdx
mov rdx, rcx
add rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x8d806e76c5643bbd
movabs r9, 0xcd806e76c5643bbd
xor r8, r9
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x40], rax
je 0x14003949a
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x2d0]
mov r8, qword [rsp + 0x48]
mov r9d, dword [rsp + 0x234]
mov rdx, qword [rsp + 0x40]
mov ecx, 0x26489514
xor ecx, 0x26489512
shr r9d, cl
mov rcx, qword [rsp + 0x358]
mov r10b, 0x36
xor r10b, 9
and r9b, r10b
mov r11b, 0xff
xor r11b, 0x80
mov r10b, r9b
and r10b, r11b
mov bl, 0x4d
xor bl, 0xcd
mov r11b, r9b
xor r11b, bl
add r9b, r11b
sub r9b, r10b
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xb645fca84c26ecad
movabs r8, 0xb645fca84c26eca8
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x30], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x38], rcx
cmp rax, rcx
jl 0x140039555
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
movabs rax, 0xcfee4c046fcfad7a
movabs r8, 0x3011b3fb90305285
xor rax, r8
add rdx, rax
call fcn.140019d55
jmp 0x140039614
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x28], rax
je 0x140039599
mov rcx, qword [rsp + 0x358]
call fcn.14001b1db
mov rax, qword [rsp + 0x338]
mov rax, qword [rax]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0x30]
mov r8d, dword [rsp + 0x234]
mov rcx, qword [rsp + 0x28]
and r8b, 0x3f
mov r9b, 0x44
xor r9b, 0xc4
and r9b, r8b
mov r10b, 0x97
xor r10b, 0x68
xor r9b, r10b
add r8b, 0x80
add r8b, 1
add r8b, r9b
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x208], rax
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x208]
cmp rcx, rdx
mov qword [rsp + 0x340], rcx
mov qword [rsp + 0x348], rax
jl 0x1400360c4
mov rax, qword [rsp + 0x360]
add rsp, 0x388
pop rbx
pop rbp
pop rdi
pop rsi
ret