Function at 0x1400204a0
Capabilities:
Access peb ldr_data
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
xor r13d, r13d
mov dword [rbp + 0x48], r13d
mov dword [rbp + 0x48], 0x2a99a114
mov eax, 0x6aedaa5c
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x383fdb94
sub eax, dword [0x140301048]
mov r8, qword [0x140301040]
lea ecx, [r8 - 0x1200197a]
add ecx, eax
xor ecx, 0xff1898b6
sub ecx, 0x79c3dee5
xor ecx, 0xe2ff850e
mov edx, dword [0x140301030]
xor edx, 0x230e5d45
sub edx, ecx
mov eax, dword [0x140301038]
xor eax, 0xdcf1a2ba
sub edx, eax
sub edx, r8d
sub edx, 0x1cd74989
xor edx, 0xa96a6e22
mov dword [rbp + 0x48], edx
mov dword [rbp + 0x48], r13d
mov ebx, r13d
mov edi, 0xc8f521a6
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 0x1400205a4
psrldq xmm0, 8
movq r8, xmm0
movzx ecx, cx
shr rcx, 1
lea r10, [r8 + rcx*2]
mov r9d, 0xa64a3062
jmp 0x140020596
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 0x140020576
cmp r9d, ebx
jne 0x1400206ad
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 0x1400206ad
mov esi, dword [r11 + 0x18]
test esi, esi
je 0x1400206ad
mov r12d, dword [r11 + 0x20]
dec esi
lea rdx, [r10 + rsi*4]
mov r9d, dword [rdx + r12]
add r9, r10
mov r14d, 0xa64a3062
jmp 0x14002060a
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 0x1400205ec
cmp r14d, edi
je 0x140020622
test esi, esi
jne 0x1400205d7
jmp 0x1400206ad
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 0x1400206b5
lea rax, [r11 + rcx]
cmp r9, rax
jae 0x1400206b5
mov ebx, 0xa64a3062
mov edi, ebx
jmp 0x14002066f
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 0x140020652
jmp 0x140020692
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 0x140020678
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14002054a
mov dword [rbp + 0x58], r13d
mov dword [rbp + 0x58], 0x19d67c3c
mov eax, 0x9a0cbdf
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x497b391c
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xf156a112
add eax, ecx
xor eax, 0x5176d66e
add eax, 0x7c63444
xor eax, 0xf39b4e87
lea edx, [rcx + 0xdd97ad7]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd4cd46b4
sub edx, eax
mov r8d, dword [0x140301030]
xor r8d, 0x2b32b94b
add r8d, 0x69eca6ca
add r8d, edx
xor r8d, 0xbb63cabc
mov dword [rbp + 0x58], r8d
mov dword [rbp + 0x50], r13d
mov dword [rbp + 0x50], 0x3a26215d
mov eax, 0x4ba17bfe
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x454a5e31
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xd5955517
add eax, ecx
xor eax, 0x2d3ff833
add eax, 0x43ef8cbf
xor eax, 0x9f7b3fc5
lea edx, [rcx - 0x6b554ef0]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd8ce071e
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x2731f8e1
add ecx, 0x4eabd138
add ecx, edx
xor ecx, 0x12b7515e
mov dword [rbp + 0x50], ecx
movsxd rdx, ecx
lea rcx, str.user32.dll
call r9
mov rsi, rax
mov dword [rbp + 0x50], r13d
mov dword [rbp + 0x58], r13d
mov qword [rbp - 0x28], r13
movabs rax, 0x2f7f3c3f6bd8b533
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x30], r13
movabs rax, 0xf5ebdcd8a8274ef0
mov qword [rbp - 0x30], rax
movabs rax, 0x9214156daf2fac06
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xf8f8cd97c558029b
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x7d654b8aa93df9d
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a79d8e4e63
xor rcx, rax
movabs rax, 0x5f627dc6e08aa456
sub rcx, rax
movabs rax, 0xba3b3cd2087a170b
xor rcx, rax
movabs rdx, 0xb483ce441a221860
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94adac5f0e6
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b5253a0f19
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d90484d41bb
add rdx, rax
add rdx, rcx
movabs rax, 0x53bb6e68c88e0076
xor rdx, rax
mov qword [rbp - 0x30], rdx
movabs rax, 0x420db41571a4fe10
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xf8f8cd9743175b79
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x47d654b7fc7d7664
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179a70b45b231
xor rcx, rax
movabs rax, 0x5f627dc67a59d4e4
sub rcx, rax
movabs rax, 0x763b3cd1c85640cd
xor rcx, rax
movabs rax, 0x3483ce439d642d7b
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94adcc6ef88
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b523391077
xor r11, rax
movabs rax, 0xe0b56d924b4ee2dd
add rcx, rax
add rcx, r11
movabs rax, 0x7a0485cbfcb9d838
xor rcx, rax
mov qword [rbp - 0x28], rcx
and rcx, rdx
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], r13
cmp rsi, rcx
jne 0x1400209f8
mov dword [rbp + 0x60], r13d
mov dword [rbp + 0x60], 0x6de34afe
mov eax, 0xe1f08b0e
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0xc5d68b43
sub eax, dword [0x140301048]
mov r8, qword [0x140301040]
lea ecx, [r8 - 0x14c3025d]
add ecx, eax
xor ecx, 0x9e1c69d5
add ecx, 0x1f942a0d
xor ecx, 0x84b86616
mov edx, dword [0x140301030]
xor edx, 0x253c0173
sub edx, ecx
mov eax, dword [0x140301038]
xor eax, 0xdac3fe8c
sub edx, eax
sub edx, r8d
lea eax, [rdx - 0x54420fe9]
xor eax, 0xeed9e4e4
mov dword [rbp + 0x60], eax
mov dword [rbp + 0x60], r13d
jmp 0x14002186a
movabs rax, 0x964000000000000
mov r12, qword [0x140301080]
mov rsi, r12
imul rsi, rax
movabs rax, 0xc37b000000000000
xor rsi, rax
movabs r9, 0xd99f875535cf17c4
mov rcx, rsi
imul rcx, r9
movabs r8, 0xaaaaaaaaaaaaaaab
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea rbx, [0x140301060]
mov rdi, rsi
and rdi, r9
imul rdi, qword [rbx + rcx*8]
movabs rax, 0xc17d86ddf96dcbe4
imul rdi, rax
shr rdi, 3
movabs rax, 0x28434415a2fed4c1
xor rdi, rax
movabs rax, 0xffffff57c9fbb257
mov r9, rsi
imul r9, rax
sub r9, 0x176c9bc
mov r15, qword [0x140301060]
xor r9, r15
xor r9, rdi
mov rax, rdi
imul rax, qword [0x140301070]
movabs rcx, 0xb9de928bc0480d76
imul rax, rcx
not rax
and r9, rax
ror r9, 3
shr r9, 8
movabs r14, 0x266078aaca30e83c
lea rcx, [rsi + r14]
xor rcx, 0xfffffffffec6067b
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x76fe201258df2a28
mov r10, qword [rbx + rcx*8]
imul r10, rax
sub r10, r14
movabs rcx, 0xc4a03522d47c2590
mov rax, rdi
imul rax, rcx
xor r10, rax
shr r10, 0x1f
not r10
mov r11, r10
xor r11, rsi
lea rcx, [r10 + r14]
mov rax, r8
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, r10b
movzx ecx, byte [rbx + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0x67
and ecx, 0x8000003f
jge 0x140020b60
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r11, cl
not r11
imul r11, rdi
imul r14, r11, 0xfffffffffe893644
movabs r8, 0x266078aaca30e83c
add r8, r14
mov rbx, r10
imul rbx, r9
sub rbx, r8
movabs rax, 0xb527ff2e65103ae9
xor rbx, rax
mov cl, r8b
xor cl, 0xf8
and cl, 0xf
rol rbx, cl
movabs rax, 0x371a19a029e9a810
imul r11, rax
movabs rax, 0xa2187966d331f0
add r11, rax
xor rbx, r11
mov rax, r8
sub rax, qword [0x140301078]
xor rbx, rax
xor rbx, rdi
xor rbx, rsi
movabs rax, 0xaaaaaaaaaaaaaaab
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rdx, rdi
sub rdx, rax
mov rax, rbx
imul rax, r12
lea r12, [0x140301060]
mov r11, qword [r12 + rdx*8]
and r11, rax
xor r11, rdi
and dil, 0x3f
mov cl, dil
ror r11, cl
imul r11, r8
not r9
imul r9, r10
movabs rax, 0x7cd8a7de7ba6e79a
imul r9, rax
mov rax, r11
imul rax, rsi
xor r9, rax
imul r8, r15, 0xfffffffffe893644
mov rdx, qword [0x140301068]
sub r8, rdx
mov al, r9b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140020c62
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r8, cl
lea rcx, [r14 + r8]
movabs rax, 0xd99f875535cf17c4
imul rcx, rax
movabs rax, 0xa2187966d331f0
add rcx, rax
movabs rax, 0xd99f875535cf17c3
sub rax, r14
imul rcx, rax
imul rcx, rbx
movabs rax, 0xf5ed7e878c5ea78b
xor r10, rax
not r10
xor rcx, r10
xor r11, r9
imul r11, r15
sub rcx, r11
call fcn.14001ce90
mov qword [0x14030af50], rax
mov edi, r13d
mov esi, 0x4fdcfba6
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 0x140020d3b
psrldq xmm0, 8
movq r9, xmm0
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0xb8dfa006
jmp 0x140020d2d
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 0x140020d07
cmp r10d, edi
jne 0x140020e5a
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 0x140020e5a
mov r14d, dword [rbx + 0x18]
test r14d, r14d
je 0x140020e5a
mov r13d, dword [rbx + 0x20]
dec r14d
lea rdx, [r14*4]
add rdx, r13
mov r11d, dword [rdx + r10]
add r11, r10
mov r15d, 0xb8dfa006
jmp 0x140020dae
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 0x140020d8b
cmp r15d, esi
je 0x140020dca
test r14d, r14d
jne 0x140020d6e
xor r13d, r13d
jmp 0x140020e5a
mov edx, dword [rbx + 0x1c]
add rdx, r10
mov eax, dword [rbx + 0x24]
add rax, r10
movzx eax, word [rax + r14*2]
mov r9d, dword [rdx + rax*4]
add r9, r10
cmp r9, rbx
jbe 0x140020e62
lea rax, [rbx + rcx]
cmp r9, rax
jae 0x140020e62
mov edi, 0xb8dfa006
mov esi, edi
jmp 0x140020e16
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]
cmp al, 0x2e
jne 0x140020df9
inc r9
xor r13d, r13d
jmp 0x140020e42
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 r9
mov al, byte [r9]
test al, al
jne 0x140020e25
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140020cdb
xor r14d, r14d
mov dword [rbp - 0x34], r14d
mov dword [rbp - 0x34], 0x68a99c24
mov eax, 0x9823bda5
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x3eca6222
sub eax, dword [0x140301048]
mov rdx, qword [0x140301040]
lea ecx, [rdx + 0x36bdf7e6]
add ecx, eax
xor ecx, 0x67137b4
sub ecx, 0x7f49e353
xor ecx, 0x2381a54
mov r8d, dword [0x140301030]
xor r8d, 0x23282053
sub r8d, ecx
mov eax, dword [0x140301038]
xor eax, 0xdcd7dfac
sub r8d, eax
sub r8d, edx
add r8d, 0x43482f42
xor r8d, 0xcd304c4
mov dword [rbp - 0x34], r8d
mov dword [rbp - 0x38], r14d
mov dword [rbp - 0x38], 0xa6161357
mov eax, 0xc813b16
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x4a7ef489
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xdc8a62f4
add eax, ecx
xor eax, 0x3318914b
add eax, 0x3efef7a7
xor eax, 0x520b73c6
lea edx, [rcx - 0x6659198a]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd8b986c6
sub edx, eax
mov ecx, dword [0x140301030]
xor ecx, 0x27467939
add ecx, 0x39d6f860
add ecx, edx
xor ecx, 0xf6269816
mov dword [rbp - 0x38], ecx
movsxd rdx, ecx
lea rcx, str.win32u.dll
call r9
mov rsi, rax
mov dword [rbp - 0x38], r14d
mov dword [rbp - 0x34], r14d
mov qword [rbp - 0x18], r14
movabs rax, 0x21c9e97361094165
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x20], r14
movabs rax, 0x5f80c56087a37a45
mov qword [rbp - 0x20], rax
movabs rax, 0xda8f29f5427d8e99
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xf8f8cd98306b46d3
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x7d654b939b015de
add rcx, rax
mov rdi, qword [0x140301040]
add rcx, rdi
movabs rax, 0x5a9179a815cf445b
xor rcx, rax
movabs rax, 0x5f627dc6bd35581e
sub rcx, rax
movabs rax, 0x2a3b3cd23d342977
xor rcx, rax
movabs rdx, 0xb483ce4480ada77e
add rdx, rcx
add rdx, rdi
not rdx
movabs rcx, 0x13cce94ad9203aae
mov r10, qword [0x140301038]
mov rax, r10
xor rax, rcx
sub rdx, rax
movabs rax, 0xec3316b526dfc551
mov r11, qword [0x140301030]
mov rcx, r11
xor rcx, rax
movabs rax, 0xe0b56d8ea1319c03
add rdx, rax
add rdx, rcx
movabs rax, 0xa948c69371ec770e
xor rdx, rax
mov qword [rbp - 0x20], rdx
movabs rax, 0xda7205c77b26e6cb
sub rax, qword [0x140301050]
sub rax, qword [0x140301058]
movabs rcx, 0xf8f8cd9d58a73751
xor rax, rcx
sub rax, qword [0x140301048]
movabs rcx, 0x47d654c01e3b4611
add rcx, rax
add rcx, rdi
movabs rax, 0x5a9179ade088bcc9
xor rcx, rax
movabs rax, 0x5f627dc647b6789c
sub rcx, rax
movabs rax, 0x263b3cd4c752e899
xor rcx, rax
movabs rax, 0x3483ce49710e7141
add rcx, rax
add rcx, rdi
not rcx
movabs rax, 0x13cce94ac4d089b0
xor r10, rax
sub rcx, r10
movabs rax, 0xec3316b53b2f764f
xor r11, rax
movabs rax, 0xe0b56d7a7d32ed05
add rcx, rax
add rcx, r11
movabs rax, 0x6131203fb3219d50
xor rcx, rax
mov qword [rbp - 0x18], rcx
and rcx, rdx
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], r14
cmp rsi, rcx
jne 0x1400211a6
mov dword [rbp + 0x60], r14d
mov dword [rbp + 0x60], 0x8b51abef
mov eax, 0x63e52e03
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0xcb774fab
sub eax, dword [0x140301048]
mov r8, qword [0x140301040]
lea ecx, [r8 - 0xd3d5e52]
add ecx, eax
xor ecx, 0xa46e817d
add ecx, 0x1bafacb5
xor ecx, 0x577ddf6b
mov edx, dword [0x140301030]
xor edx, 0x25522bdb
sub edx, ecx
mov eax, dword [0x140301038]
xor eax, 0xdaadd424
sub edx, eax
sub edx, r8d
lea eax, [rdx - 0x6fe6aa1b]
xor eax, 0x6cde86cc
mov dword [rbp + 0x60], eax
mov dword [rbp + 0x60], r14d
jmp 0x14002186a
movabs rdi, 0x7561227d96f9d066
movabs rax, 0x23d870fcfe200000
movabs r14, 0x8c6e7f1d40439b4b
mov r11, qword [0x140301070]
imul r11, rax
movabs rax, 0x9dcdff99e1300000
xor r11, rax
mov rcx, r11
imul rcx, r14
mov qword [rbp - 0x10], rcx
movabs r10, 0xaaaaaaaaaaaaaaab
mov rax, r10
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r9, r11
and r9, r14
lea r15, [0x140301060]
imul r9, qword [r15 + rcx*8]
movabs rax, 0x7eafa3451aa85b48
imul r9, rax
movabs rax, 0x120284aabd21ddc0
xor r9, rax
shr r9, 3
movabs rax, 0xffffff57cb95ef3f
mov rsi, r11
imul rsi, rax
sub rsi, 0x7f8b834
xor rsi, qword [0x140301060]
xor rsi, r9
mov rax, r9
imul rax, qword [0x140301070]
movabs rcx, 0xb9de928bc226501e
imul rax, rcx
not rax
and rsi, rax
ror rsi, 0x24
shr rsi, 8
movabs r8, 0x739180e2bfbc64b5
lea rcx, [r11 + r8]
xor rcx, 0xfffffffffca85b13
mov rax, r10
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rax, 0x8d3a331efa92c58
mov rbx, qword [r15 + rcx*8]
imul rbx, rax
sub rbx, r8
movabs rcx, 0xf1dd48f61c3f3f88
mov rax, r9
imul rax, rcx
xor rbx, rax
shr rbx, 0x1f
not rbx
mov r12, rbx
xor r12, r11
lea rcx, [rbx + r8]
mov rax, r10
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movzx eax, bl
movzx ecx, byte [r15 + rcx*8]
imul ecx, eax
movzx ecx, cl
xor ecx, 0xf
mov eax, 0x8000003f
and ecx, eax
jge 0x140021317
dec ecx
or ecx, 0xffffffc0
inc ecx
ror r12, cl
not r12
imul r12, r9
imul r13, r12, 0xfffffffff80747cc
lea r10, [r8 + r13]
mov r8, rbx
imul r8, rsi
sub r8, r10
xor r8, rdi
movzx r15d, r10b
mov ecx, r15d
and ecx, 0xf
and ecx, eax
jge 0x14002134e
dec ecx
or ecx, 0xffffffc0
inc ecx
rol r8, cl
mov rax, r10
sub rax, qword [0x140301078]
xor r8, rax
movabs rax, 0x1d190d20dcfe8cc4
imul r12, rax
movabs rax, 0x2ffb787e2775e7f9
sub r12, rax
xor r8, r12
xor r8, r9
xor r8, r11
mov rax, r8
and eax, 3
je 0x1400216d6
sub rax, 1
je 0x140021596
sub rax, 1
je 0x14002149d
cmp rax, 1
jne 0x140021789
mov rdi, r10
imul rdi, rbx
movabs rax, 0x996c7a8f90482d8b
add rax, r8
xor rdi, rax
ror rdi, 0x1c
shr rdi, 0xc
xor rdi, r11
not rdi
movabs rcx, 0x835720d75e1c
mov rdx, qword [0x140301088]
add rdx, rcx
movabs rax, 0x7313059ad4701a2b
xor rdx, rax
movzx eax, dil
movzx ecx, r8b
imul ecx, eax
and cl, 0x3f
ror rdx, cl
shl rdx, 0xf
movabs rax, 0xf7ca7db97837b2e7
sub rax, rbx
mov rbx, rdx
xor rbx, rax
mov rcx, rbx
imul rcx, r14
mov eax, 0xa9ec600d
add rcx, rax
movabs r15, 0xaaaaaaaaaaaaaaab
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
lea r12, [0x140301060]
mov cl, byte [r12 + rcx*8]
and cl, 0xf
movabs r14, 0xf85b74345529d2ec
sub r14, rdi
shr r14, cl
movabs rcx, 0x7399a56b1b247577
add rcx, r13
mov rax, r15
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov rax, r8
imul rax, qword [r12 + rcx*8]
imul rax, r8
sub rax, rsi
xor r14, rax
jmp 0x140021790
movabs rax, 0xaaaaaa1aa9f59d33
mov rcx, r8
xor rcx, rax
movabs rax, 0x1206ed6bf8417f
imul rcx, rax
movabs rdx, 0xfff17ca87e97ab4f
mov rax, r9
xor rax, rdx
sub rcx, rax
movabs rax, 0xffff7e8a8fe5afef
imul r13, rax
movabs rbx, 0x4bf2a68a886fea
add rbx, rcx
add rbx, r13
movabs rax, 0x277cd7be7b254a53
mov rcx, rbx
xor rcx, rax
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
mov r10, rbx
not r10
lea r12, [0x140301060]
imul r10, qword [r12 + rcx*8]
xor r10, 0xfffffffffca04be3
lea ecx, [r8 - 0xf]
and cl, 0x3f
rol r10, cl
movabs rcx, 0xcfa5c7fb6a58bead
mov rax, qword [rbp - 0x10]
xor rax, rcx
movabs rcx, 0x7c7a7dc695a74152
and rax, rcx
imul r10, rax
mov rcx, r10
ror rcx, 8
not rcx
movabs rax, 0x9b2de6b2d32721d0
imul rcx, rax
mov rax, rbx
sub rax, r10
lea rdx, [rcx + rax*4]
mov cl, sil
and cl, 0x3f
ror rdx, cl
mov rax, r14
mov r14, rdx
imul r14, rax
jmp 0x140021790
movabs rax, 0xc9f10defd582dd4b
imul r8, rax
movabs rax, 0xd79435e50d79435f
mul r8
shr rdx, 4
movzx eax, dl
imul edx, eax, 0x13
mov cl, r8b
sub cl, dl
movabs rdx, 0x739180e2bfbc64b4
mov rax, r11
imul rax, rdx
xor rax, rdi
not rax
shl rax, cl
xor r9, rax
and r15d, 0x8000003f
jge 0x1400215f0
dec r15d
or r15d, 0xffffffc0
inc r15d
mov cl, r15b
rol r9, cl
movabs rcx, 0x739180e2bfbc64b5
add rcx, r8
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rcx, rax
movabs rdx, 0xffffff1d40439b4b
lea r12, [0x140301060]
mov rax, qword [r12 + rcx*8]
imul rax, rdx
xor r9, rax
movabs rax, 0xffffc7a7f531eb1e
or r9, rax
mov r14, qword [0x140301070]
imul r14, rdi
sub r14, r10
mov rax, rsi
sub rax, r9
xor r14, rax
movabs rax, 0xc7a7c6a6a439eb13
xor r14, rax
movabs rax, 0xcccccccccccccccd
mul r11
shr rdx, 3
lea rax, [rdx + rdx*4]
add rax, rax
mov rcx, r11
sub rcx, rax
or rcx, 1
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov rdx, r8
imul rdx, r10
imul rdx, r14
shr rdx, cl
mov rax, rbx
sub rax, rdx
sub rax, r11
movabs r11, 0x78958946b6ba709
add r11, rax
xor r11, rsi
movzx eax, bl
imul ecx, eax, 0xf6
and cl, 0x3f
rol r11, cl
not r11
jmp 0x140021790
movabs rax, 0xaaaaaaaaaaaaaaab
mul r9
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
mov rcx, r9
sub rcx, rax
mov rax, r8
imul rax, qword [0x140301080]
lea r12, [0x140301060]
mov rdx, qword [r12 + rcx*8]
and rdx, rax
xor rdx, r9
and r9b, 0x3f
mov cl, r9b
mov r9, rdx
ror r9, cl
imul r9, r10
not rsi
imul rsi, rbx
movabs rax, 0x7cd8a7de79c8baf2
imul rsi, rax
mov rax, r9
imul rax, r11
mov r11, rsi
xor r11, rax
imul rsi, qword [0x140301060], 0xfffffffff80747cc
mov rdx, qword [0x140301068]
sub rsi, rdx
mov al, r11b
not al
movzx ecx, al
movzx eax, dl
xor ecx, eax
and ecx, 0x8000003f
jge 0x140021774
dec ecx
or ecx, 0xffffffc0
inc ecx
ror rsi, cl
movabs rax, 0x739180e2bfbc64b5
add rsi, rax
add rsi, r13
jmp 0x140021790
lea r12, [0x140301060]
movabs rcx, 0xff055d7b8983b03f
xor rdi, rcx
movabs rax, 0xaaaaaaaaaaaaaaab
mul rdi
shr rdx, 2
lea rax, [rdx + rdx*2]
add rax, rax
sub rdi, rax
xor r9, r11
imul r9, qword [r12 + rdi*8]
not r10
imul r10, r8
imul r10, rsi
imul r10, r14
movabs rcx, 0xf5ed7e878e30fae3
xor rcx, rbx
not rcx
xor rcx, r10
sub rcx, r9
call fcn.14001ceb4
mov qword [0x14030af70], rax
and dword [rbp + 0x60], 0
mov dword [rbp + 0x60], 0x75d02796
mov eax, 0x3275302d
sub eax, dword [0x140301058]
sub eax, dword [0x140301050]
xor eax, 0x530dc373
sub eax, dword [0x140301048]
mov rcx, qword [0x140301040]
add eax, 0xa7fa7c6d
add eax, ecx
xor eax, 0x3cb50385
add eax, 0x38f53c9d
xor eax, 0x2a42446f
lea edx, [rcx + 0x21d9053c]
add edx, eax
not edx
mov eax, dword [0x140301038]
xor eax, 0xd897d25c
sub edx, eax
mov eax, dword [0x140301030]
xor eax, 0x27682da3
add eax, 0x1840a1f6
add eax, edx
xor eax, 0x12051c94
mov dword [rbp + 0x60], eax
and dword [rbp + 0x60], 0
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret