Function at 0x140023a54
Capabilities:
Access peb ldr_data
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xa8
mov r13d, edx
xor ebx, ebx
mov edi, 0x2fee354e
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test ebx, ebx
je 0x140023aea
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x129f52aa
jmp 0x140023adc
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140023abc
cmp r9d, ebx
jne 0x140023bf3
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov r11d, ecx
add r11, r10
shr rcx, 0x20
cmp r11, r10
je 0x140023bf3
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140023bf3
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r12 + rsi*4]
mov r9d, dword [rdx + r10]
add r9, r10
mov r14d, 0x129f52aa
jmp 0x140023b50
movsx r8d, dl
mov edx, r8d
imul edx, r8d
add edx, 0x31
xor edx, 0x4764996c
xor r8d, r14d
mov r14d, edx
imul r14d, r8d
mov dl, byte [r9]
inc r9
test dl, dl
jne 0x140023b32
cmp r14d, edi
je 0x140023b68
test esi, esi
jne 0x140023b1d
jmp 0x140023bf3
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov eax, dword [r11 + 0x24]
add rax, r10
movzx eax, word [rax + rsi*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, r11
jbe 0x140023bfb
lea rax, [rcx + r11]
cmp r9, rax
jae 0x140023bfb
mov ebx, 0x129f52aa
mov edi, ebx
jmp 0x140023bb5
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, ebx
xor eax, ecx
mov ebx, edx
imul ebx, eax
inc r9
mov al, byte [r9]
cmp al, 0x2e
jne 0x140023b98
jmp 0x140023bd8
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, edi
xor eax, ecx
mov edi, edx
imul edi, eax
inc r9
mov al, byte [r9]
test al, al
jne 0x140023bbe
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140023a90
and dword [rbp - 0x59], 0
mov dword [rbp - 0x59], 0x11f88bb3
mov eax, dword [rbp - 0x59]
add eax, 0x5b9165b6
xor eax, 0xfb0aed95
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5d78432f
xor eax, 0x189aee64
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xc3b4b35c
add eax, ecx
xor eax, 0xdb8ea206
sub eax, 0x7569cb35
xor eax, 0x736a65cc
mov edx, dword [0x14033e030]
xor edx, 0x2291bc15
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdd6e43ea
sub edx, eax
sub edx, ecx
add edx, 0x7e94f914
xor edx, 0xaf756a32
mov dword [rbp - 0x59], edx
and dword [rbp + 0x7f], 0
mov dword [rbp + 0x7f], 0x8561bc37
mov eax, dword [rbp + 0x7f]
add eax, 0x5b58b235
xor eax, 0x4789ed5d
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x258866eb
xor eax, 0x1cd484b3
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x5f81ab05
add eax, ecx
xor eax, 0xffcf4ec5
add eax, 0x4e64d65d
xor eax, 0x8f8ec151
lea r8d, [rcx - 0x1214f0f4]
add r8d, eax
not r8d
mov eax, dword [0x14033e038]
xor eax, 0xd96d611c
sub r8d, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26929ee3
add ecx, 0xee66f137
add ecx, r8d
xor ecx, 0xd7e463d4
mov dword [rbp + 0x7f], ecx
mov r8d, r13d
call r9
mov rsi, rax
mov qword [rbp - 9], rax
xor r8d, r8d
mov dword [rbp + 0x7f], r8d
mov dword [rbp - 0x59], r8d
mov qword [rbp - 0x31], r8
movabs rax, 0x3b98771e391df25
mov qword [rbp - 0x31], rax
mov qword [rbp - 0x39], r8
movabs rax, 0x506ca89e3d62fa8b
mov qword [rbp - 0x39], rax
movabs rcx, 0xf33a52b6a99ea403
add rcx, qword [rbp - 0x39]
movabs rax, 0xc9553662530a3ba3
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5b626aeb
sub rcx, rax
movabs rax, 0xf8f8cd97cd557b1d
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0xc7d654b8b541b94b
add rcx, rax
mov rdi, qword [0x14033e040]
add rcx, rdi
movabs rax, 0x5a9179a7a68786f5
xor rcx, rax
movabs rax, 0x5f627dc6da4fac78
sub rcx, rax
movabs rax, 0xbe3b3cd20c69563b
xor rcx, rax
movabs rdx, 0x3483ce4421c906dc
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adaa678e4
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52559871b
mov r11, qword [0x14033e030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d9028f807b9
add rdx, rax
add rdx, rcx
movabs rax, 0x3dc638bfd492fc0c
xor rdx, rax
mov qword [rbp - 0x39], rdx
movabs rcx, 0xf33a52b6184c4683
add rcx, qword [rbp - 0x31]
movabs rax, 0x6bd536625309aa50
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a6518c2e
add rcx, rax
movabs rax, 0xf8f8cd9860ed2213
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x7d654b97a850736
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a84c49799b
xor rcx, rax
movabs rax, 0x5f627dc6c04a175e
sub rcx, rax
movabs rax, 0xaa3b3cd255170f8e
xor rcx, rax
movabs rax, 0xb483ce44af2223ce
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad8612f6e
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b5279ed091
xor r11, rax
movabs rax, 0xe0b56d8de1690843
add rcx, rax
add rcx, r11
movabs rax, 0x49794a2e8d793d4e
xor rcx, rax
mov qword [rbp - 0x31], rcx
and rcx, rdx
and qword [rbp - 0x39], r8
and qword [rbp - 0x31], r8
cmp rsi, rcx
jne 0x140023fa2
and dword [rbp - 0x55], r8d
mov dword [rbp - 0x55], 0x67a7f555
mov eax, dword [rbp - 0x55]
add eax, 0x6b08
xor eax, 0x5cda30
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x533e120d
xor eax, 0x2c797fea
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xd244c259
add eax, ecx
xor eax, 0xdadf52e2
add eax, 0x70ff9505
xor eax, 0xf6a37e50
lea edx, [rcx + 0xdbd1b28]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0x2520ad12
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0xdadf52ed
add ecx, 0xccf91879
add ecx, edx
xor ecx, 0xed5dfdaa
mov dword [rbp - 0x55], ecx
movsxd rax, ecx
and dword [rbp - 0x55], r8d
jmp 0x1400254de
xor edi, edi
mov esi, 0x9b4f1b48
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
movups xmm0, xmmword [rax + 0x58]
movd ecx, xmm0
sub cx, 8
test edi, edi
je 0x140024014
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xd967c4e6
jmp 0x140024006
movsx edx, byte [r8]
mov ecx, edx
imul ecx, edx
add ecx, 0x31
xor ecx, 0x4764996c
xor edx, r9d
mov r9d, ecx
imul r9d, edx
add r8, 2
cmp r8, r10
jne 0x140023fe6
cmp r9d, edi
jne 0x14002411f
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov rcx, qword [rcx + r10 + 0x88]
mov ebx, ecx
add rbx, r10
shr rcx, 0x20
cmp rbx, r10
je 0x14002411f
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x14002411f
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r10 + r14*4]
mov r11d, dword [rdx + r13]
add r11, r10
mov r15d, 0xd967c4e6
jmp 0x140024080
movsx r8d, dl
mov r9d, r8d
imul r9d, r8d
add r9d, 0x31
xor r9d, 0x4764996c
mov edx, r15d
xor edx, r8d
mov r15d, r9d
imul r15d, edx
mov dl, byte [r11]
inc r11
test dl, dl
jne 0x14002405d
cmp r15d, esi
je 0x140024099
test r14d, r14d
jne 0x140024047
jmp 0x14002411f
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r14*2]
mov r12d, dword [rdx + rax*4]
add r12, r10
cmp r12, rbx
jbe 0x140024127
lea rax, [rcx + rbx]
cmp r12, rax
jae 0x140024127
mov edi, 0xd967c4e6
mov esi, edi
jmp 0x1400240e2
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, edi
mov edi, eax
imul edi, ecx
inc r12
mov al, byte [r12]
cmp al, 0x2e
jne 0x1400240c8
jmp 0x140024103
movsx ecx, al
mov eax, ecx
imul eax, ecx
add eax, 0x31
xor eax, 0x4764996c
xor ecx, esi
mov esi, eax
imul esi, ecx
inc r12
mov al, byte [r12]
test al, al
jne 0x1400240ec
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140023fba
and dword [rbp - 0x4d], 0
mov dword [rbp - 0x4d], 0xbf1f431c
mov eax, dword [rbp - 0x4d]
add eax, 0x57be8a35
xor eax, 0x1f89e9c3
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x25933563
xor eax, 0x207d1553
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x64656c51
add eax, ecx
xor eax, 0x3eb2465
add eax, 0x4e6ed07d
xor eax, 0xd15bf223
lea edx, [rcx - 0xe94000c]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd95ef87c
sub edx, eax
mov r15d, dword [0x14033e030]
xor r15d, 0x26a10783
add r15d, 0xe0302017
add r15d, edx
xor r15d, 0x82608b74
mov dword [rbp - 0x4d], r15d
and dword [rbp - 0x51], 0
mov dword [rbp - 0x51], 0x8532a423
mov eax, dword [rbp - 0x51]
add eax, 0x982badb5
xor eax, 0x430a2a30
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5b2e1207
xor eax, 0xdf0e3d45
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xccf146a1
add eax, ecx
xor eax, 0xba6ea7e7
add eax, 0x199fc52b
xor eax, 0x95235cf9
mov r14d, dword [0x14033e030]
xor r14d, 0x259f52f5
sub r14d, eax
mov eax, dword [0x14033e038]
xor eax, 0xda60ad0a
sub r14d, eax
sub r14d, ecx
sub r14d, 0x4fdbb548
xor r14d, 0xe128ce92
mov dword [rbp - 0x51], r14d
and qword [rbp - 0x21], 0
movabs rax, 0x67e6a3d5050312b6
mov qword [rbp - 0x21], rax
and qword [rbp - 0x29], 0
movabs rax, 0x206c2a3c91af4a4b
mov qword [rbp - 0x29], rax
movabs rcx, 0xf33a52b655975383
add rcx, qword [rbp - 0x21]
movabs rax, 0x78d536625309e79b
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0x7120fb80a599ab07
add rcx, rax
movabs rax, 0xf8f8cd9822ace8df
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x87d654b92751a711
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a8065fdec7
xor rcx, rax
movabs rax, 0x5f627dc6b3119f52
sub rcx, rax
movabs rax, 0x423b3cd2366f9eb5
xor rcx, rax
movabs rdx, 0xb483ce4473842429
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ad9565ba2
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b526a9a45d
mov r11, qword [0x14033e030]
mov rcx, r11
xor rcx, rax
movabs rdi, 0xe0b56d8ed78870f7
add rdi, rdx
add rdi, rcx
movabs rax, 0x44c5b492d10511da
xor rdi, rax
mov qword [rbp - 0x21], rdi
movabs rcx, 0xf33a52b74d10fd03
add rcx, qword [rbp - 0x29]
movabs rax, 0x22553662530adf15
xor rcx, rax
sub rcx, qword [0x14033e050]
sub rcx, qword [0x14033e058]
movabs rax, 0xedf047f5d4cc1f6
sub rcx, rax
movabs rax, 0xf8f8cd97275558b9
xor rcx, rax
sub rcx, qword [0x14033e048]
movabs rax, 0x47d654b7d764017c
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a6ec191971
xor rcx, rax
movabs rax, 0x5f627dc6755016a4
sub rcx, rax
movabs rax, 0xf63b3cd1baab0e28
xor rcx, rax
movabs rax, 0x3483ce4382cece4b
add rcx, rax
add rcx, rsi
not rcx
movabs rax, 0x13cce94add344248
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b522cbbdb7
xor r11, rax
movabs rbx, 0xe0b56d92b90d3d1d
add rbx, rcx
add rbx, r11
movabs rax, 0xd7726ff9d4628978
xor rbx, rax
mov qword [rbp - 0x29], rbx
mov r8d, r15d
mov edx, r14d
mov rsi, qword [rbp - 9]
mov rcx, rsi
call r12
movsxd rcx, eax
and rbx, rdi
xor r8d, r8d
mov qword [rbp - 0x29], r8
mov qword [rbp - 0x21], r8
mov dword [rbp - 0x51], r8d
mov dword [rbp - 0x4d], r8d
cmp rcx, rbx
jne 0x14002544c
movabs rsi, 0x9de04d4e5540a7a7
movabs rax, 0x3d794e57c2986000
movabs r14, 0xf9520bcd1f611b0a
mov rbx, qword [0x14033e070]
imul rbx, rax
movabs rax, 0x8a9dcdf53a1e9000
xor rbx, rax
mov r12, rbx
imul r12, rsi
movabs rdi, 0xaaaaaaaaaaaaaaab
mov rax, rdi
mul r12
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r12
sub rcx, rax
lea r13, [0x14033e060]
mov r8, rbx
and r8, rsi
imul r8, qword [r13 + rcx*8]
movabs rax, 0xdcdd3fb1e752c224
imul r8, rax
shr r8, 3
movabs rax, 0x39b73e97047273a5
xor r8, rax
movabs rax, 0xffffff57cb3fd0c5
mov r10, rbx
imul r10, rax
sub r10, 0x1b5d796
xor r10, r8
xor r10, qword [0x14033e060]
mov rax, r8
imul rax, qword [0x14033e070]
movabs rcx, 0xb9de928bc28c6fe4
imul rax, rcx
not rax
and r10, rax
ror r10, 0x32
shr r10, 8
movabs r9, 0x621fb2b1aabf5859
lea rcx, [rbx + r9]
xor rcx, 0xfffffffffc0264e9
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x347f26e1ee3b048
mov r11, qword [r13 + rcx*8]
imul r11, rax
sub r11, r9
movabs rcx, 0x218f5e5395f0a618
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov r15, r11
xor r15, rbx
lea rcx, [r11 + r9]
mov rax, rdi
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r13 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf5
and ecx, 0x8000003f
jge 0x1400245c4
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
not r15
imul r15, r8
imul r13, r15, 0xfffffffffe4a286a
lea rdi, [r9 + r13]
mov r9, r11
imul r9, r10
sub r9, rdi
xor r9, r14
mov cl, dil
xor cl, 0xfa
and cl, 0xf
rol r9, cl
mov rax, rdi
sub rax, qword [0x14033e078]
xor r9, rax
movabs rax, 0x26ee63228f3d8326
imul r15, rax
movabs rax, 0x2ee49f6d274b4ef1
sub r15, rax
xor r9, r15
xor r9, r8
xor r9, rbx
mov rax, r9
xor rax, 0xfffffffffffffffe
movabs rcx, 0xd79435e50d79435f
and eax, 3
movabs r15, 0xaaaaaaaaaaaaaaab
je 0x14002495f
sub rax, 1
je 0x14002483a
sub rax, 1
je 0x14002474c
cmp rax, 1
jne 0x140024a08
mov r14, rdi
imul r14, r11
movabs rax, 0x613f1e858cc19a7d
add rax, r9
xor r14, rax
ror r14, 0xa
shr r14, 0xc
xor r14, rbx
not r14
movabs rcx, 0x8357207d61e2
mov rdx, qword [0x14033e088]
add rdx, rcx
movabs rax, 0x629d37c9c1d9193d
xor rdx, rax
movzx eax, r14b
movzx ecx, r9b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db9789d8d1d
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, rsi
mov eax, 0xa9465ff7
add rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r12, [0x14033e060]
mov cl, byte [r12 + rcx*8]
and cl, 0xf
movabs rsi, 0x27ccd70888b495d0
sub rsi, r14
shr rsi, cl
movabs rcx, 0x6227d73a06818795
add rcx, r13
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r9
imul rax, qword [r12 + rcx*8]
imul rax, r9
sub rax, r10
xor rsi, rax
jmp 0x140024a08
movabs rax, 0xaaaaaa1aa95fa2c9
mov rcx, r9
xor rcx, rax
movabs rax, 0x1206ed6b527e85
imul rcx, rax
movabs rdx, 0xfff17ca87e3d94b5
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8f4f9015
imul r13, rax
movabs r11, 0x249a18892d2adf62
add r11, rcx
add r11, r13
movabs rax, 0x277cd7be7b8f75a9
mov rcx, r11
xor rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rdi, r11
not rdi
lea rdx, [0x14033e060]
imul rdi, qword [rdx + rcx*8]
xor rdi, 0xfffffffffc0a7419
lea ecx, [r9 + 0xb]
and cl, 0x3f
rol rdi, cl
movabs rax, 0xdf97debfeaf28157
xor r12, rax
movabs rax, 0x7c7a7dc6950d7ea8
and r12, rax
imul rdi, r12
mov rcx, rdi
ror rcx, 0x1e
not rcx
movabs rax, 0x9b2de6b2d18fde38
imul rcx, rax
mov rax, r11
sub rax, rdi
lea rdx, [rcx + rax*4]
mov cl, r10b
and cl, 0x3f
ror rdx, cl
mov rax, rsi
mov rsi, rdx
imul rsi, rax
jmp 0x140024a08
movabs rax, 0xb49521319f1794b5
imul r9, rax
mov rax, rcx
mul r9
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r9b
sub cl, dl
movabs rdx, 0x621fb2b1aabf5858
mov rax, rbx
imul rax, rdx
xor rax, r14
not rax
shl rax, cl
xor r8, rax
mov cl, dil
and cl, 0x3f
rol r8, cl
movabs rcx, 0x621fb2b1aabf5859
add rcx, r9
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xd4e5540a7a7
lea rax, [0x14033e060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7f59bd4e4
or r8, rax
mov rsi, qword [0x14033e070]
imul rsi, r14
sub rsi, rdi
mov rax, r10
sub rax, r8
xor rsi, rax
movabs rax, 0xc7a7c6a6a493d4e9
xor rsi, rax
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov rdx, r9
imul rdx, rdi
imul rdx, rsi
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x78958946bc198f3
add rbx, rax
xor rbx, r10
mov al, r11b
add al, al
lea ecx, [rax + r11]
shl cl, 2
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140024a08
mov rax, r15
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r9
imul rax, qword [0x14033e080]
lea rdx, [0x14033e060]
mov rdx, qword [rdx + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, 0x3f
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, rdi
not r10
imul r10, r11
movabs rax, 0x7cd8a7de79628508
imul r10, rax
mov rax, r8
imul rax, rbx
mov rbx, r10
xor rbx, rax
imul r10, qword [0x14033e060], 0xfffffffffe4a286a
mov rdx, qword [0x14033e068]
sub r10, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400249f5
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r10, cl
movabs rax, 0x621fb2b1aabf5859
add r10, rax
add r10, r13
movabs rax, 0xff055d7b89298fc5
xor r14, rax
mov rax, r15
mul r14
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub r14, rax
xor r8, rbx
lea rax, [0x14033e060]
imul r8, qword [rax + r14*8]
not rdi
imul rdi, r9
imul rdi, r10
imul rdi, rsi
movabs rcx, 0xf5ed7e878e9ac519
xor rcx, r11
not rcx
xor rcx, rdi
sub rcx, r8
call fcn.14001fb84
mov qword [0x14034c9e8], rax
xor r15d, r15d
mov dword [rbp - 0x49], r15d
mov dword [rbp - 0x49], 0x8c743d24
mov eax, dword [rbp - 0x49]
add eax, 0xd471ff35
xor eax, 0x948a6676
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x241d1b04
xor eax, 0xa1d6d27f
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x3b1fd300
add eax, ecx
xor eax, 0x75ae72f1
add eax, 0x27a29ee9
xor eax, 0xeafe5207
mov edx, dword [0x14033e030]
xor edx, 0x24ae39af
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdb51c650
sub edx, eax
sub edx, ecx
add edx, 0x5ccd4ec5
xor edx, 0x2c6e60b0
mov dword [rbp - 0x49], edx
movsxd rax, edx
mov qword [rbp + 0x77], rax
mov dword [rbp - 0x49], r15d
mov byte [rbp + 0x77], r15b
lea rcx, [rbp + 0x77]
call fcn.140021474
mov dword [rbp - 0x45], r15d
mov dword [rbp - 0x45], 0x3e66d650
mov qword [rbp - 0x11], r15
movabs rax, 0x31fc2378add3b9ad
mov qword [rbp - 0x11], rax
mov qword [rbp - 0x19], r15
movabs rax, 0x34f8cb24cbcf6787
mov qword [rbp - 0x19], rax
movabs rcx, 0xf33a52b69ad02903
add rcx, qword [rbp - 0x19]
movabs rax, 0x4e553662530a2cd4
xor rcx, rax
mov r11, qword [0x14033e050]
sub rcx, r11
mov r10, qword [0x14033e058]
sub rcx, r10
movabs rax, 0xedf047f5b35ff7a
sub rcx, rax
movabs rax, 0xf8f8cd97dc5f3009
xor rcx, rax
mov r9, qword [0x14033e048]
sub rcx, r9
movabs rax, 0x47d654b8c95b0142
add rcx, rax
mov rbx, qword [0x14033e040]
add rcx, rbx
movabs rax, 0x5a9179a7b76b0b41
xor rcx, rax
movabs rax, 0x5f627dc6e0bf8f54
sub rcx, rax
movabs rax, 0x963b3cd213d10a2f
xor rcx, rax
movabs rdx, 0x3483ce44302fdc7f
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94ada6b3ef8
mov r8, qword [0x14033e038]
mov rax, r8
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52594c107
mov rsi, qword [0x14033e030]
mov rcx, rsi
xor rcx, rax
movabs r14, 0xe0b56d8fed42e1cd
add r14, rdx
add r14, rcx
movabs rax, 0x87f86b2912c7b0c8
xor r14, rax
mov qword [rbp - 0x19], r14
movabs rcx, 0xf33a52b71bd07483
add rcx, qword [rbp - 0x11]
movabs rax, 0x99d53662530aadd5
xor rcx, rax
sub rcx, r11
sub rcx, r10
movabs rax, 0x7120fb80a346ffa4
add rcx, rax
movabs rax, 0xf8f8cd97595ae35b
xor rcx, rax
sub rcx, r9
movabs rax, 0x7d654b81a3f1ac5
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179a72446b523
xor rcx, rax
movabs rax, 0x5f627dc6817b7716
sub rcx, rax
movabs rax, 0x3a3b3cd1d34cdc6c
xor rcx, rax
movabs rdx, 0xb483ce43b2b69310
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94adc6f4026
mov rax, r8
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52390bfd9
mov rcx, rsi
xor rcx, rax
movabs rdi, 0xe0b56d91f348117b
add rdi, rdx
add rdi, rcx
movabs rax, 0x5abd6e232289ba36
xor rdi, rax
mov qword [rbp - 0x11], rdi
mov eax, dword [rbp - 0x45]
add eax, 0xda30a9b5
xor eax, 0x3f0a6c35
sub eax, r10d
sub eax, r11d
sub eax, 0x5bf420fb
xor eax, 0x9c012d55
sub eax, r9d
add eax, 0x7353828f
add eax, ebx
xor eax, 0x6f20f877
add eax, 0x281b2edb
xor eax, 0x941eced2
xor esi, 0x24973f05
sub esi, eax
xor r8d, 0xdb68c0fa
sub esi, r8d
sub esi, ebx
sub esi, 0x6c898bb
xor esi, 0xbff4ae2
mov dword [rbp - 0x45], esi
mov eax, dword [0x14035ca24]
test eax, eax
jne 0x140024d5a
mov eax, r15d
jmp 0x140024d77
mov dword [rbp + 0xf], eax
lea rax, [rbp - 1]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 9]
call fcn.140291310
movsxd rcx, esi
mov rdx, r15
cmp rax, rcx
setb dl
and rdi, r14
mov rax, r15
cmp rdx, rdi
sete al
mov qword [rbp + 0x77], rax
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], r15
mov dword [rbp - 0x45], r15d
movabs rsi, 0xf1528e1aad9061ad
movabs rax, 0x3000000000000000
movabs r14, 0x808adfa0fc71e71f
mov rbx, qword [0x14033e078]
imul rbx, rax
movabs rax, 0xd000000000000000
xor rbx, rax
mov r12, rbx
imul r12, r14
movabs r9, 0xaaaaaaaaaaaaaaab
mov rax, r9
mul r12
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r12
sub rcx, rax
mov r8, rbx
and r8, r14
lea r10, [0x14033e060]
imul r8, qword [r10 + rcx*8]
movabs rax, 0xeaf23179835b068e
imul r8, rax
shr r8, 3
movabs rax, 0x7227b37c663ecf21
xor r8, rax
movabs rax, 0xffffff57d775cc01
mov rdi, rbx
imul rdi, rax
sub rdi, 0x15fc17a
xor rdi, qword [0x14033e060]
xor rdi, r8
mov rax, r8
imul rax, qword [0x14033e070]
movabs rcx, 0xb9de928bdec67320
imul rax, rcx
not rax
and rdi, rax
ror rdi, 0xe
shr rdi, 8
movabs r13, 0x7f75205f038e18e1
lea rcx, [rbx + r13]
xor rcx, 0xffffffffe048782d
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0xbbb194c9d554c240
mov r11, qword [r10 + rcx*8]
imul r11, rax
sub r11, r13
movabs rcx, 0x69bb0f66d7efbbcc
mov rax, r8
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov r15, r11
xor r15, rbx
lea rcx, [r11 + r13]
mov rax, r9
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r11b
movzx ecx, byte [r10 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x31
and ecx, 0x8000003f
jge 0x140024f0f
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
not r15
imul r15, r8
imul r13, r15, 0xfffffffffea03e86
movabs r9, 0x7f75205f038e18e1
add r9, r13
mov r10, r11
imul r10, rdi
sub r10, r9
xor r10, rsi
mov cl, r9b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
movabs rax, 0x6d7eeec9eef87c3a
imul r15, rax
movabs rax, 0x25655a72e206f5c1
sub r15, rax
xor r10, r15
mov rax, r9
sub rax, qword [0x14033e078]
xor r10, rax
xor r10, r8
xor r10, rbx
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
movabs r15, 0xaaaaaaaaaaaaaaab
je 0x1400252aa
sub rax, 1
je 0x140025184
sub rax, 1
je 0x140025096
cmp rax, 1
jne 0x140025353
mov rsi, r9
imul rsi, r11
movabs rax, 0xe01d237447ffaae1
add rax, r10
xor rsi, rax
ror rsi, 0x36
shr rsi, 0xc
xor rsi, rbx
not rsi
movabs rcx, 0x83573c377d26
mov rdx, qword [0x14033e088]
add rdx, rcx
movabs rax, 0x7ff7a52774a24541
xor rdx, rax
movzx eax, sil
movzx ecx, r10b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db964d791d9
sub rax, r11
mov r11, rdx
xor r11, rax
mov rcx, r11
imul rcx, r14
mov eax, 0xb50c4333
add rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r12, [0x14033e060]
mov cl, byte [r12 + rcx*8]
and cl, 0xf
movabs r14, 0x344f86f8e6ef6e28
sub r14, rsi
shr r14, cl
movabs rcx, 0x7f7d44e74b164ce1
add rcx, r13
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r10
imul rax, qword [r12 + rcx*8]
imul rax, r10
sub rax, rdi
xor r14, rax
jmp 0x140025353
movabs rax, 0xaaaaaa1ab515be0d
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed77186241
imul rcx, rax
movabs rdx, 0xfff17ca862778871
mov rax, r8
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a93058cd1
imul r13, rax
movabs r11, 0xf2fb367df07e882
add r11, rcx
add r11, r13
movabs rax, 0x277cd7be67c5696d
mov rcx, r11
xor rcx, rax
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
not r9
lea rax, [0x14033e060]
imul r9, qword [rax + rcx*8]
xor r9, 0xffffffffe04068dd
lea ecx, [r10 + 0xf]
and cl, 0x3f
rol r9, cl
movabs rax, 0x284871c200000000
xor r12, rax
movabs rax, 0x7c7a7dc68947626c
and r12, rax
imul r9, r12
mov rcx, r9
ror rcx, 0x3d
not rcx
movabs rax, 0x9b2de6b2a0a7ad28
imul rcx, rax
mov rax, r11
sub rax, r9
lea rdx, [rcx + rax*4]
mov cl, dil
and cl, 0x3f
ror rdx, cl
mov rax, r14
mov r14, rdx
imul r14, rax
jmp 0x140025353
movabs rcx, 0xcc341b28bb781851
imul r10, rcx
movabs rax, 0xd79435e50d79435f
mul r10
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r10b
sub cl, dl
movabs rdx, 0x7f75205f038e18e0
mov rax, rbx
imul rax, rdx
xor rax, rsi
not rax
shl rax, cl
xor r8, rax
mov cl, r9b
and cl, 0x3f
rol r8, cl
movabs rcx, 0x7f75205f038e18e1
add rcx, r10
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0x1fa0fc71e71f
lea rax, [0x14033e060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7e9d1c820
or r8, rax
mov r14, qword [0x14033e070]
imul r14, rsi
sub r14, r9
mov rcx, rdi
sub rcx, r8
xor r14, rcx
movabs rcx, 0xc7a7c6a6b8d9c82d
xor r14, rcx
movabs rax, 0xcccccccccccccccd
mul rbx
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rbx
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r9
imul rdx, r14
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rbx
movabs rbx, 0x7895894778b8437
add rbx, rax
xor rbx, rdi
mov cl, r11b
shl cl, 3
and cl, 0x3f
rol rbx, cl
not rbx
jmp 0x140025353
mov rax, r15
mul r8
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r8
sub rcx, rax
mov rax, r10
imul rax, qword [0x14033e080]
lea rdx, [0x14033e060]
mov rdx, qword [rdx + rcx*8]
and rdx, rax
xor rdx, r8
and r8b, 0x3f
mov cl, r8b
mov r8, rdx
ror r8, cl
imul r8, r9
not rdi
imul rdi, r11
movabs rax, 0x7cd8a7de652899cc
imul rdi, rax
mov rax, r8
imul rax, rbx
mov rbx, rdi
xor rbx, rax
imul rdi, qword [0x14033e060], 0xfffffffffea03e86
mov rdx, qword [0x14033e068]
sub rdi, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140025340
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rdi, cl
movabs rax, 0x7f75205f038e18e1
add rdi, rax
add rdi, r13
movabs rcx, 0xff055d7b95639301
xor rsi, rcx
mov rax, r15
mul rsi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rsi, rax
xor r8, rbx
lea rax, [0x14033e060]
imul r8, qword [rax + rsi*8]
not r9
imul r9, r10
imul r9, rdi
imul r9, r14
movabs rcx, 0xf5ed7e8792d0d9dd
xor rcx, r11
not rcx
xor rcx, r9
sub rcx, r8
call fcn.14001fde8
mov qword [0x14034c998], rax
mov rax, qword [rbp + 0x77]
xor r8d, r8d
mov dword [rbp - 0x41], r8d
mov dword [rbp - 0x41], 0x992241b8
mov eax, dword [rbp - 0x41]
add eax, 0x5251f035
xor eax, 0x8589e456
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
add eax, 0x25a37b31
xor eax, 0x25ff61bb
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x6bc2575c
add eax, ecx
xor eax, 0xa1b040d
add eax, 0x48021be5
xor eax, 0xa4126a87
lea edx, [rcx - 0x94d5e42]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd9494614
sub edx, eax
mov ecx, dword [0x14033e030]
xor ecx, 0x26b6b9eb
add ecx, 0xca68062f
add ecx, edx
xor ecx, 0x341fc85c
mov dword [rbp - 0x41], ecx
movsxd rax, ecx
mov dword [rbp - 0x41], r8d
jmp 0x1400254de
mov rax, qword [rbp + 0x67]
mov qword [rax + 0x10], rsi
mov ecx, dword [rbp + 0x6f]
mov dword [rax + 8], ecx
mov dword [rbp - 0x3d], r8d
mov dword [rbp - 0x3d], 0xbaf6c1c0
mov eax, dword [rbp - 0x3d]
add eax, 0x5217c2b6
xor eax, 0x580ae41c
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
sub eax, 0x5d5bd646
xor eax, 0x223a77f0
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0x5091501e
add eax, ecx
xor eax, 0xe65d5ff2
sub eax, 0x73a74981
xor eax, 0x90278319
mov edx, dword [0x14033e030]
xor edx, 0x22b7a2a1
sub edx, eax
mov eax, dword [0x14033e038]
xor eax, 0xdd485d5e
sub edx, eax
sub edx, ecx
add edx, 0x4f50eefd
xor edx, 0x2fca341e
mov dword [rbp - 0x3d], edx
movsxd rax, edx
mov dword [rbp - 0x3d], r8d
add rsp, 0xa8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret