Function at 0x140063e90
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov qword [rbp - 0x10], r9
mov byte [rbp], r8b
mov qword [rbp - 8], rcx
mov eax, dword [0x141dcaa80]
imul eax, dword [0x141dcaa84]
add eax, 0x4fc38075
cmp eax, 0x423de1d5
ja 0x140063f4f
mov eax, dword [0x141dcaa88]
imul eax, dword [0x141dcaa8c]
imul ecx, eax, 0x552b611d
add ecx, 0xf0d8a303
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r15, rsp
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rdx, rsp
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov r13, rsp
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
mov eax, 0x60
call fcn.1400f07c0
sub rsp, rax
mov rsi, rsp
mov eax, 0x400
call fcn.1400f07c0
sub rsp, rax
mov rax, rsp
cmp ecx, 0x4ca7b4d4
jae 0x140063fa2
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x20
and byte [rax], al
add byte [rax], al
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x20
call fcn.1400f07c0
enter 8, 0x48
sub esp, eax
mov eax, 0x20
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x60
call fcn.1400f07c0
sub rsp, rax
mov eax, 0x400
call fcn.1400f07c0
sub rsp, rax
jmp 0x140063ece
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], rdx
movabs r9, 0x1ffffffffffffe
invalid
call [rdi]
add byte [rax - 0x47], cl
add byte [rax], al
add byte [rax], al
add byte [rax], al
adc byte [rax], al
movq r14, xmm1
mov rdx, r14
shr rdx, 0x34
and edx, 0x7ff
lea r10, [r14 + r14]
and r10, r9
lea r9, [rcx - 1]
and r9, r14
mov r11, r9
or r11, rcx
lea r8d, [rdx - 0x433]
xor r12d, r12d
nop
test edx, edx
mov rbx, r11
cmove rbx, r10
test r12b, r12b
jne 0x140063ff0
ucomisd xmm1, xmm1
jp 0x140064587
movabs r11, 0x7ff0000000000000
xor r10d, r10d
mov r12, r14
and r12, r11
setne r10b
lea rax, [r10*2 + 2]
cmp r12, r11
mov r11d, 1
cmovne r11, rax
add r10, 3
test r9, r9
cmove r10, r11
dec r10
cmp r10, 3
ja case.default.0x14006405a
lea rax, [0x141dbb5bc]
movsxd r9, dword [rax + r10*4]
add r9, rax
jmp r9
mov dl, 3
jmp 0x14006416a
test bl, 1
sete dl
mov eax, dword [0x141dcaaa0]
and eax, dword [0x141dcaaa4]
add eax, 0x72732fde
and eax, 0xa4de5489
imul eax, eax, 0x2e2cf613
cmp eax, 0x3d2b69bb
je case.0x14006405a.3
mov cl, 1
nop dword [rax + rax]
test cl, cl
je 0x1400640a0
mov r9d, 1
jmp 0x14006416a
mov eax, dword [0x141dcaa98]
imul eax, dword [0x141dcaa9c]
imul eax, eax, 0xef2ff26b
cmp eax, 0x22e43905
je case.0x14006405a.2
mov dl, 4
jmp 0x14006416a
mov eax, dword [0x141dcaa90]
imul eax, dword [0x141dcaa94]
add eax, 0x3378fd47
imul rax, rax, 0x39dc9e23
shr rax, 0x3c
cmp eax, 0xa5472ff5
je case.default.0x14006405a
jmp 0x140064607
lea rax, [rbx + rbx]
xor r9d, r9d
cmp rbx, rcx
sete r9b
movabs r10, 0x40000000000000
cmovne r10, rax
inc r9
movzx r8d, dx
xor r11d, r11d
nop
cmp rbx, rcx
sete r12b
test bl, 1
sete dl
mov eax, dword [0x141dcaaa8]
sub eax, dword [0x141dcaaac]
add eax, 0x23e67d75
and eax, 0xb9d17b3
cmp eax, 0xffaef441
ja 0x140064130
mov r11b, r12b
sub r8d, r11d
add r8d, 0xfffffbcc
mov rbx, r10
mov qword [r13], rbx
mov qword [r13 + 8], 1
mov qword [r13 + 0x10], r9
mov word [r13 + 0x18], r8w
mov byte [r13 + 0x1a], dl
add dl, 0xfe
movzx eax, dl
cmp al, 3
mov ecx, 3
cmovb ecx, eax
test cl, cl
je 0x1400642cf
mov qword [rbp - 0x40], r13
movzx ecx, cl
nop word cs:[rax + rax]
mov eax, dword [0x141dcaab0]
imul eax, dword [0x141dcaab4]
add eax, 0x641104c6
and eax, 0xaa1b578b
add eax, 0xa2071551
cmp eax, 0x7516f385
ja 0x1400641b0
mov r12, r14
shr r12, 0x3f
test r14, r14
lea rax, [0x141db711d]
mov edx, 1
mov r9d, 1
cmovs r9, rax
lea r13, [0x141db711e]
cmovs r13, rax
cmp byte [rbp], 0
cmovne r12, rdx
cmove r13, r9
nop word [rax + rax]
mov eax, dword [0x141dcaab8]
xor edx, edx
div dword [0x141dcaabc]
or eax, 0x3000a120
xor eax, 0x6000000
and eax, 0x3600e3b0
cmp eax, 0x89aba13c
ja 0x140064210
cmp ecx, 1
je 0x1400642fb
cmp ecx, 2
jne 0x14006432b
xor eax, eax
mov r15, qword [rbp - 8]
mov rcx, qword [rbp - 0x10]
test al, al
jne 0x140064250
mov eax, dword [0x141dcaaf0]
sub eax, dword [0x141dcaaf4]
imul eax, eax, 0xa6ad7fcc
cmp eax, 0xd4e7a49d
jne 0x140064280
mov word [rsi], 2
nop word cs:[rax + rax]
mov eax, dword [0x141dcaaf8]
imul eax, dword [0x141dcaafc]
imul eax, eax, 0x86f83c16
and eax, 0x4280208a
mov word [rsi], 2
cmp eax, 0xec97dd
ja 0x140064280
test rcx, rcx
je 0x14006450e
lea rax, [0x141db7118]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], 2
mov word [rsi + 0x18], 0
mov qword [rsi + 0x20], rcx
jmp 0x140064d38
mov eax, dword [0x141dcaac0]
and eax, dword [0x141dcaac4]
xor eax, 0xfe220cee
imul eax, eax, 0x93d9b63e
add eax, 0xa58d490a
cmp eax, 0x262004e6
jb 0x140064654
jmp 0x140064625
mov word [rsi], 2
mov eax, dword [0x141dcaae0]
sub eax, dword [0x141dcaae4]
add eax, 0x22b21dc8
xor eax, 0x2c0ada4
add eax, 0xdce3a887
cmp eax, 0xb95ab5dc
ja 0x140064704
jmp 0x1400646d4
test r8w, r8w
mov rax, 0xfffffffffffffff4
mov ecx, 5
cmovs rcx, rax
movsx rax, r8w
imul rax, rcx
mov rdx, rax
shr rdx, 4
add rdx, 0x15
nop word cs:[rax + rax]
mov ecx, dword [0x141dcab00]
and ecx, dword [0x141dcab04]
and ecx, 0x8b4a200
cmp ecx, 0x8d0e1762
je 0x140064360
nop word [rax + rax]
mov ecx, dword [0x141dcab08]
add ecx, dword [0x141dcab0c]
or ecx, 0xc1000
and ecx, 0xc08c5002
cmp ecx, 0x276cc912
jb 0x140064380
cmp rax, 0x3ec0
jae 0x140064607
mov rcx, qword [rbp - 0x10]
mov eax, dword [0x141dcab18]
or eax, dword [0x141dcab1c]
and eax, 0xf346ddb0
imul eax, eax, 0xeb338cff
and eax, 0xc4dc77f0
cmp eax, 0x43074913
ja 0x1400643b0
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], r12
mov r13d, ecx
mov eax, dword [0x141dcab20]
add eax, dword [0x141dcab24]
neg r13d
and eax, 0xc222a55
add eax, 0xf000ac02
cmp eax, 0xead782b3
mov qword [rbp], rdx
jae 0x14006443d
cmp rcx, 0x8000
mov eax, 0x8000
cmovb eax, r13d
sub rsp, 0x30
mov qword [rsp + 0x20], rdx
mov word [rsp + 0x28], ax
mov rcx, r15
mov rdx, rbx
mov r9, qword [rbp - 0x20]
mov r14d, r8d
call fcn.140052b10
mov rdx, qword [rbp]
mov r8d, r14d
add rsp, 0x30
mov qword [rbp - 0x38], r15
nop word cs:[rax + rax]
mov eax, dword [0x141dcab28]
sub eax, dword [0x141dcab2c]
add eax, 0xb71ec98c
mov ecx, 0xcc8b97a1
imul rax, rcx
shr rax, 0x3e
imul r14d, eax, 0x3ef1bb58
cmp qword [rbp - 0x10], 0x8000
mov r12d, 0x8000
cmovb r12d, r13d
sub rsp, 0x30
mov word [rsp + 0x28], r12w
mov qword [rsp + 0x20], rdx
mov rcx, qword [rbp - 0x38]
mov rdx, rbx
mov r9, qword [rbp - 0x20]
mov r15d, r13d
mov r13d, r8d
call fcn.140052b10
mov rdx, qword [rbp]
mov r8d, r13d
mov r13d, r15d
add rsp, 0x30
cmp r14d, 0x42b165df
jb 0x140064450
mov rcx, qword [rbp - 0x10]
mov r15, qword [rbp - 0x38]
cmp qword [r15], 0
je 0x140064545
mov eax, dword [0x141dcab40]
imul eax, dword [0x141dcab44]
xor eax, 0x592f553c
imul rax, rax, 0x56875105
shr rax, 0x3e
add eax, 0x8cf6d80b
cmp eax, 0xac734f6
mov r14, rcx
mov r13, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x18]
jb 0x1400645c1
jmp 0x14006458e
lea rax, [0x141db7125]
mov qword [rsi + 8], rax
mov eax, dword [0x141dcab10]
sub eax, dword [0x141dcab14]
xor eax, 0x52412028
and eax, 0x5359e12b
imul eax, eax, 0xf0116444
cmp eax, 0x9dfc813f
ja 0x14006461b
jmp 0x140064609
mov eax, dword [0x141dcab30]
xor edx, edx
div dword [0x141dcab34]
mov ecx, 0xd323b567
imul rcx, rax
shr rcx, 0x3e
or ecx, 0xc5816460
cmp ecx, 0xb84ad0ea
mov r15, qword [rbp - 8]
mov rcx, qword [rbp - 0x18]
mov r13, qword [rbp - 0x40]
mov r14, qword [rbp - 0x20]
je 0x14006476e
jmp 0x140064727
mov dl, 2
jmp 0x14006416a
mov eax, dword [0x141dcab48]
xor edx, edx
div dword [0x141dcab4c]
or eax, 0xe4eb92a8
add eax, 0xff63985d
xor eax, 0xcc8bd322
mov rdx, qword [r15 + 0x10]
mov qword [rcx + 0x10], rdx
movups xmm0, xmmword [r15]
movups xmmword [rcx], xmm0
cmp eax, 0x79801ffb
jbe 0x1400645d2
mov rax, qword [r15 + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [r15]
movups xmmword [rcx], xmm0
jmp 0x14006458e
mov r15, qword [rbp - 8]
nop word cs:[rax + rax]
mov eax, dword [0x141dcab50]
and eax, dword [0x141dcab54]
add eax, 0x1855a568
and eax, 0xba2a5a8d
add eax, 0xa69c04d2
cmp eax, 0x8ad416de
jb 0x1400645e0
jmp 0x1400647b0
ud2
mov qword [rsi + 0x10], 1
mov al, 1
test al, al
jne 0x140064f5e
mov qword [rsi + 0x10], 1
jmp 0x140064609
mov eax, dword [0x141dcaac8]
xor edx, edx
div dword [0x141dcaacc]
xor eax, 0x8130aca2
and eax, 0xc13facaa
mov word [rsi], 2
lea rcx, [0x141db711f]
mov qword [rsi + 8], rcx
cmp eax, 0xacecbfa4
jbe 0x140064666
mov word [rsi], 2
lea rax, [0x141db711f]
mov qword [rsi + 8], rax
jmp 0x140064625
mov eax, dword [0x141dcaad0]
add eax, dword [0x141dcaad4]
or eax, 0xc90f0f93
and eax, 0xc9df0fb3
cmp eax, 0xb33abe32
mov r15, qword [rbp - 8]
jne 0x140064690
mov qword [rsi + 0x10], 3
nop
mov eax, dword [0x141dcaad8]
imul eax, dword [0x141dcaadc]
and eax, 0x3938bd35
imul eax, eax, 0xf90af70f
mov qword [rsi + 0x10], 3
cmp eax, 0xe5bdfe07
je 0x140064690
xor r12d, r12d
mov al, 1
nop dword [rax]
test al, al
je 0x1400646c0
mov r13d, 1
mov ebx, 1
jmp 0x140064f63
mov eax, dword [0x141dcaae8]
xor edx, edx
div dword [0x141dcaaec]
add eax, 0x6d3fe20
and eax, 0x4f9e7c5a
imul eax, eax, 0xb0009ff9
lea rcx, [0x141db7122]
mov qword [rsi + 8], rcx
cmp eax, 0x213d6430
jae 0x140064711
lea rax, [0x141db7122]
mov qword [rsi + 8], rax
jmp 0x1400646d4
mov qword [rsi + 0x10], 3
mov ebx, 1
mov r15, qword [rbp - 8]
jmp 0x140064f63
mov eax, dword [0x141dcab38]
add eax, dword [0x141dcab3c]
imul ebx, eax, 0x254569d7
add ebx, 0x7e6204b7
or ebx, 0xe5e4c66c
sub rsp, 0x30
mov word [rsp + 0x20], r12w
mov rdx, r13
mov r8, r14
mov r9, qword [rbp]
call fcn.14004dcb0
mov rcx, qword [rbp - 0x18]
add rsp, 0x30
cmp ebx, 0x62ab9a92
jne 0x140064791
sub rsp, 0x30
mov word [rsp + 0x20], r12w
mov rdx, r13
mov r8, r14
mov r9, qword [rbp]
call fcn.14004dcb0
mov rcx, qword [rbp - 0x18]
add rsp, 0x30
jmp 0x140064727
xor eax, eax
mov r13, qword [rbp - 0x30]
mov r14, qword [rbp - 0x10]
nop dword [rax + rax]
test al, al
jne 0x1400647a0
nop word cs:[rax + rax]
mov eax, dword [0x141dcab58]
xor eax, dword [str.P_1O]
add eax, 0x25e3840c
or eax, 0x2168da13
imul rax, rax, 0x575ba7bb
shr rax, 0x3d
cmp eax, 0x97f37b65
ja 0x1400647b0
mov r11, qword [rcx]
mov r8, qword [rcx + 8]
movsx r9, word [rcx + 0x10]
movzx r10d, r9w
nop dword [rax + rax]
mov eax, dword [0x141dcab60]
or eax, dword [0x141dcab64]
or eax, 0x7ffeffc5
and eax, 0xffffffcf
cmp eax, 0xcee8ee8
jb 0x1400647f0
cmp r9w, r12w
jle 0x140064970
mov r12, qword [rbp - 0x28]
nop dword [rax]
mov eax, dword [0x141dcab68]
imul eax, dword [0x141dcab6c]
or eax, 0xbbffce72
add eax, 0x7d525b0
imul rax, rax, 0x269c738d
shr rax, 0x3c
cmp eax, 0xcb68e569
ja 0x140064820
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x140064850
nop word cs:[rax + rax]
mov eax, dword [0x141dcab70]
or eax, dword [0x141dcab74]
xor eax, 0x483d0420
or eax, 0xb7423b07
cmp eax, 0x9eacd4ac
je 0x140064860
test r8, r8
je 0x140064a56
mov eax, dword [0x141dcab80]
xor edx, edx
div dword [0x141dcab84]
nop word cs:[rax + rax]
mov eax, dword [0x141dcab88]
imul eax, dword [0x141dcab8c]
or eax, 0x1b705c04
and eax, 0x5f705d44
cmp eax, 0x108c7c80
je 0x1400648a0
movzx eax, byte [r11]
nop word cs:[rax + rax]
mov edx, dword [0x141dcab90]
add edx, dword [0x141dcab94]
xor edx, 0x146c244f
add edx, 0xcc80075e
or edx, 0xc1d0ae90
cmp edx, 0x12a47ba0
jb 0x1400648d0
cmp al, 0x30
jbe 0x140064a88
mov eax, 0x8bbf1b67
nop word cs:[rax + rax]
mov edx, dword [0x141dcaba8]
add edx, dword [0x141dcabac]
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0x3f48b4f0
je 0x140064910
test r10w, r10w
jle 0x140064a30
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x140064940
mov eax, dword [0x141dcabb0]
or eax, dword [0x141dcabb4]
xor eax, 0x9bc19caf
imul eax, eax, 0xdd27bbd1
and eax, 0xa40d9df4
cmp eax, 0x8820e100
ja 0x140064ae4
jmp 0x140064aaf
mov eax, dword [0x141dcac30]
xor edx, edx
div dword [0x141dcac34]
mov r12, qword [rbp - 0x28]
nop word cs:[rax + rax]
mov eax, dword [0x141dcac38]
xor eax, dword [0x141dcac3c]
add eax, 0x547baf08
xor eax, 0x28ed2505
add eax, 0xf394f836
cmp eax, 0x71fe1c79
jb 0x140064990
mov word [rsi], 2
test r14, r14
je 0x1400649f9
lea rax, [0x141db7118]
mov qword [rsi + 8], rax
mov eax, dword [0x141dcac60]
add eax, dword [0x141dcac64]
or eax, 0x6503c8fe
imul eax, eax, 0x98b5a055
imul rax, rax, 0x4e6273c5
shr rax, 0x3d
cmp eax, 0x31120dc8
je 0x140064d24
jmp 0x140064cef
mov eax, dword [0x141dcac40]
add eax, dword [0x141dcac44]
or eax, 0x4f0093e8
shr eax, 1
mov ecx, 0x9c1d9969
imul rcx, rax
shr rcx, 0x3c
add ecx, 0x649e584
cmp ecx, 0x1863f8a2
ja 0x140064eec
jmp 0x140064ec3
mov eax, dword [0x141dcabc0]
sub eax, dword [0x141dcabc4]
add eax, 0xe5bfbe65
xor eax, 0x5999c0be
cmp eax, 0x41fb827c
jb 0x140064db9
jmp 0x140064d74
ud2
mov eax, dword [0x141dcab98]
imul eax, dword [0x141dcab9c]
or eax, 0xff79bb51
add eax, 0xad6490fb
cmp eax, 0x22aed4af
jb 0x140064d70
jmp 0x140064d42
mov eax, dword [0x141dcabb8]
and eax, dword [0x141dcabbc]
or eax, 0x2937b146
imul eax, eax, 0x96e9dd07
mov edx, 0x93ae240f
imul rdx, rax
shr rdx, 0x3b
mov word [rsi], 2
mov qword [rsi + 8], r11
cmp edx, 0xb46495af
jbe 0x140064aef
mov word [rsi], 2
mov qword [rsi + 8], r11
jmp 0x140064aaf
mov rax, r8
sub rax, r10
jbe 0x140064bf7
mov edx, dword [0x141dcabe8]
add edx, dword [0x141dcabec]
or edx, 0xe2ac4db4
imul edx, edx, 0x8eb214db
cmp edx, 0x3fd0ba96
jne 0x140064b38
mov qword [rsi + 0x10], r10
mov word [rsi + 0x18], 2
lea rdx, [0x141dba6fb]
mov qword [rsi + 0x20], rdx
mov qword [rsi + 0x28], 1
lea rdx, [0x141dba6fb]
nop
mov r8d, dword [0x141dcabf0]
or r8d, dword [0x141dcabf4]
xor r8d, 0xf44ea81
imul r8d, r8d, 0x55dc2c56
add r8d, 0x104bf707
mov qword [rsi + 0x10], r10
mov word [rsi + 0x18], 2
mov qword [rsi + 0x20], rdx
mov qword [rsi + 0x28], 1
cmp r8d, 0x6dd8ed6b
ja 0x140064b40
add r11, r10
nop word cs:[rax + rax]
mov edx, dword [0x141dcabf8]
xor edx, dword [0x141dcabfc]
or edx, 0x4025602a
and edx, 0x62e5612a
cmp edx, 0xea581049
je 0x140064b90
mov word [rsi + 0x30], 2
mov qword [rsi + 0x38], r11
mov qword [rsi + 0x40], rax
mov ebx, 3
sub r14, rax
jbe 0x140064f63
nop dword [rax]
mov eax, dword [0x141dcac18]
or eax, dword [0x141dcac1c]
xor eax, 0x44000400
and eax, 0xc4510705
add eax, 0x92bf2189
cmp eax, 0xfbadbd86
ja 0x140064bd0
jmp 0x140064eaf
mov qword [rsi + 0x10], r8
sub r10, r8
mov word [rsi + 0x18], 0
mov eax, dword [0x141dcabd8]
xor edx, edx
div dword [0x141dcabdc]
imul eax, eax, 0x340455b0
add eax, 0xab256637
and eax, 0xf824ad96
cmp eax, 0x3ae1f653
jne 0x140064c30
mov qword [rsi + 0x20], r10
nop dword [rax]
mov eax, dword [0x141dcabe0]
xor edx, edx
div dword [0x141dcabe4]
add eax, 0x2162e3db
and eax, 0xa182826b
xor eax, 0x8dccc2a9
mov qword [rsi + 0x20], r10
cmp eax, 0xdbcefb97
ja 0x140064c30
test r14, r14
je 0x140064d38
mov eax, dword [0x141dcac00]
and eax, dword [0x141dcac04]
imul eax, eax, 0xc8cbfaf0
cmp eax, 0x16413827
jne 0x140064c80
mov word [rsi + 0x30], 2
mov eax, dword [0x141dcac08]
imul eax, dword [0x141dcac0c]
add eax, 0xb72c7839
xor eax, 0xd6ae9912
add eax, 0xc944b086
mov word [rsi + 0x30], 2
cmp eax, 0xeb44bb75
ja 0x140064c80
mov ecx, 0x88d05bd5
nop
mov eax, dword [0x141dcac10]
xor edx, edx
div dword [0x141dcac14]
xor eax, 0x2a2de19c
imul rax, rcx
shr rax, 0x3d
or eax, 0xa081f000
cmp eax, 0xff055e32
ja 0x140064cb0
lea rax, [0x141dba6fb]
mov qword [rsi + 0x38], rax
mov qword [rsi + 0x40], 1
jmp 0x140064eaf
mov eax, dword [0x141dcac68]
and eax, dword [0x141dcac6c]
mov ecx, 0xaf6604c7
imul rcx, rax
shr rcx, 0x3c
xor ecx, 0x20200c06
or ecx, 0xcd5f71e9
mov qword [rsi + 0x10], 2
cmp ecx, 0x745d0629
jae 0x140064d2e
mov qword [rsi + 0x10], 2
jmp 0x140064cef
mov word [rsi + 0x18], 0
mov qword [rsi + 0x20], r14
mov ebx, 2
jmp 0x140064f63
mov eax, dword [0x141dcaba0]
or eax, dword [0x141dcaba4]
or eax, 0x8bcb90df
add eax, 0x6c647788
imul rax, rax, 0x5049ddcf
shr rax, 0x3d
ud2
ud2
mov eax, dword [0x141dcabc8]
and eax, dword [0x141dcabcc]
mov edx, 0xa6b4d3bf
imul rdx, rax
shr rdx, 0x3f
or edx, 0xc3cd5cbe
mov word [rsi], 2
lea rax, [0x141db7118]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], 2
mov word [rsi + 0x18], 0
cmp edx, 0xcf35c7bc
jbe 0x140064dd9
mov word [rsi], 2
lea rax, [0x141db7118]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], 2
mov word [rsi + 0x18], 0
jmp 0x140064d74
mov r10, r9
neg r10
xor eax, eax
test al, al
je 0x140064df7
mov qword [rsi + 0x20], r10
mov word [rsi + 0x30], 2
mov qword [rsi + 0x38], r11
mov qword [rsi + 0x40], r8
mov eax, 0x961625a3
nop dword [rax]
mov edx, dword [0x141dcabd0]
xor edx, dword [0x141dcabd4]
imul rdx, rax
shr rdx, 0x3c
xor edx, 0x940226b1
or edx, 0x2b6c904c
mov qword [rsi + 0x20], r10
mov word [rsi + 0x30], 2
mov qword [rsi + 0x38], r11
mov qword [rsi + 0x40], r8
cmp edx, 0x7d7bdb52
jb 0x140064e00
mov ebx, 3
sub r14, r8
jbe 0x140064f63
mov ecx, 0xd02784a1
nop dword [rax]
mov eax, dword [0x141dcac20]
xor edx, edx
div dword [0x141dcac24]
xor eax, 0x3f9bc93
imul rax, rcx
shr rax, 0x36
and eax, 0x364
cmp eax, 0x9d933b04
ja 0x140064e50
nop word [rax + rax]
mov eax, dword [0x141dcac28]
add eax, dword [0x141dcac2c]
or eax, 0xbaa2462b
imul eax, eax, 0x8b138219
add eax, 0xdfc79a75
cmp eax, 0x234cbe97
jb 0x140064e80
cmp r14, r10
jbe 0x140064f63
add r14, r9
mov word [rsi + 0x48], 0
mov qword [rsi + 0x50], r14
mov ebx, 4
jmp 0x140064f63
mov eax, dword [0x141dcac48]
add eax, dword [0x141dcac4c]
xor eax, 0xcd4570b0
imul eax, eax, 0xce974c89
lea rcx, [0x141db7125]
mov qword [rsi + 8], rcx
cmp eax, 0xc26fd494
jne 0x140064ef9
lea rax, [0x141db7125]
mov qword [rsi + 8], rax
jmp 0x140064ec3
mov eax, dword [0x141dcac50]
xor eax, dword [0x141dcac54]
imul eax, eax, 0xc48e9760
add eax, 0xd66d2960
imul rax, rax, 0x2c49d4ab
shr rax, 0x3c
cmp eax, 0x79cf3b1e
jne 0x140064f2a
mov qword [rsi + 0x10], 1
xor eax, eax
nop dword [rax]
mov qword [rsi + 0x10], 1
test al, al
jne 0x140064f30
nop dword [rax]
mov eax, dword [0x141dcac58]
imul eax, dword [0x141dcac5c]
add eax, 0xc01b346e
or eax, 0xa48125d6
cmp eax, 0x24e72518
je 0x140064f40
mov ebx, 1
mov eax, dword [0x141dcac70]
sub eax, dword [0x141dcac74]
and eax, 0x6530132f
add eax, 0x66a61599
xor eax, 0xb6c06091
cmp eax, 0x3f3757d2
jb 0x140064fcd
mov r14d, dword [0x141dcac78]
imul r14d, dword [0x141dcac7c]
add r14d, 0x2e0007da
or r14d, 0x223fb5df
mov qword [rdi], r13
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rbx
sub rsp, 0x20
mov rcx, r15
mov rdx, rdi
call fcn.140062a80
add rsp, 0x20
cmp r14d, 0xa56442d3
jbe 0x140064ff1
mov qword [rdi], r13
mov qword [rdi + 8], r12
mov qword [rdi + 0x10], rsi
mov qword [rdi + 0x18], rbx
sub rsp, 0x20
mov rcx, r15
mov rdx, rdi
call fcn.140062a80
add rsp, 0x20
jmp 0x140064f85
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret