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

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x68
mov rax, rcx
lea rcx, vtable.win_proc_api.0
mov qword [rax], rcx
xor edx, edx
mov qword [rbp + 0x58], rdx
movabs rax, 0xf450102bb5490eca
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x50], rdx
movabs rax, 0xc25d9a2f45e9b2a4
mov qword [rbp + 0x50], rax
movabs rax, 0x6063d60860b02c89
sub rax, qword [0x14033a050]
sub rax, qword [0x14033a058]
movabs rcx, 0xf8f8cd97d4033757
xor rax, rcx
sub rax, qword [0x14033a048]
movabs rcx, 0x87d654b8be2ed9ca
add rcx, rax
mov rdi, qword [0x14033a040]
add rcx, rdi
movabs rax, 0x5a9179a7ae07b0ff
xor rcx, rax
movabs rax, 0x5f627dc6de2bd75a
sub rcx, rax
movabs rax, 0x323b3cd20fb34216
xor rcx, rax
movabs rdx, 0xb483ce44282e6d57
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ada8c2b2a
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b52573d4d5
mov r11, qword [0x14033a030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d900e8dc87f
add rdx, rax
add rdx, rcx
movabs rax, 0xab14a82a603cb1f2
xor rdx, rax
mov qword [rbp + 0x50], rdx
movabs rax, 0x7c0050045a11668f
sub rax, qword [0x14033a050]
sub rax, qword [0x14033a058]
movabs rcx, 0xf8f8cd984d44b48d
xor rax, rcx
sub rax, qword [0x14033a048]
movabs rcx, 0xc7d654b9603efead
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a83635abe5
xor rcx, rax
movabs rax, 0x5f627dc6c2256a08
sub rcx, rax
movabs rax, 0x9e3b3cd24b68f3f6
xor rcx, rax
movabs rax, 0x3483ce449c4e9f58
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad8ae9b74
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b52751648b
xor r11, rax
movabs rax, 0xe0b56d8e2ee28249
add rcx, rax
add rcx, r11
movabs rax, 0x2000f239b73bb7fc
xor rcx, rax
mov qword [rbp + 0x58], rcx
and rcx, rdx
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 0x10]
and qword [rbp + 0x50], 0
and qword [rbp + 0x58], 0
cmp rax, rcx
je 0x14002156a
xor edi, edi
mov esi, 0xffc91348
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 0x140020244
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xb9b3fd94
jmp 0x140020236
movsx edx, byte [r9]
mov r8d, edx
imul r8d, edx
add r8d, 0x31
xor r8d, 0x4764996c
mov ecx, r10d
xor ecx, edx
mov r10d, r8d
imul r10d, ecx
add r9, 2
cmp r9, r11
jne 0x140020210
cmp r10d, edi
jne 0x14002035c
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 0x14002035c
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x14002035c
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r14*4]
add rdx, r13
mov r11d, dword [rdx + r10]
add r11, r10
mov r15d, 0xb9b3fd94
jmp 0x1400202b7
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 0x140020294
cmp r15d, esi
je 0x1400202d0
test r14d, r14d
jne 0x140020277
jmp 0x14002035c
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r14*2]
mov r13d, dword [rdx + rax*4]
add r13, r10
cmp r13, rbx
jbe 0x140020364
lea rax, [rbx + rcx]
cmp r13, rax
jae 0x140020364
mov edi, 0xb9b3fd94
mov esi, edi
jmp 0x14002031c
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 r13
mov al, byte [r13]
cmp al, 0x2e
jne 0x1400202ff
jmp 0x140020340
movsx ecx, al
mov edx, ecx
imul edx, ecx
add edx, 0x31
xor edx, 0x4764996c
mov eax, esi
xor eax, ecx
mov esi, edx
imul esi, eax
inc r13
mov al, byte [r13]
test al, al
jne 0x140020326
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1400201e4
and dword [rbp + 0x58], 0
mov dword [rbp + 0x58], 0xdc5ed791
mov eax, 0x3516ce03
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0x2dfd372b
sub eax, dword [0x14033a048]
mov rcx, qword [0x14033a040]
add eax, 0x7670ad3e
add eax, ecx
xor eax, 0x1314a4fd
add eax, 0x428b3b35
xor eax, 0x8801d77a
lea edx, [rcx - 0x1a616c6]
add edx, eax
not edx
mov eax, dword [0x14033a038]
xor eax, 0xd929cca4
sub edx, eax
mov r12d, dword [0x14033a030]
xor r12d, 0x26d6335b
add r12d, 0xaa8d24bf
add r12d, edx
xor r12d, 0xeeb86a4c
mov dword [rbp + 0x58], r12d
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x7ef4a3ce
mov eax, 0xea06d868
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0x49fb7294
sub eax, dword [0x14033a048]
mov rdx, qword [0x14033a040]
lea ecx, [rdx + 0x5b33ca6]
add ecx, eax
xor ecx, 0x1302e7b6
sub ecx, 0x7e56ede5
xor ecx, 0xebbaf0bc
mov r15d, dword [0x14033a030]
xor r15d, 0x23543445
sub r15d, ecx
mov eax, dword [0x14033a038]
xor eax, 0xdcabcbba
sub r15d, eax
sub r15d, edx
sub r15d, 0x73ef6849
xor r15d, 0xa6b7b122
mov dword [rbp + 0x50], r15d
mov rax, qword [rbp + 0x48]
mov r14, qword [rax + 0x10]
and qword [rbp - 0x38], 0
movabs rax, 0x83955ffccfb3e3e
mov qword [rbp - 0x38], rax
and qword [rbp + 0x60], 0
movabs rax, 0x4d4f4f51ff184af0
mov qword [rbp + 0x60], rax
movabs rax, 0x90c79a54e818c550
sub rax, qword [0x14033a050]
sub rax, qword [0x14033a058]
movabs rcx, 0xf8f8cd983441bb2f
xor rax, rcx
sub rax, qword [0x14033a048]
movabs rcx, 0x87d654b93ed12c77
add rcx, rax
mov rsi, qword [0x14033a040]
add rcx, rsi
movabs rax, 0x5a9179a81a1ea397
xor rcx, rax
movabs rax, 0x5f627dc6bfbb8642
sub rcx, rax
movabs rax, 0xe23b3cd23f17f332
xor rcx, rax
movabs rdx, 0xb483ce44845a8b1d
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ad9111d52
mov r10, qword [0x14033a038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b526eee2ad
mov r11, qword [0x14033a030]
mov rcx, r11
xor rcx, rax
movabs rdi, 0xe0b56d8e9206da27
add rdi, rdx
add rdi, rcx
movabs rax, 0xa830da733aaf346a
xor rdi, rax
mov qword [rbp - 0x38], rdi
movabs rax, 0x37fd8fec140bd790
sub rax, qword [0x14033a050]
sub rax, qword [0x14033a058]
movabs rcx, 0xf8f8cd97504ac529
xor rax, rcx
sub rax, qword [0x14033a048]
movabs rcx, 0x47d654b80e222d7e
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a71a190961
xor rcx, rax
movabs rax, 0x5f627dc684059a34
sub rcx, rax
movabs rax, 0xd63b3cd1ced65ec9
xor rcx, rax
movabs r9, 0x3483ce43aa089d87
add r9, rcx
add r9, rsi
not r9
movabs rax, 0x13cce94adc92f1d8
xor r10, rax
sub r9, r10
movabs rax, 0xec3316b5236d0e27
xor r11, rax
movabs rbx, 0xe0b56d92175d7cad
add rbx, r9
add rbx, r11
movabs rax, 0xacb731d12494a7e8
xor rbx, rax
mov qword [rbp + 0x60], rbx
mov r8d, r12d
mov edx, r15d
mov rcx, r14
call r13
movsxd rcx, eax
and rbx, rdi
xor edx, edx
mov qword [rbp + 0x60], rdx
mov qword [rbp - 0x38], rdx
mov dword [rbp + 0x50], edx
mov dword [rbp + 0x58], edx
cmp rcx, rbx
je 0x14002156a
mov rax, qword [rbp + 0x48]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x28], rax
movabs rsi, 0x9de04d4e5540a7a7
movabs rax, 0x3d794e57c2986000
movabs r14, 0xf9520bcd1f611b0a
mov rbx, qword [0x14033a070]
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, [0x14033a060]
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 [0x14033a060]
mov rax, r8
imul rax, qword [0x14033a070]
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 0x1400207bc
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
movabs rax, 0x26ee63228f3d8326
imul r15, rax
movabs rax, 0x2ee49f6d274b4ef1
sub r15, rax
xor r9, r15
mov rax, rdi
sub rax, qword [0x14033a078]
xor r9, rax
xor r9, r8
xor r9, rbx
mov rax, r9
xor rax, 0xfffffffffffffffe
movabs rcx, 0xd79435e50d79435f
and eax, 3
movabs r15, 0xaaaaaaaaaaaaaaab
je 0x140020b57
sub rax, 1
je 0x140020a32
sub rax, 1
je 0x140020944
cmp rax, 1
jne 0x140020c00
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 [0x14033a088]
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, [0x14033a060]
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 0x140020c00
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, [0x14033a060]
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 0x140020c00
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, [0x14033a060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r8, rax
movabs rax, 0xffffc7a7f59bd4e4
or r8, rax
mov rsi, qword [0x14033a070]
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 0x140020c00
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 [0x14033a080]
lea rdx, [0x14033a060]
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 [0x14033a060], 0xfffffffffe4a286a
mov rdx, qword [0x14033a068]
sub r10, rdx
mov al, bl
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140020bed
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, [0x14033a060]
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.14001fc84
mov qword [0x1403489e8], rax
xor r15d, r15d
mov dword [rbp + 0x50], r15d
mov dword [rbp + 0x50], 0xa7afac1b
mov eax, 0x9f688046
sub eax, dword [0x14033a058]
sub eax, dword [0x14033a050]
xor eax, 0x9d12a5e3
sub eax, dword [0x14033a048]
mov rdx, qword [0x14033a040]
lea ecx, [rdx - 0x4b3efc51]
add ecx, eax
xor ecx, 0x70541975
add ecx, 0x28cdeced
xor ecx, 0xb0a578fc
mov r8d, dword [0x14033a030]
xor r8d, 0x249b7413
sub r8d, ecx
mov eax, dword [0x14033a038]
xor eax, 0xdb648bec
sub r8d, eax
sub r8d, edx
add r8d, 0x74384590
xor r8d, 0xbfc15284
mov dword [rbp + 0x50], r8d
movsxd rax, r8d
mov qword [rbp - 0x30], rax
mov dword [rbp + 0x50], r15d
mov byte [rbp + 0x50], r15b
lea rcx, [rbp + 0x50]
call fcn.14002158c
mov dword [rbp + 0x58], r15d
mov dword [rbp + 0x58], 0x6f7d3419
mov qword [rbp - 0x38], r15
movabs rax, 0x48db09d989ec49ca
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x60], r15
movabs rax, 0x34a28d5498449ac4
mov qword [rbp + 0x60], rax
movabs rax, 0x37aad1ea21bf98b3
mov r11, qword [0x14033a050]
sub rax, r11
mov r9, qword [0x14033a058]
sub rax, r9
movabs rcx, 0xf8f8cd97df9ee8bd
xor rax, rcx
mov r10, qword [0x14033a048]
sub rax, r10
movabs rcx, 0xc7d654b8cdb2a1f7
add rcx, rax
mov rbx, qword [0x14033a040]
add rcx, rbx
movabs rax, 0x5a9179a7bb112195
xor rcx, rax
movabs rax, 0x5f627dc6e69914d8
sub rcx, rax
movabs rax, 0xfe3b3cd2156a9a46
xor rcx, rax
movabs rdx, 0x3483ce44334c6504
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94ada5e7344
mov r8, qword [0x14033a038]
mov rax, r8
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b525a18cbb
mov rsi, qword [0x14033a030]
mov rcx, rsi
xor rcx, rax
movabs r14, 0xe0b56d8fe0aa6a19
add r14, rdx
add r14, rcx
movabs rax, 0x3921ac3c7bcb62ac
xor r14, rax
mov qword [rbp + 0x60], r14
movabs rax, 0x3be1667396d19952
sub rax, r11
sub rax, r9
movabs rcx, 0xf8f8cd975ebcb8e7
xor rax, rcx
sub rax, r10
movabs rcx, 0x87d654b82170a208
add rcx, rax
add rcx, rbx
movabs rax, 0x5a9179a72a521f0f
xor rcx, rax
movabs rax, 0x5f627dc685db568a
sub rcx, rax
movabs rax, 0x523b3cd1d5f35851
xor rcx, rax
movabs rdx, 0xb483ce43b7de1d9b
add rdx, rcx
add rdx, rbx
not rdx
movabs rcx, 0x13cce94adc5a0d9a
mov rax, r8
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b523a5f265
mov rcx, rsi
xor rcx, rax
movabs rdi, 0xe0b56d91de3e52ef
add rdi, rdx
add rdi, rcx
movabs rax, 0x5445fe9ee2a4f1c2
xor rdi, rax
mov qword [rbp - 0x38], rdi
mov eax, 0xb8fedf72
sub eax, r9d
sub eax, r11d
xor eax, 0x9ed94e09
sub eax, r10d
lea ecx, [rbx - 0x8df51bc]
add ecx, eax
xor ecx, 0x7252b6cb
add ecx, 0x279b2827
xor ecx, 0xfd855bb9
xor esi, 0x24a272b9
sub esi, ecx
xor r8d, 0xdb5d8d46
sub esi, r8d
sub esi, ebx
sub esi, 0x1482d2f4
xor esi, 0x6dd04396
mov dword [rbp + 0x58], esi
mov eax, dword [0x140358a24]
test eax, eax
jne 0x140020f0c
mov eax, r15d
jmp 0x140020f29
mov dword [rbp - 0x10], eax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x28]
call fcn.14028df90
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 - 0x30], rax
mov qword [rbp + 0x60], r15
mov qword [rbp - 0x38], r15
mov dword [rbp + 0x58], r15d
movabs rbx, 0xf1528e1aad9061ad
movabs rax, 0x3000000000000000
movabs r14, 0x808adfa0fc71e71f
mov rdi, qword [0x14033a078]
imul rdi, rax
movabs rax, 0xd000000000000000
xor rdi, rax
mov r12, rdi
imul r12, r14
movabs r8, 0xaaaaaaaaaaaaaaab
mov rax, r8
mul r12
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r12
sub rcx, rax
mov r9, rdi
and r9, r14
lea r10, [0x14033a060]
imul r9, qword [r10 + rcx*8]
movabs rax, 0xeaf23179835b068e
imul r9, rax
shr r9, 3
movabs rax, 0x7227b37c663ecf21
xor r9, rax
movabs rax, 0xffffff57d775cc01
mov rsi, rdi
imul rsi, rax
sub rsi, 0x15fc17a
xor rsi, r9
xor rsi, qword [0x14033a060]
mov rax, r9
imul rax, qword [0x14033a070]
movabs rcx, 0xb9de928bdec67320
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0xe
shr rsi, 8
movabs r13, 0x7f75205f038e18e1
lea rcx, [rdi + r13]
xor rcx, 0xffffffffe048782d
mov rax, r8
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, r9
imul rax, rcx
xor r11, rax
shr r11, 0x1f
not r11
mov r15, r11
xor r15, rdi
lea rcx, [r11 + r13]
mov rax, r8
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 0x1400210c1
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r15, cl
not r15
imul r15, r9
imul r13, r15, 0xfffffffffea03e86
movabs r8, 0x7f75205f038e18e1
add r8, r13
mov r10, r11
imul r10, rsi
sub r10, r8
xor r10, rbx
mov cl, r8b
xor cl, 0xfe
and cl, 0xf
rol r10, cl
mov rax, r8
sub rax, qword [0x14033a078]
xor r10, rax
movabs rax, 0x6d7eeec9eef87c3a
imul r15, rax
movabs rax, 0x25655a72e206f5c1
sub r15, rax
xor r10, r15
xor r10, r9
xor r10, rdi
mov rax, r10
xor rax, 0xfffffffffffffffe
and eax, 3
movabs r15, 0xaaaaaaaaaaaaaaab
je 0x14002145b
sub rax, 1
je 0x140021335
sub rax, 1
je 0x140021247
cmp rax, 1
jne 0x140021505
mov rbx, r8
imul rbx, r11
movabs rax, 0xe01d237447ffaae1
add rax, r10
xor rbx, rax
ror rbx, 0x36
shr rbx, 0xc
xor rbx, rdi
not rbx
movabs rcx, 0x83573c377d26
mov rdx, qword [0x14033a088]
add rdx, rcx
movabs rax, 0x7ff7a52774a24541
xor rdx, rax
movzx eax, r10b
movzx ecx, bl
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, [0x14033a060]
mov cl, byte [r12 + rcx*8]
and cl, 0xf
movabs r14, 0x344f86f8e6ef6e28
sub r14, rbx
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, rsi
xor r14, rax
jmp 0x140021505
movabs rax, 0xaaaaaa1ab515be0d
mov rcx, r10
xor rcx, rax
movabs rax, 0x1206ed77186241
imul rcx, rax
movabs rdx, 0xfff17ca862778871
mov rax, r9
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 r8, r11
not r8
lea rax, [0x14033a060]
imul r8, qword [rax + rcx*8]
xor r8, 0xffffffffe04068dd
lea ecx, [r10 + 0xf]
and cl, 0x3f
rol r8, cl
movabs rax, 0x284871c200000000
xor r12, rax
movabs rax, 0x7c7a7dc68947626c
and r12, rax
imul r8, r12
mov rcx, r8
ror rcx, 0x3d
not rcx
movabs rax, 0x9b2de6b2a0a7ad28
imul rcx, rax
mov rax, r11
sub rax, r8
lea rdx, [rcx + rax*4]
mov cl, sil
and cl, 0x3f
ror rdx, cl
mov rax, r14
mov r14, rdx
imul r14, rax
jmp 0x140021505
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, rdi
imul rax, rdx
xor rax, rbx
not rax
shl rax, cl
xor r9, rax
mov cl, r8b
and cl, 0x3f
rol r9, 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, [0x14033a060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7e9d1c820
or r9, rax
mov r14, qword [0x14033a070]
imul r14, rbx
sub r14, r8
mov rcx, rsi
sub rcx, r9
xor r14, rcx
movabs rcx, 0xc7a7c6a6b8d9c82d
xor r14, rcx
movabs rax, 0xcccccccccccccccd
mul rdi
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, rdi
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov rdx, r10
imul rdx, r8
imul rdx, r14
shr rdx, cl
mov rax, r11
sub rax, rdx
sub rax, rdi
movabs rdi, 0x7895894778b8437
add rdi, rax
xor rdi, rsi
mov cl, r11b
shl cl, 3
and cl, 0x3f
rol rdi, cl
not rdi
jmp 0x140021505
mov rax, r15
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r10
imul rax, qword [0x14033a080]
lea rdx, [0x14033a060]
mov rdx, qword [rdx + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, 0x3f
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r8
not rsi
imul rsi, r11
movabs rax, 0x7cd8a7de652899cc
imul rsi, rax
mov rax, r9
imul rax, rdi
mov rdi, rsi
xor rdi, rax
imul rsi, qword [0x14033a060], 0xfffffffffea03e86
mov rdx, qword [0x14033a068]
sub rsi, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400214f2
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs rax, 0x7f75205f038e18e1
add rsi, rax
add rsi, r13
movabs rcx, 0xff055d7b95639301
xor rbx, rcx
mov rax, r15
mul rbx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rbx, rax
xor r9, rdi
lea rax, [0x14033a060]
imul r9, qword [rax + rbx*8]
not r8
imul r8, r10
imul r8, rsi
imul r8, r14
movabs rcx, 0xf5ed7e8792d0d9dd
xor rcx, r11
not rcx
xor rcx, r8
sub rcx, r9
call fcn.14001ff0c
mov qword [0x140348998], rax
mov rax, qword [rbp - 0x30]
lea rcx, vtable.proc_api.0
mov rax, qword [rbp + 0x48]
mov qword [rax], rcx
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret