Function at 0x140037690
Capabilities:
Encode data using xor
Get thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x410
movaps xmmword [rsp + 0x400], xmm15
movaps xmmword [rsp + 0x3f0], xmm14
movaps xmmword [rsp + 0x3e0], xmm13
movaps xmmword [rsp + 0x3d0], xmm12
movaps xmmword [rsp + 0x3c0], xmm11
movaps xmmword [rsp + 0x3b0], xmm10
movaps xmmword [rsp + 0x3a0], xmm9
movaps xmmword [rsp + 0x390], xmm8
movaps xmmword [rsp + 0x380], xmm7
movaps xmmword [rsp + 0x370], xmm6
mov r8, rdx
mov qword [rsp + 0x350], r8
mov qword [rsp + 0x358], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x360], rcx
mov rax, rcx
and rax, r8
shl rax, 1
mov rdx, rcx
xor rdx, r8
add rdx, rax
mov qword [rsp + 0x368], rdx
mov rax, rdx
xor rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r9, rdx
xor r9, 0xffffffffffffffff
and rcx, r9
mov r9, r8
or r9, r9
movabs r10, 0x546f56e8fbe05e84
movabs r11, 0xab90a917041fa17b
xor r10, r11
xor r9, r10
xor rcx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rcx, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140037792
call fcn.14000f24b
jmp 0x140039750
mov rax, qword [rsp + 0x358]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x338], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x340], rax
cmp rax, 0
sete al
mov byte [rsp + 0x34f], al
test al, 1
jne 0x1400377f5
mov rax, qword [rsp + 0x340]
mov rax, qword [rax]
mov qword [rsp + 0x330], rax
movabs rcx, 0x4000000000000000
and rax, rcx
cmp rax, 0
je 0x140037c31
mov rdx, qword [rsp + 0x368]
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor eax, eax
sub rax, 1
sub rcx, rax
mov rax, rdx
sub rax, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
and rcx, r8
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0x849508d053293342
movabs r10, 0x7b6af72facd6ccbd
xor r9, r10
xor rcx, r9
movabs r9, 0x8b695890acde1086
movabs r10, 0x7496a76f5321ef79
xor r9, r10
xor r8, r9
and rcx, r8
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x333888e4d454326b
movabs r9, 0xccc7771b2babcd94
xor r8, r9
xor rcx, r8
movabs r8, 0x8fd811a8bc4fd9dd
movabs r9, 0x7027ee5743b02622
xor r8, r9
xor rdx, r8
and rcx, rdx
and rax, rcx
movabs rcx, 0x24dfa0a7d29f874c
movabs rdx, 0x24dfa0a7d29f874c
xor rcx, rdx
cmp rax, rcx
jge 0x1400378e4
call fcn.14000f24b
jmp 0x140039750
mov rdx, qword [rsp + 0x368]
mov rax, rdx
add rax, 9
mov qword [rsp + 0x328], rax
movabs rcx, 0x1a88135f6385e78f
movabs r8, 0xe577eca09c7a1871
xor rcx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14003792c
call fcn.14000f24b
jmp 0x140039750
mov ecx, dword [0x140273b28]
xor ecx, 0xc7677d7d
or ecx, dword [0x140273b2c]
mov edx, 0xffffffff
xor edx, 0x9a0f2868
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0xad559e1c
mov edx, 0xffffffff
xor edx, 0x6ed5244c
mov ecx, eax
and ecx, edx
mov r8d, 0xb802c743
xor r8d, 0xd6d7e30f
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0xc14518fb
xor ecx, 0x49fc08b3
cmp eax, ecx
jae 0x1400397b3
mov rcx, qword [rsp + 0x328]
mov eax, dword [0x140273b30]
mov r8d, dword [0x140273b34]
xor r8d, 0xa022ab4
xor edx, edx
div r8d
mov r8d, 0x91b77e7a
xor r8d, 0xaf3e9249
mov edx, 0x2b41a3e0
xor edx, 0xd4be5c1f
xor r8d, edx
mov edx, eax
and edx, r8d
mov r9d, 0x8e5edbd6
xor r9d, 0xb0d737e5
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
and eax, 0xea9bfd5d
add eax, 0x4c06a137
cmp rcx, 0
setl cl
mov byte [rsp + 0x327], cl
cmp eax, 0xc815c4a4
ja 0x1400397b3
mov al, byte [rsp + 0x327]
test al, 1
jne 0x140037a1c
jmp 0x140037a2c
mov rcx, r8
mov rdx, r8
call fcn.14001a720
jmp 0x140039750
mov ecx, dword [0x1402980b0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdx, qword [rsp + 0x328]
mov rcx, rax
add rcx, 0x68
call fcn.140014f80
mov r8, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x368]
mov rcx, rax
mov rax, qword [rsp + 0x358]
mov qword [rsp + 0x310], rcx
mov qword [r8], rcx
mov qword [rcx], rdx
mov rax, qword [rax]
mov qword [rsp + 0x318], rax
cmp rax, 0
jle 0x140037c0c
mov rcx, qword [rsp + 0x318]
mov rax, qword [rsp + 0x368]
mov rdx, rcx
sub rdx, rax
cmovl rax, rcx
mov qword [rsp + 0x308], rax
cmp rax, 0
jge 0x140037b61
mov eax, dword [0x140273b38]
imul eax, dword [0x140273b3c]
imul eax, eax, 0x78601e9c
mov ecx, 0x58cf3567
xor ecx, 0x4a15dfb8
sub eax, ecx
add eax, 0xade30723
add eax, 0x12daeadf
xor eax, 0x46be7649
mov ecx, 0x1a003a37
xor ecx, 0x438e52d1
cmp eax, ecx
jae 0x1400397bc
mov eax, dword [0x140273b40]
xor edx, edx
div dword [0x140273b44]
mov ecx, eax
xor ecx, 0xf532565f
xor ecx, 0xffffffff
or eax, 0xf532565f
and eax, ecx
mov ecx, eax
and ecx, 0x286412d9
shl ecx, 1
add eax, 0x286412d9
sub eax, ecx
mov ecx, 0x25318b06
xor ecx, 0xbf0b38d7
imul eax, ecx
mov dword [rsp + 0x304], eax
mov rcx, r8
mov rdx, r8
call fcn.14001a720
mov eax, dword [rsp + 0x304]
cmp eax, 0xab5b6ae1
jb 0x140037af8
jmp 0x140039750
mov rcx, qword [rsp + 0x308]
mov rax, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x310]
add rdx, 8
mov qword [rsp + 0x2e8], rdx
add rax, 8
mov qword [rsp + 0x2f0], rax
movabs rdx, 0xb3ccfeac86b6f750
movabs rax, 0xb3ccfeac86b6f750
xor rdx, rax
xor eax, eax
cmp rcx, rdx
mov qword [rsp + 0x2f8], rax
je 0x140039750
mov rax, qword [rsp + 0x2f8]
mov rcx, qword [rsp + 0x308]
mov rdx, qword [rsp + 0x2e8]
mov r8, qword [rsp + 0x2f0]
mov r8b, byte [r8 + rax]
mov byte [rdx + rax], r8b
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 1
add rdx, rax
xor eax, eax
sub rax, rdx
cmp rax, rcx
mov qword [rsp + 0x2f8], rax
je 0x140039750
jmp 0x140037bbb
mov al, byte [rsp + 0x34f]
test al, 1
jne 0x140037c20
jmp 0x140039750
mov rax, qword [rsp + 0x310]
mov byte [rax + 8], 0
jmp 0x140039750
mov rcx, qword [rsp + 0x368]
mov rax, qword [rsp + 0x330]
movabs rdx, 0xbfffffffffffffff
and rax, rdx
mov qword [rsp + 0x2e0], rax
cmp rax, rcx
jge 0x140039750
mov rcx, qword [rsp + 0x2e0]
mov eax, 4
cmp rcx, 1
mov qword [rsp + 0x2d8], rax
jl 0x140037fa6
mov rax, qword [rsp + 0x2e0]
movabs rcx, 0xdb6b72a0d9d93db5
movabs rdx, 0xdb6b72a0d9d9bdb5
xor rcx, rdx
cvtsi2sd xmm0, rax
movsd qword [rsp + 0x2d0], xmm0
cmp rax, rcx
jae 0x140037d95
movsd xmm0, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2e0]
movabs rcx, 0xde9f887e235534ac
movabs rdx, 0xde9f887e235534ad
xor rcx, rdx
shl rax, cl
mov qword [rsp + 0x2b8], rax
movsd xmm1, qword [0x140281b90]
mulsd xmm0, xmm1
movsd qword [rsp + 0x2c0], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x2c8], xmm1
ucomisd xmm0, xmm1
mov qword [rsp + 0x2d8], rax
jne 0x140037d27
jp 0x140037d27
jmp 0x140037fa6
movsd xmm1, qword [rsp + 0x2c0]
movsd xmm0, qword [rsp + 0x2c8]
subsd xmm0, xmm1
call fcn.140271c60
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x2c0]
movsd qword [rsp + 0x2b0], xmm1
call fcn.140271c60
movsd xmm1, qword [rsp + 0x2b0]
mov rax, qword [rsp + 0x2b8]
movsd xmm2, qword [0x140281b88]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
mov qword [rsp + 0x2d8], rax
jae 0x140037fa6
call fcn.14000f24b
jmp 0x140037fa6
movsd xmm0, qword [rsp + 0x2d0]
mov rax, qword [rsp + 0x2e0]
imul rax, rax, 3
mov qword [rsp + 0x298], rax
movsd xmm1, qword [0x140281b80]
mulsd xmm0, xmm1
movsd qword [rsp + 0x2a0], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x2a8], xmm1
ucomisd xmm0, xmm1
jne 0x140037dea
jp 0x140037dea
jmp 0x140037f7a
movsd xmm1, qword [rsp + 0x2a0]
movsd xmm0, qword [rsp + 0x2a8]
subsd xmm0, xmm1
call fcn.140271c60
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x2a0]
movsd qword [rsp + 0x290], xmm1
call fcn.140271c60
movsd xmm1, qword [rsp + 0x290]
movsd xmm2, qword [0x140281b88]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x140037f7a
mov eax, dword [0x140273b48]
xor edx, edx
div dword [0x140273b4c]
mov ecx, eax
mov eax, ecx
and eax, 0x993250cd
xor ecx, 0x993250cd
or eax, ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0x3879594d
xor edx, 0x8040fcd5
or eax, edx
add eax, ecx
sub eax, 0x1a3c33d1
cmp eax, 0x16e7bfac
jb 0x1400397c5
mov eax, dword [0x140273b50]
xor eax, 0xd8339d8c
mov edx, dword [0x140273b54]
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xbdc54d4f
or eax, edx
or ecx, 0xbdc54d4f
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x30083176
xor ecx, 0xcff7ce89
mov edx, eax
xor edx, ecx
and edx, 0xb522400f
mov r8d, 0xffffffff
xor r8d, 0xb522400f
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x5d90baa6
xor r8d, 0xe8b2faa9
mov edx, eax
and edx, r8d
mov r8d, 0xe3aae574
xor r8d, 0x5688a57b
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0xb138620a
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x4414ebd8
xor edx, 0x2398a8ea
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x678c4332
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x2e0dc64a
xor r8d, 0x49818578
mov edx, eax
and edx, r8d
mov r8d, 0x620eebb
xor r8d, 0x61acad89
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rsp + 0x28c], eax
call fcn.14000f24b
mov eax, dword [rsp + 0x28c]
cmp eax, 0x840f2eb0
jb 0x1400397c5
jmp 0x140037fa6
mov rax, qword [rsp + 0x298]
movabs rcx, 0x638260772ac12410
movabs rdx, 0x638260772ac12412
xor rcx, rdx
cqo
idiv rcx
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x368]
mov r9, qword [rsp + 0x2d8]
mov qword [rsp + 0x278], r9
mov rcx, rax
sub rcx, r9
cmovg r9, rax
mov qword [rsp + 0x280], r9
xor eax, eax
mov ecx, eax
sub rcx, r9
xor eax, eax
sub rax, 1
add rcx, rax
xor eax, eax
sub rax, rcx
mov rcx, r9
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4292bbaba3a08929
and rcx, rdx
movabs r8, 0x41321a572b797fac
movabs rdx, 0x3a0a1fc88d9f685
xor r8, rdx
movabs rdx, 0x7cac21bda9171bc
movabs r10, 0xf8353de4256e8e43
xor rdx, r10
xor r8, rdx
and r9, r8
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r10, 0xc9cdd1918454e3f6
movabs r11, 0x8b5f6a3a27f46adf
xor r10, r11
and rdx, r10
and r8, 0xffffffffffffffff
or rcx, r9
or rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140038076
call fcn.14000f24b
jmp 0x140039750
mov eax, dword [0x140273b58]
or eax, dword [0x140273b5c]
add eax, 0x26fc4d35
mov ecx, 0xae45fa1a
xor ecx, 0x51e90ab1
imul eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xd9dea3b8
mov edx, 0xffffffff
xor edx, 0xd9dea3b8
and eax, edx
sub eax, ecx
cmp eax, 0xdddde248
je 0x1400397ce
mov r8, qword [rsp + 0x280]
mov eax, dword [0x140273b60]
mov r9d, dword [str._nHG_O]
mov edx, 0x5f05fb87
xor edx, 0xa0fa0478
mov ecx, eax
xor ecx, edx
mov edx, r9d
and edx, ecx
mov r10d, r9d
xor r10d, 0xffffffff
mov ecx, eax
and ecx, r10d
imul ecx, edx
mov edx, eax
and edx, r9d
or eax, r9d
imul eax, edx
add eax, ecx
or eax, 0x60b8a9dd
mov edx, 0xffffffff
xor edx, 0xfc07653a
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xfc07653a
add eax, edx
sub eax, ecx
mov ecx, 0x4681de97
xor edx, edx
div ecx
mov ecx, 0xef24d847
xor ecx, 0x7580c133
movabs r9, 0x8969aa009dfbe423
movabs rdx, 0x8969aa009dfbe42a
xor r9, rdx
mov rdx, r8
add rdx, r9
mov qword [rsp + 0x268], rdx
mov r9, 0xfffffffffffffffe
sub r9, r8
mov r8, rdx
xor r8, r9
xor r8, 0xffffffffffffffff
or rdx, r9
and rdx, r8
movabs r8, 0x9d16343e71c3fc0
movabs r9, 0x9d16343e71c3fc0
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rsp + 0x277], dl
cmp eax, ecx
je 0x1400397ce
mov al, byte [rsp + 0x277]
test al, 1
jne 0x1400381b2
jmp 0x14003825d
mov eax, dword [0x140273b68]
xor eax, 0x1347497f
mov ecx, dword [0x140273b6c]
xor ecx, 0xe763169a
imul eax, ecx
mov ecx, eax
xor ecx, 0x543e4d9e
xor ecx, 0xffffffff
and ecx, 0x543e4d9e
shl ecx, 1
sub ecx, 0x543e4d9e
sub eax, ecx
mov ecx, 0x2fe1af6e
xor edx, edx
div ecx
xor eax, 0xbbe55352
cmp eax, 0xc68f9d02
jae 0x1400397d7
mov eax, dword [0x140273b70]
mov edx, dword [0x140273b74]
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
xor ecx, 0x460c77d2
mov eax, ecx
and eax, 0x169c570
mov edx, 0xf53e2f8b
xor edx, 0xf457eafb
or ecx, edx
add eax, ecx
mov ecx, 0x58d0d4
xor edx, edx
div ecx
mov dword [rsp + 0x264], eax
call fcn.14000f24b
mov eax, dword [rsp + 0x264]
cmp eax, 0x144e548d
jae 0x140038201
jmp 0x140039750
mov rax, qword [rsp + 0x268]
cmp rax, 0
jge 0x140038417
mov eax, dword [0x140273b78]
mov r8d, dword [0x140273b7c]
xor r8d, 0xe4da620
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x285be655
xor ecx, 0x62046277
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x6bfd1857
mov edx, 0x63f32f9f
xor edx, 0x80e37c8
mov r8d, 0xf7d95b73
xor r8d, 0x826a48c
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x6e2f9dbb
xor ecx, 0x97dbac3e
add eax, ecx
cmp eax, 0x97f190a0
ja 0x1400397e0
mov r11d, dword [0x140273b80]
mov r10d, dword [0x140273b84]
mov eax, 0x896b3c47
xor eax, 0xe538c9c8
xor r10d, eax
mov eax, 0x259d7b0d
xor eax, 0xda6284f2
mov ecx, r11d
xor ecx, eax
mov eax, 0xcdb6886d
xor eax, 0x32497792
mov r8d, r10d
xor r8d, eax
mov edx, 0x90cf2c3d
xor edx, 0xbe77998e
mov eax, 0xd541da7c
xor eax, 0x2abe2583
xor edx, eax
mov eax, ecx
and eax, 0x2eb8b5b3
and r11d, edx
mov r9d, r8d
and r9d, 0x2eb8b5b3
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x2eb8b5b3
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xc7ba77e8
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x5b0056dd
xor r8d, 0xa4ffa922
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc7ba77e8
mov r8d, 0x8e6abce9
xor r8d, 0x49d0cb01
or eax, r8d
imul eax, edx
add eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xdea12e79
mov ecx, 0xffffffff
xor ecx, 0x367d9873
or eax, edx
or ecx, 0x367d9873
xor eax, 0xffffffff
and eax, ecx
imul eax, eax, 0x89abad72
mov dword [rsp + 0x260], eax
mov rcx, r8
mov rdx, r8
call fcn.14001a720
mov eax, dword [rsp + 0x260]
cmp eax, 0xfce4efb4
je 0x1400382fa
jmp 0x140039750
mov eax, dword [0x140273b88]
mov ecx, dword [0x140273b8c]
xor ecx, 0xded7ad19
xor ecx, 0xffffffff
mov edx, 0x55b0331b
xor edx, 0x55b0331b
mov r8d, 0xdb8c3924
xor r8d, 0xdb8c3925
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0x81ec5475
xor edx, edx
div ecx
mov ecx, 0x767824bf
xor ecx, 0x2a3051b1
and eax, ecx
mov ecx, 0x549bb1ae
xor ecx, 0x2e2f1e80
xor edx, edx
div ecx
cmp eax, 0xc462ec8f
jae 0x1400397e9
mov rax, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x268]
mov ecx, dword [0x140273b90]
xor ecx, 0xd7b2b60a
sub ecx, dword [0x140273b94]
mov r10d, 0x246e3397
xor r10d, 0x900a004f
mov r8d, 0xfdb7867b
xor r8d, 0x2487984
xor r10d, r8d
mov r9d, ecx
and r9d, r10d
mov r8d, ecx
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, ecx
and r9d, 0xb46433d8
or ecx, 0xb46433d8
imul ecx, r9d
add ecx, r8d
mov r8d, 0xffffffff
xor r8d, 0x7198d0ae
add ecx, r8d
add ecx, 1
mov r9d, 0xffffffff
xor r9d, 0xa389edb7
mov r8d, ecx
and r8d, r9d
mov r9d, ecx
xor r9d, 0xa389edb7
add ecx, r9d
sub ecx, r8d
mov dword [rsp + 0x24c], ecx
mov rcx, qword [rax]
call fcn.14001a1b5
mov r10, qword [rsp + 0x338]
mov r9, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x278]
mov rcx, qword [rsp + 0x368]
mov r8, rax
mov eax, dword [rsp + 0x24c]
mov qword [rsp + 0x250], r8
mov qword [r10], r8
mov qword [r8], r9
cmp rcx, rdx
setl cl
mov byte [rsp + 0x25f], cl
cmp eax, 0x8412f1fb
jb 0x14003847b
mov al, byte [rsp + 0x25f]
test al, 1
jne 0x14003858e
jmp 0x140039750
mov eax, dword [0x140273b98]
xor eax, 0xb016fbd7
xor edx, edx
div dword [0x140273b9c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x96d508b5
add ecx, eax
xor eax, eax
sub eax, ecx
sub eax, 0x87846895
mov ecx, 0x1eae24fc
xor ecx, 0xd4888225
and eax, ecx
cmp eax, 0xaf75caa0
je 0x1400397f2
mov r8, qword [rsp + 0x368]
mov eax, dword [0x140273ba0]
xor edx, edx
div dword [0x140273ba4]
mov r9d, 0x8b9a1ba0
xor r9d, 0x3a4b7b09
mov ecx, 0x23f10d38
xor ecx, 0xdc0ef2c7
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0xb2f97995
xor r9d, 0x4d06866a
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, 0xb1d160a9
or eax, 0xb1d160a9
imul eax, edx
add eax, ecx
mov ecx, 0x20022e74
xor edx, edx
div ecx
xor eax, 0x7804b785
movabs rcx, 0xdbf1ac5950e2a492
mov rdx, r8
sub rdx, rcx
movabs rcx, 0x96d451a8d17e07e8
movabs r9, 0x96d451a8d17e07e9
xor rcx, r9
add rdx, rcx
movabs rcx, 0xdbf1ac5950e2a492
add rdx, rcx
mov qword [rsp + 0x240], rdx
movabs rcx, 0x6ef688394744e7d6
movabs r9, 0x910977c6b8bb1829
xor rcx, r9
xor r8, rcx
movabs rcx, 0x4a49aa508044c56a
movabs r9, 0xb5b655af7fbb3a95
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x24b], cl
cmp eax, 0x26760e73
jb 0x1400397f2
mov al, byte [rsp + 0x24b]
test al, 1
jne 0x1400386e6
jmp 0x1400386f0
call fcn.14000f24b
jmp 0x140039750
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x280]
xor eax, eax
sub rax, rdx
mov rcx, r8
add rcx, rax
mov qword [rsp + 0x238], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0x3c8c74e8c9753178
movabs r9, 0x3c8c74e8c9753178
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
xor al, 0xff
xor cl, 0xff
mov dl, 1
xor dl, 1
or al, cl
mov cl, 1
xor cl, 0
or cl, dl
xor al, 0xff
and al, cl
test al, 1
jne 0x140038764
jmp 0x14003876e
call fcn.14000f24b
jmp 0x140039750
mov eax, dword [0x140273ba8]
xor eax, dword [0x140273bac]
mov ecx, 0x7a28c4bd
xor ecx, 0xb1e307fa
sub eax, ecx
mov edx, 0xffffffff
xor edx, 0x7c5816b7
mov ecx, eax
invalid
mov edx, 0xe97322ae
xor esp, ebx
invalid
sbb ebp, dword [rbx - 0x49166784]
je 0x140039837
or al, ch
jmp 0x1400380ba
invalid
pop rsp
cmovl ebp, ecx
adc ebx, ebp
invalid
sbb eax, 0xe9348c68
mov esp, ebp
invalid
sbb bh, byte [rbp - 0x2b162ecd]
in eax, dx
invalid
enter 0xffffffffffff8948, 0x44
and al, 0x20
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov rax, qword [rdx]
mov qword [rsp + 0x28], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x28]
call fcn.140033c40
mov rax, qword [rsp + 0x20]
add rsp, 0x38
ret