Function at 0x14001fee0
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, 0x5872c0342f74a535
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x50], rdx
movabs rax, 0xd416d160df020acf
mov qword [rbp + 0x50], rax
movabs rax, 0x63a50df682e5bddc
sub rax, qword [0x14033e050]
sub rax, qword [0x14033e058]
movabs rcx, 0xf8f8cd97c88720eb
xor rax, rcx
sub rax, qword [0x14033e048]
movabs rcx, 0x7d654b8aed54f83
add rcx, rax
mov rdi, qword [0x14033e040]
add rcx, rdi
movabs rax, 0x5a9179a7a121bf33
xor rcx, rax
movabs rax, 0x5f627dc6e307ed46
sub rcx, rax
movabs rax, 0x5a3b3cd20a0b7a1f
xor rcx, rax
movabs rdx, 0xb483ce441d2eba54
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adab96696
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b525469969
mov r11, qword [0x14033e030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d903bb867eb
add rdx, rax
add rdx, rcx
movabs rax, 0x7e5673003f5eb986
xor rdx, rax
mov qword [rbp + 0x50], rdx
movabs rax, 0xfb192008ab89096c
sub rax, qword [0x14033e050]
sub rax, qword [0x14033e058]
movabs rcx, 0xf8f8cd985208a439
xor rax, rcx
sub rax, qword [0x14033e048]
movabs rcx, 0x47d654b9669d7c8c
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a83b8fc0f1
xor rcx, rax
movabs rax, 0x5f627dc6c5467824
sub rcx, rax
movabs rax, 0xf63b3cd24dc1aeff
xor rcx, rax
movabs rax, 0x3483ce44a0def22b
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ad89bd6c8
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b527642937
xor r11, rax
movabs rax, 0xe0b56d8e1c49099d
add rcx, rax
add rcx, r11
movabs rax, 0x4f1b81c5dd012cf8
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 0x140021454
xor ebx, ebx
mov edi, 0x16a71348
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 0x14002013e
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0x275a0714
jmp 0x140020130
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 0x140020110
cmp r9d, ebx
jne 0x140020246
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov rcx, qword [rcx + r9 + 0x88]
mov r11d, ecx
add r11, r9
shr rcx, 0x20
cmp r11, r9
je 0x140020246
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x140020246
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r9 + rsi*4]
mov r10d, dword [rdx + r12]
add r10, r9
mov r14d, 0x275a0714
jmp 0x1400201a4
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 [r10]
inc r10
test dl, dl
jne 0x140020186
cmp r14d, edi
je 0x1400201bc
test esi, esi
jne 0x140020171
jmp 0x140020246
mov edx, dword [r11 + 0x1c]
add rdx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + rsi*2]
mov r13d, dword [rdx + rax*4]
add r13, r9
cmp r13, r11
jbe 0x14002024e
lea rax, [rcx + r11]
cmp r13, rax
jae 0x14002024e
mov ebx, 0x275a0714
mov edi, ebx
jmp 0x140020209
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 r13
mov al, byte [r13]
cmp al, 0x2e
jne 0x1400201ec
jmp 0x14002022a
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 r13
mov al, byte [r13]
test al, al
jne 0x140020213
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1400200e4
and dword [rbp + 0x58], 0
mov dword [rbp + 0x58], 0x5f1fa358
mov eax, 0x68e9c96
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x315d65b7
sub eax, dword [0x14033e048]
mov rcx, qword [0x14033e040]
add eax, 0xfaf3b061
add eax, ecx
xor eax, 0x16df2fe9
add eax, 0x424af5a1
xor eax, 0xa1ab6391
lea edx, [rcx + 0x1958805]
add edx, eax
not edx
mov eax, dword [0x14033e038]
xor eax, 0xd91c8118
sub edx, eax
mov r12d, dword [0x14033e030]
xor r12d, 0x26e37ee7
add r12d, 0x9d764d33
add r12d, edx
xor r12d, 0xf88a4ca8
mov dword [rbp + 0x58], r12d
and dword [rbp + 0x50], 0
mov dword [rbp + 0x50], 0x6c337d3f
mov eax, 0xb5035b8f
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0x4d5a2548
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx - 0x75cbbbe5]
add ecx, eax
xor ecx, 0x16cbc80a
add ecx, 0x7f29d967
xor ecx, 0x5563c1c7
mov r15d, dword [0x14033e030]
xor r15d, 0x236179f9
sub r15d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xdc9e8606
sub r15d, eax
sub r15d, edx
add r15d, 0x7bc562fe
xor r15d, 0x1dcf31d6
mov dword [rbp + 0x50], r15d
mov rax, qword [rbp + 0x48]
mov r14, qword [rax + 0x10]
and qword [rbp - 0x38], 0
movabs rax, 0x80cd5aa4bbdd7793
mov qword [rbp - 0x38], rax
and qword [rbp + 0x60], 0
movabs rax, 0x532d32c6a41a7b
mov qword [rbp + 0x60], rax
movabs rax, 0x30f396b9fdbaf81d
sub rax, qword [0x14033e050]
sub rax, qword [0x14033e058]
movabs rcx, 0xf8f8cd982f61a093
xor rax, rcx
sub rax, qword [0x14033e048]
movabs rcx, 0x7d654b9384d08e6
add rcx, rax
mov rsi, qword [0x14033e040]
add rcx, rsi
movabs rax, 0x5a9179a814a4ec1b
xor rcx, rax
movabs rax, 0x5f627dc6be7503de
sub rcx, rax
movabs rax, 0xaa3b3cd23cb1594b
xor rcx, rax
movabs rdx, 0xb483ce447faf3e6e
add rdx, rcx
add rdx, rsi
not rdx
movabs rcx, 0x13cce94ad92450ee
mov r10, qword [0x14033e038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b526dbaf11
mov r11, qword [0x14033e030]
mov rcx, r11
xor rcx, rax
movabs rdi, 0xe0b56d8ea54be9c3
add rdi, rdx
add rdi, rcx
movabs rax, 0x40647ac2ce5611ce
xor rdi, rax
mov qword [rbp - 0x38], rdi
movabs rax, 0x4bf9450c46b5c7ff
sub rax, qword [0x14033e050]
sub rax, qword [0x14033e058]
movabs rcx, 0xf8f8cd974b03579d
xor rax, rcx
sub rax, qword [0x14033e048]
movabs rcx, 0xc7d654b80713f13b
add rcx, rax
add rcx, rsi
movabs rax, 0x5a9179a7142b4775
xor rcx, rax
movabs rax, 0x5f627dc6801c37f8
sub rcx, rax
movabs rax, 0xbe3b3cd1cc3ce3b4
xor rcx, rax
movabs r9, 0x3483ce43a4fa5cfc
add r9, rcx
add r9, rsi
not r9
movabs rax, 0x13cce94adca7bc64
xor r10, rax
sub r9, r10
movabs rax, 0xec3316b52358439b
xor r11, rax
movabs rbx, 0xe0b56d922c3ad339
add rbx, r9
add rbx, r11
movabs rax, 0x30bb6b31ee3d3c8c
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 0x140021454
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 [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 0x1400206a6
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 0x140020a41
sub rax, 1
je 0x14002091c
sub rax, 1
je 0x14002082e
cmp rax, 1
jne 0x140020aea
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, r9b
movzx ecx, r14b
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 0x140020aea
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 0x140020aea
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 0x140020aea
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 0x140020ad7
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 + 0x50], r15d
mov dword [rbp + 0x50], 0x8c743d24
mov eax, 0x18897533
sub eax, dword [0x14033e058]
sub eax, dword [0x14033e050]
xor eax, 0xa1d6d27f
sub eax, dword [0x14033e048]
mov rdx, qword [0x14033e040]
lea ecx, [rdx + 0x3b1fd300]
add ecx, eax
xor ecx, 0x75ae72f1
add ecx, 0x27a29ee9
xor ecx, 0xeafe5207
mov r8d, dword [0x14033e030]
xor r8d, 0x24ae39af
sub r8d, ecx
mov eax, dword [0x14033e038]
xor eax, 0xdb51c650
sub r8d, eax
sub r8d, edx
add r8d, 0x5ccd4ec5
xor r8d, 0x2c6e60b0
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.140021474
mov dword [rbp + 0x58], r15d
mov dword [rbp + 0x58], 0x3e66d650
mov qword [rbp - 0x38], r15
movabs rax, 0x31fc2378add3b9ad
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x60], r15
movabs rax, 0x34f8cb24cbcf6787
mov qword [rbp + 0x60], rax
movabs rax, 0x57872739da5fbce4
mov r11, qword [0x14033e050]
sub rax, r11
mov r9, qword [0x14033e058]
sub rax, r9
movabs rcx, 0xf8f8cd97dc5f3009
xor rax, rcx
mov r10, qword [0x14033e048]
sub rax, r10
movabs rcx, 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 + 0x60], r14
movabs rax, 0x2e043bce3df58389
sub rax, r11
sub rax, r9
movabs rcx, 0xf8f8cd97595ae35b
xor rax, rcx
sub rax, r10
movabs rcx, 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 - 0x38], rdi
mov eax, 0xcba9cb35
sub eax, r9d
sub eax, r11d
xor eax, 0x9c012d55
sub eax, r10d
lea ecx, [rbx + 0x7353828f]
add ecx, eax
xor ecx, 0x6f20f877
add ecx, 0x281b2edb
xor ecx, 0x941eced2
xor esi, 0x24973f05
sub esi, ecx
xor r8d, 0xdb68c0fa
sub esi, r8d
sub esi, ebx
sub esi, 0x6c898bb
xor esi, 0xbff4ae2
mov dword [rbp + 0x58], esi
mov eax, dword [0x14035ca24]
test eax, eax
jne 0x140020df6
mov eax, r15d
jmp 0x140020e13
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.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 - 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 [0x14033e078]
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, [0x14033e060]
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 [0x14033e060]
mov rax, r9
imul rax, qword [0x14033e070]
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 0x140020fab
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 [0x14033e078]
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 0x140021345
sub rax, 1
je 0x14002121f
sub rax, 1
je 0x140021131
cmp rax, 1
jne 0x1400213ef
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 [0x14033e088]
add rdx, rcx
movabs rax, 0x7ff7a52774a24541
xor rdx, rax
movzx eax, bl
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, 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 0x1400213ef
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, [0x14033e060]
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 0x1400213ef
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, [0x14033e060]
mov rax, qword [rax + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7e9d1c820
or r9, rax
mov r14, qword [0x14033e070]
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 0x1400213ef
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 [0x14033e080]
lea rdx, [0x14033e060]
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 [0x14033e060], 0xfffffffffea03e86
mov rdx, qword [0x14033e068]
sub rsi, rdx
mov al, dil
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x1400213dc
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, [0x14033e060]
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.14001fde8
mov qword [0x14034c998], 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