Function at 0x180066e34
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov dword [rax + 0x18], r8d
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x4a8]
sub rsp, 0x568
mov r9, qword [0x1800fb408]
mov ebx, 8
test r9, r9
jne 0x180067020
mov rax, qword gs:[0x60]
xor esi, esi
mov r12d, 0x3cd17866
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov r9, rax
mov eax, dword [r9 + 0x58]
sub ax, bx
test esi, esi
je 0x180066ee5
mov r8, qword [r9 + 0x60]
mov r10d, 0xb7ef12d8
movzx eax, ax
shr rax, 1
lea r11, [r8 + rax*2]
jmp 0x180066ed7
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
add r8, 2
cmp r8, r11
jne 0x180066eb7
cmp r10d, esi
jne 0x180066ff9
mov r10, qword [r9 + 0x30]
movsxd rax, dword [r10 + 0x3c]
mov rax, qword [rax + r10 + 0x88]
mov r11d, eax
add r11, r10
shr rax, 0x20
cmp r11, r10
je 0x180066ff9
mov ebx, dword [r11 + 0x18]
test ebx, ebx
je 0x180066ff4
mov r13d, dword [r11 + 0x20]
dec ebx
mov r14d, 0xb7ef12d8
lea rcx, [rbx*4]
add rcx, r13
mov r8d, dword [rcx + r10]
add r8, r10
jmp 0x180066f52
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, r14d
imul r14d, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180066f34
cmp r14d, r12d
je 0x180066f6b
test ebx, ebx
jne 0x180066f18
jmp 0x180066ff4
mov edx, dword [r11 + 0x24]
add rdx, r10
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r11 + 0x1c]
add rdx, r10
mov r9d, dword [rdx + r8*4]
add r9, r10
cmp r9, r11
jbe 0x180067014
lea rcx, [rax + r11]
cmp r9, rcx
jae 0x180067014
mov esi, 0xb7ef12d8
mov r12d, esi
jmp 0x180066fbd
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r9
mov dl, byte [r9]
cmp dl, 0x2e
jne 0x180066fa1
jmp 0x180066fe2
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc r9
mov dl, byte [r9]
test dl, dl
jne 0x180066fc7
mov rax, qword [rsp + 0x20]
mov r9, qword [rax]
mov ebx, 8
mov rax, qword [r9]
mov r9, rax
cmp rax, qword [rsp + 0x20]
je 0x180067011
cmp qword [rax + 0x30], 0
jne 0x180066e96
xor r9d, r9d
mov qword [0x1800fb408], r9
mov ebx, 8
mov dword [rsp + 0x31], 0xd4c0dcdd
xor edx, edx
mov dword [rsp + 0x35], 0x89c7d1c4
mov word [rsp + 0x39], 0x84
movsxd rcx, edx
lea eax, [rdx - 0x53]
inc edx
xor byte [rsp + rcx + 0x31], al
cmp edx, 9
jb 0x180067039
lea rdx, [rsp + 0x31]
mov byte [rsp + 0x3a], 0
lea rcx, [rsp + 0x60]
call r9
mov r8, qword [0x1800fb400]
test r8, r8
jne 0x180067214
mov rax, qword gs:[0x60]
xor r12d, r12d
mov r13d, 0x104c2c76
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov r11, rax
mov eax, dword [r11 + 0x58]
sub ax, bx
test r12d, r12d
je 0x1800670e1
mov r8, qword [r11 + 0x60]
mov r9d, 0xd8858166
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x1800670d3
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x1800670b3
cmp r9d, r12d
jne 0x1800671f2
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1800671f2
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1800671ed
mov r15d, dword [r10 + 0x20]
dec ebx
mov esi, 0xd8858166
lea rcx, [r15 + rbx*4]
mov r8d, dword [rcx + r9]
add r8, r9
jmp 0x180067144
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, esi
imul esi, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180067128
cmp esi, r13d
je 0x18006715d
test ebx, ebx
jne 0x180067114
jmp 0x1800671ed
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x18006720d
lea rcx, [rax + r10]
cmp r8, rcx
jae 0x18006720d
mov r12d, 0xd8858166
mov r13d, r12d
jmp 0x1800671b6
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x180067198
jmp 0x1800671db
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r13d
imul r13d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x1800671c0
mov rax, qword [rsp + 0x20]
mov r11, qword [rax]
mov ebx, 8
mov rax, qword [r11]
mov r11, rax
cmp rax, qword [rsp + 0x20]
je 0x18006720a
cmp qword [rax + 0x30], 0
jne 0x180067091
xor r8d, r8d
mov qword [0x1800fb400], r8
xor eax, eax
mov dword [rsp + 0x28], 0xd3cadd8b
mov dword [rsp + 0x2c], 0x89c7d7c3
xor edx, edx
mov byte [rsp + 0x30], al
lea ebx, [rax + 8]
movsxd rcx, edx
lea eax, [rdx - 0x53]
inc edx
xor byte [rsp + rcx + 0x28], al
cmp edx, ebx
jb 0x18006722f
lea rdx, [rsp + 0x28]
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x60]
call r8
mov r8, qword [0x1800fb3f8]
test r8, r8
jne 0x18006740e
mov rax, qword gs:[0x60]
xor r12d, r12d
mov r13d, 0x874c2bf2
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov r11, rax
mov eax, dword [r11 + 0x58]
sub ax, bx
test r12d, r12d
je 0x1800672d6
mov r8, qword [r11 + 0x60]
mov r9d, 0xdf50633a
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x1800672c8
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x1800672a8
cmp r9d, r12d
jne 0x1800673e7
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1800673e7
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1800673e2
mov r15d, dword [r10 + 0x20]
dec ebx
mov esi, 0xdf50633a
lea rcx, [r9 + rbx*4]
mov r8d, dword [rcx + r15]
add r8, r9
jmp 0x180067339
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, esi
imul esi, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x18006731d
cmp esi, r13d
je 0x180067352
test ebx, ebx
jne 0x180067309
jmp 0x1800673e2
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x180067402
lea rcx, [r10 + rax]
cmp r8, rcx
jae 0x180067402
mov r12d, 0xdf50633a
mov r13d, r12d
jmp 0x1800673ab
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x18006738d
jmp 0x1800673d0
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r13d
imul r13d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x1800673b5
mov rax, qword [rsp + 0x20]
mov r11, qword [rax]
mov ebx, 8
mov rax, qword [r11]
mov r11, rax
cmp rax, qword [rsp + 0x20]
je 0x1800673ff
cmp qword [rax + 0x30], 0
jne 0x180067286
xor r8d, r8d
mov qword [0x1800fb3f8], r8
mov ebx, 8
movdqa xmm0, xmmword [0x1800a7f20]
xor eax, eax
movdqu xmmword [rsp + 0x3b], xmm0
mov byte [rsp + 0x4f], al
xor edx, edx
mov dword [rsp + 0x4b], 0xb0ddf7d1
movsxd rcx, edx
lea eax, [rdx - 0x53]
inc edx
xor byte [rsp + rcx + 0x3b], al
cmp edx, 0x14
jb 0x18006742c
lea rdx, [rsp + 0x3b]
mov byte [rsp + 0x4f], 0
lea rcx, [rsp + 0x60]
call r8
mov r8, qword [0x1800fb3f0]
test r8, r8
jne 0x180067607
mov rax, qword gs:[0x60]
xor r15d, r15d
mov r13d, 0xed6372d9
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov r11, rax
mov eax, dword [r11 + 0x58]
sub ax, bx
test r15d, r15d
je 0x1800674d4
mov r8, qword [r11 + 0x60]
mov r9d, 0x7bee50c1
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x1800674c6
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x1800674a6
cmp r9d, r15d
jne 0x1800675e5
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1800675e5
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1800675e0
mov r12d, dword [r10 + 0x20]
dec ebx
mov esi, 0x7bee50c1
lea rcx, [r9 + rbx*4]
mov r8d, dword [rcx + r12]
add r8, r9
jmp 0x180067537
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, esi
imul esi, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x18006751b
cmp esi, r13d
je 0x180067550
test ebx, ebx
jne 0x180067507
jmp 0x1800675e0
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x180067600
lea rcx, [rax + r10]
cmp r8, rcx
jae 0x180067600
mov r15d, 0x7bee50c1
mov r13d, r15d
jmp 0x1800675a9
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r15d
imul r15d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x18006758b
jmp 0x1800675ce
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r13d
imul r13d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x1800675b3
mov rax, qword [rsp + 0x20]
mov r11, qword [rax]
mov ebx, 8
mov rax, qword [r11]
mov r11, rax
cmp rax, qword [rsp + 0x20]
je 0x1800675fd
cmp qword [rax + 0x30], 0
jne 0x180067484
xor r8d, r8d
mov qword [0x1800fb3f0], r8
mov dword [rbp + 0x4c8], 0xc9cac58b
xor edx, edx
mov word [rbp + 0x4cc], 0x8c
movsxd rcx, edx
lea eax, [rdx - 0x53]
inc edx
xor byte [rbp + rcx + 0x4c8], al
cmp edx, 5
jb 0x18006761c
lea rdx, [rbp + 0x4c8]
mov byte [rbp + 0x4cd], 0
lea rcx, [rsp + 0x60]
call r8
mov r8, qword [0x1800fb3e8]
test r8, r8
jne 0x1800677fa
mov rax, qword gs:[0x60]
xor esi, esi
mov r13d, 0x6690f013
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x4c8], rax
mov r11, rax
mov eax, dword [r11 + 0x58]
sub ax, 8
test esi, esi
je 0x1800676cc
mov r8, qword [r11 + 0x60]
mov r9d, 0xbc3a3227
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x1800676be
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x18006769e
cmp r9d, esi
jne 0x1800677d6
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x1800677d6
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x1800677d6
mov r12d, dword [r10 + 0x20]
dec ebx
mov r14d, 0xbc3a3227
lea rcx, [r9 + rbx*4]
mov r8d, dword [rcx + r12]
add r8, r9
jmp 0x180067732
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, r14d
imul r14d, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180067714
cmp r14d, r13d
je 0x18006774b
test ebx, ebx
jne 0x1800676ff
jmp 0x1800677d6
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x1800677f3
lea rcx, [rax + r10]
cmp r8, rcx
jae 0x1800677f3
mov esi, 0xbc3a3227
mov r13d, esi
jmp 0x18006779d
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x180067781
jmp 0x1800677c2
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r13d
imul r13d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x1800677a7
mov rax, qword [rbp + 0x4c8]
mov r11, qword [rax]
mov rax, qword [r11]
mov r11, rax
cmp rax, qword [rbp + 0x4c8]
je 0x1800677f0
cmp qword [rax + 0x30], 0
jne 0x18006767c
xor r8d, r8d
mov qword [0x1800fb3e8], r8
mov rdx, qword [rbp + 0x4b0]
lea rcx, [rsp + 0x60]
call r8
xor edx, edx
lea rcx, [rbp + 0x60]
mov r8d, 0x400
call fcn.18006e010
movdqa xmm0, xmmword [0x1800a7ee0]
xor eax, eax
movdqa xmm1, xmmword [0x1800a7ed0]
xor edx, edx
movdqu xmmword [rsp + 0x3b], xmm0
mov byte [rsp + 0x5b], al
movdqu xmmword [rsp + 0x4b], xmm1
movsxd rcx, edx
lea eax, [rdx - 0x53]
inc edx
xor byte [rsp + rcx + 0x3b], al
cmp edx, 0x20
jb 0x18006783e
mov r9d, 0x3ff
mov byte [rsp + 0x5b], 0
lea r8, [rbp + 0x60]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x3b]
call fcn.1800686ac
test eax, eax
je 0x180067dc1
cmp eax, 0xc8
jne 0x180067c10
mov rdx, qword [0x1800fb3e0]
test rdx, rdx
jne 0x180067a46
mov rax, qword gs:[0x60]
xor esi, esi
mov r12d, 0xd5d865b3
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rax, qword [rax]
mov qword [rbp + 0x4c8], rax
mov r11, rax
mov eax, dword [r11 + 0x58]
sub ax, 8
test esi, esi
je 0x180067906
mov r8, qword [r11 + 0x60]
mov r9d, 0x420fb38e
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x1800678f8
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x1800678d8
cmp r9d, esi
jne 0x180067a23
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x180067a23
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x180067a23
mov r13d, dword [r10 + 0x20]
dec ebx
mov r14d, 0x420fb38e
lea rcx, [rbx*4]
add rcx, r13
mov r8d, dword [rcx + r9]
add r8, r9
jmp 0x180067973
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, r14d
imul r14d, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180067955
cmp r14d, r12d
je 0x18006798c
test ebx, ebx
jne 0x180067939
jmp 0x180067a23
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov edx, dword [rdx + r8*4]
add rdx, r9
cmp rdx, r10
jbe 0x180067a3f
lea rcx, [rax + r10]
cmp rdx, rcx
jae 0x180067a3f
mov esi, 0x420fb38e
mov r12d, esi
jmp 0x1800679e5
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc rdx
mov r8b, byte [rdx]
cmp r8b, 0x2e
jne 0x1800679c6
jmp 0x180067a0e
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc rdx
mov r8b, byte [rdx]
test r8b, r8b
jne 0x1800679f0
mov rax, qword [rbp + 0x4c8]
mov r11, qword [rax]
mov rax, qword [r11]
mov r11, rax
cmp rax, qword [rbp + 0x4c8]
je 0x180067a3d
cmp qword [rax + 0x30], 0
jne 0x1800678b6
xor edx, edx
mov qword [0x1800fb3e0], rdx
lea rcx, [rbp + 0x60]
call rdx
cmp eax, dword [rbp + 0x4c0]
jge 0x180067c10
mov r8, qword [0x1800fb3d8]
test r8, r8
jne 0x180067bfb
mov rax, qword gs:[0x60]
xor esi, esi
mov r12d, 0xf09e768
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r11, r13
mov eax, dword [r11 + 0x58]
sub ax, 8
test esi, esi
je 0x180067ad7
mov r8, qword [r11 + 0x60]
mov r9d, 0xbaee603e
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x180067ac9
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x180067aa9
cmp r9d, esi
jne 0x180067bdb
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x180067bdb
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x180067bdb
mov ecx, dword [r10 + 0x20]
dec ebx
mov r14d, 0xbaee603e
lea rcx, [rcx + rbx*4]
mov r8d, dword [rcx + r9]
add r8, r9
jmp 0x180067b3d
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, r14d
imul r14d, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180067b1f
cmp r14d, r12d
je 0x180067b5a
mov ecx, dword [r10 + 0x20]
test ebx, ebx
jne 0x180067b0a
jmp 0x180067bdb
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x180067bf4
lea rcx, [rax + r10]
cmp r8, rcx
jae 0x180067bf4
mov esi, 0xbaee603e
mov r12d, esi
jmp 0x180067ba8
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x180067b8c
jmp 0x180067bcd
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x180067bb2
mov r11, qword [r13]
mov rax, qword [r11]
mov r11, rax
cmp rax, r13
je 0x180067bf1
cmp qword [rax + 0x30], 0
jne 0x180067a87
xor r8d, r8d
mov qword [0x1800fb3d8], r8
mov rcx, qword [rbp + 0x4b8]
lea rdx, [rbp + 0x60]
call r8
mov al, 1
jmp 0x180067dc3
mov r8, qword [0x1800fb3d0]
test r8, r8
jne 0x180067db3
mov rax, qword gs:[0x60]
xor esi, esi
mov r12d, 0xabece461
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov r13, qword [rax]
mov r11, r13
mov eax, dword [r11 + 0x58]
sub ax, 8
test esi, esi
je 0x180067c8f
mov r8, qword [r11 + 0x60]
mov r9d, 0x86a2eb37
movzx eax, ax
shr rax, 1
lea r10, [r8 + rax*2]
jmp 0x180067c81
movsx eax, byte [r8]
mov ecx, eax
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
add r8, 2
cmp r8, r10
jne 0x180067c61
cmp r9d, esi
jne 0x180067d93
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov rax, qword [rax + r9 + 0x88]
mov r10d, eax
add r10, r9
shr rax, 0x20
cmp r10, r9
je 0x180067d93
mov ebx, dword [r10 + 0x18]
test ebx, ebx
je 0x180067d93
mov ecx, dword [r10 + 0x20]
dec ebx
mov r14d, 0x86a2eb37
lea rcx, [rcx + rbx*4]
mov r8d, dword [rcx + r9]
add r8, r9
jmp 0x180067cf5
movsx ecx, dil
sub dil, 0x41
mov edx, ecx
or edx, 0x20
cmp dil, 0x19
cmova edx, ecx
xor edx, r14d
imul r14d, edx, 0x1000193
mov dil, byte [r8]
inc r8
test dil, dil
jne 0x180067cd7
cmp r14d, r12d
je 0x180067d12
mov ecx, dword [r10 + 0x20]
test ebx, ebx
jne 0x180067cc2
jmp 0x180067d93
mov edx, dword [r10 + 0x24]
add rdx, r9
movzx r8d, word [rdx + rbx*2]
mov edx, dword [r10 + 0x1c]
add rdx, r9
mov r8d, dword [rdx + r8*4]
add r8, r9
cmp r8, r10
jbe 0x180067dac
lea rcx, [r10 + rax]
cmp r8, rcx
jae 0x180067dac
mov esi, 0x86a2eb37
mov r12d, esi
jmp 0x180067d60
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
mov dl, byte [r8]
cmp dl, 0x2e
jne 0x180067d44
jmp 0x180067d85
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r12d
imul r12d, ecx, 0x1000193
inc r8
mov dl, byte [r8]
test dl, dl
jne 0x180067d6a
mov r11, qword [r13]
mov rax, qword [r11]
mov r11, rax
cmp rax, r13
je 0x180067da9
cmp qword [rax + 0x30], 0
jne 0x180067c3f
xor r8d, r8d
mov qword [0x1800fb3d0], r8
mov rcx, qword [rbp + 0x4b8]
lea rdx, [rbp + 0x60]
call r8
xor al, al
add rsp, 0x568
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret