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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r15
lea rbp, [rsp - 0x1970]
mov eax, 0x1a70
call fcn.14008b9d0
sub rsp, rax
mov rax, qword [0x1400ae080]
xor rax, rsp
mov qword [rbp + 0x1920], rax
mov rax, qword gs:[0x60]
mov rsi, rcx
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001cf17
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001cf17
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x27d3a8f3
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001cf12
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001cef0
cmp r8d, 0x93d7fef0
je 0x14001cf1c
test r9d, r9d
jne 0x14001ced0
mov rax, qword [rax]
jmp 0x14001cea0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor edx, edx
add rax, r10
lea rcx, [rbp - 0x70]
lea r8d, [rdx + 0x18]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001cfc7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001cfc7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x588f018a
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001cfc2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001cfa0
cmp r8d, 0x1e4f4c4d
je 0x14001cfcc
test r9d, r9d
jne 0x14001cf80
mov rax, qword [rax]
jmp 0x14001cf50
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor edx, edx
add rax, r10
lea rcx, [rbp + 0x490]
lea r8d, [rdx + 0x68]
call rax
mov r12, qword [rsi]
xor r15d, r15d
mov word [rbp + 0x480], r15w
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d097
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d097
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xfe4cd102
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d092
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d070
cmp r8d, 0xf4377390
je 0x14001d09c
test r9d, r9d
jne 0x14001d050
mov rax, qword [rax]
jmp 0x14001d020
mov ecx, dword [rdi + 0x24]
mov r8d, 0x208
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0x500]
add rax, r10
xor ecx, ecx
call rax
test eax, eax
je 0x14001e3e9
mov rax, qword gs:[0x60]
mov qword [rsp + 0x1aa8], r13
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d167
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d167
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf8aa32b
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d162
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d140
cmp r8d, 0x11c1ca8
je 0x14001d16c
test r9d, r9d
jne 0x14001d120
mov rax, qword [rax]
jmp 0x14001d0f0
mov ecx, dword [rdi + 0x24]
mov r8d, 0x1208
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
xor edx, edx
add rax, r10
lea rcx, [rbp + 0x710]
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d227
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d227
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x2218f21c
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d222
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d200
cmp r8d, 0xbf814d7e
je 0x14001d22c
test r9d, r9d
jne 0x14001d1e0
mov rax, qword [rax]
jmp 0x14001d1b0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rcx, [rbp + 0x500]
add rax, r10
call rax
mov rcx, qword gs:[0x60]
mov rsi, rax
mov rcx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
mov r10, qword [rcx + 0x30]
movsxd rdx, dword [r10 + 0x3c]
mov edi, dword [rdx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d2d7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d2d7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xfdf44c3a
lea rax, [r10 + r9*4]
mov edx, dword [rax + rbx]
add rdx, r10
movzx eax, byte [rdx]
inc rdx
test al, al
je 0x14001d2d2
nop dword [rax]
movsx eax, al
lea rdx, [rdx + 1]
xor eax, r8d
imul r8d, eax, 0x1000193
movzx eax, byte [rdx - 1]
test al, al
jne 0x14001d2b0
cmp r8d, 0xd29158f7
je 0x14001d2dc
test r9d, r9d
jne 0x14001d290
mov rcx, qword [rcx]
jmp 0x14001d260
mov ecx, dword [rdi + 0x24]
add rsi, rsi
add rcx, r10
mov r8, rsi
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0x500]
add rax, r10
lea rcx, [rbp + 0x710]
call rax
mov eax, reloc.WLDAP32.dll_Ordinal_32
mov word [rbp + rsi + 0x710], ax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d3a7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d3a7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xe73d0271
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d3a2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d380
cmp r8d, 0xc534a1c8
je 0x14001d3ac
test r9d, r9d
jne 0x14001d360
mov rax, qword [rax]
jmp 0x14001d330
mov ecx, dword [rdi + 0x24]
mov r8d, 2
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rcx, [rbp + 0x712]
add rcx, rsi
lea rdx, [rbp + 0x480]
add rax, r10
call rax
movsxd r13, dword [r12 + 0x3c]
add r13, r12
cmp dword [r13], 0x4550
jne 0x14001e3e1
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d487
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d487
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x92162d09
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d482
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d460
cmp r8d, 0x2cc25a83
je 0x14001d48c
test r9d, r9d
jne 0x14001d440
mov rax, qword [rax]
jmp 0x14001d410
mov ecx, dword [rdi + 0x24]
movups xmm0, xmmword [str.v_fkoPT_SJMc]
add rcx, r10
movups xmm1, xmmword [0x14009fdc0]
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov r11d, dword [rcx + rdx*4]
add r11, r10
movups xmmword [rsp + 0x50], xmm0
cmp dword [reloc.WS2_32.dll_accept], 2
movups xmm0, xmmword [0x14009fdd0]
movups xmmword [rsp + 0x60], xmm1
movups xmm1, xmmword [0x14009fde0]
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm1
jl 0x14001d653
movdqa xmm5, xmmword [0x1400a0020]
lea rcx, [rsp + 0x50]
movdqa xmm4, xmmword [0x1400a0120]
mov eax, 5
movaps xmmword [rsp + 0x1a60], xmm6
mov edx, r15d
movaps xmmword [rsp + 0x1a50], xmm7
movdqa xmm7, xmmword [0x1400a0060]
movaps xmmword [rsp + 0x1a40], xmm8
movd xmm6, eax
mov eax, Ordinal_33
movaps xmmword [rsp + 0x1a30], xmm9
movdqa xmm9, xmmword [0x1400a0070]
movd xmm8, eax
nop
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm5
add edx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm5
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp edx, 0x20
jl 0x14001d540
movaps xmm9, xmmword [rsp + 0x1a30]
movaps xmm8, xmmword [rsp + 0x1a40]
movaps xmm7, xmmword [rsp + 0x1a50]
movaps xmm6, xmmword [rsp + 0x1a60]
jmp 0x14001d698
lea r9, [rsp + 0x50]
mov r8d, r15d
nop dword [rax + rax]
mov eax, 0x8fb823ef
lea r9, [r9 + 2]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x39
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x35
xor word [r9 - 2], ax
cmp r8d, 0x20
jl 0x14001d660
lea rax, [rbp - 0x70]
xor r9d, r9d
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x50]
lea rax, [rbp + 0x490]
xor r8d, r8d
mov qword [rsp + 0x40], rax
xor edx, edx
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], r15d
call r11
test eax, eax
je 0x14001e3e1
xor edx, edx
lea rcx, [rbp - 0x50]
mov r8d, 0x4d0
call sub.VCRUNTIME140.dll_memset
mov dword [rbp - 0x20], 0x10000b
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d787
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d787
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x5653c159
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d782
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d760
cmp r8d, 0x65c1531a
je 0x14001d78c
test r9d, r9d
jne 0x14001d740
mov rax, qword [rax]
jmp 0x14001d710
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp - 0x50]
mov rcx, qword [rbp - 0x68]
add rax, r10
call rax
mov rcx, qword gs:[0x60]
test eax, eax
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
jne 0x14001d880
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d847
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d847
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf8bc8f21
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d842
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d820
cmp r8d, 0x68ca3a65
je 0x14001d84c
test r9d, r9d
jne 0x14001d800
mov rax, qword [rax]
jmp 0x14001d7d0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffffc
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3e1
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d8f7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d8f7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x469c8295
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d8f2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d8d0
cmp r8d, 0xb535214c
je 0x14001d8fc
test r9d, r9d
jne 0x14001d8b0
mov rax, qword [rax]
jmp 0x14001d880
mov ecx, dword [rdi + 0x24]
mov r8d, dword [r13 + 0x50]
add rcx, r10
mov dword [rsp + 0x20], 0x40
movzx edx, word [rcx + r9*2]
mov r9d, 0x3000
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rdx, qword [r13 + 0x30]
add rax, r10
mov rcx, qword [rbp - 0x70]
call rax
mov qword [rbp - 0x58], rax
test rax, rax
mov rcx, qword gs:[0x60]
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
jne 0x14001da00
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001d9c7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001d9c7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x2bd2ac2b
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001d9c2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001d9a0
cmp r8d, 0xf107ec03
je 0x14001d9cc
test r9d, r9d
jne 0x14001d980
mov rax, qword [rax]
jmp 0x14001d950
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffffb
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3e1
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001da77
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001da77
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xed872766
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001da72
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001da50
cmp r8d, 0xa23a0289
je 0x14001da7c
test r9d, r9d
jne 0x14001da30
mov rax, qword [rax]
jmp 0x14001da00
mov ecx, dword [rdi + 0x24]
mov r8, r12
add rcx, r10
mov qword [rsp + 0x20], r15
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
mov r9d, dword [r13 + 0x54]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rdx, qword [rbp - 0x58]
add rax, r10
mov rcx, qword [rbp - 0x70]
call rax
test eax, eax
jne 0x14001db73
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001db47
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001db47
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x2021f1ac
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001db42
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001db20
cmp r8d, 0xcc0805b8
je 0x14001db4c
test r9d, r9d
jne 0x14001db00
mov rax, qword [rax]
jmp 0x14001dad0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffffa
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3e1
mov qword [rsp + 0x1ab0], r14
mov r14d, r15d
cmp r15w, word [r13 + 6]
jae 0x14001dc91
nop dword [rax]
mov rax, qword gs:[0x60]
movsxd rsi, dword [r12 + 0x3c]
add rsi, r12
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001dc27
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001dc27
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xeb1cf70c
lea rcx, [rbx + r9*4]
mov ecx, dword [rcx + r10]
add rcx, r10
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x14001dc22
nop
movsx edx, dl
lea rcx, [rcx + 1]
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx - 1]
test dl, dl
jne 0x14001dc00
cmp r8d, 0xe39e7253
je 0x14001dc2c
test r9d, r9d
jne 0x14001dbe0
mov rax, qword [rax]
jmp 0x14001dbb0
mov ecx, dword [rdi + 0x24]
mov r8d, dword [rsi + r15 + 0x11c]
add rcx, r10
add r8, r12
mov qword [rsp + 0x20], 0
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
mov r9d, dword [rsi + r15 + 0x118]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, dword [rsi + r15 + 0x114]
add rax, r10
add rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x70]
call rax
test eax, eax
je 0x14001dd30
movzx eax, word [r13 + 6]
inc r14d
add r15, 0x28
cmp r14d, eax
jl 0x14001db90
xor r15d, r15d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001dd2b
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001dd2b
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xa184be5a
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001dd26
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001dd00
cmp r8d, 0xbbc24385
je 0x14001ddf3
test r9d, r9d
jne 0x14001dce0
mov rax, qword [rax]
jmp 0x14001dcb0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001ddc7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001ddc7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf0a6637c
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001ddc2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001dda0
cmp r8d, 0x7739ece8
je 0x14001ddcc
test r9d, r9d
jne 0x14001dd80
mov rax, qword [rax]
jmp 0x14001dd50
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffff9
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3d9
mov ecx, dword [rdi + 0x24]
lea r8, [rbp - 0x58]
add rcx, r10
mov qword [rsp + 0x20], r15
movzx edx, word [rcx + r9*2]
mov r9d, 8
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rdx, qword [rbp + 0x38]
add rax, r10
mov rcx, qword [rbp - 0x70]
add rdx, 0x10
call rax
test eax, eax
jne 0x14001dee3
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001deb7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001deb7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xf0528de9
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001deb2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001de90
cmp r8d, 0xf24918ad
je 0x14001debc
test r9d, r9d
jne 0x14001de70
mov rax, qword [rax]
jmp 0x14001de40
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffff8
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3d9
mov eax, dword [r13 + 0x28]
add rax, qword [rbp - 0x58]
mov qword [rbp + 0x30], rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001df77
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001df77
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xeeca0db5
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001df72
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001df50
cmp r8d, 0xede6ad22
je 0x14001df7c
test r9d, r9d
jne 0x14001df30
mov rax, qword [rax]
jmp 0x14001df00
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp - 0x50]
mov rcx, qword [rbp - 0x68]
add rax, r10
call rax
mov rcx, qword gs:[0x60]
test eax, eax
mov rax, qword [rcx + 0x18]
mov rax, qword [rax + 0x10]
jne 0x14001e070
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e037
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e037
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xc0a0dae7
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e032
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e010
cmp r8d, 0x4a6814cf
je 0x14001e03c
test r9d, r9d
jne 0x14001dff0
mov rax, qword [rax]
jmp 0x14001dfc0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffff7
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3d9
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e0e7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e0e7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x51f057db
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e0e2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e0c0
cmp r8d, 0xb88a8350
je 0x14001e0ec
test r9d, r9d
jne 0x14001e0a0
mov rax, qword [rax]
jmp 0x14001e070
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rcx, qword [rbp - 0x68]
add rax, r10
call rax
test eax, eax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
jne 0x14001e1e0
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e1a7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e1a7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xad8309bf
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e1a2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e180
cmp r8d, 0xfe4ec187
je 0x14001e1ac
test r9d, r9d
jne 0x14001e160
mov rax, qword [rax]
jmp 0x14001e130
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffff6
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
jmp 0x14001e3d9
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e257
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e257
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x3661fcd1
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e252
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e230
cmp r8d, 0x346fc614
je 0x14001e25c
test r9d, r9d
jne 0x14001e210
mov rax, qword [rax]
jmp 0x14001e1e0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov ecx, 0xdac
add rax, r10
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e307
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e307
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xec4c37ff
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e302
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e2e0
cmp r8d, 0x69ddb173
je 0x14001e30c
test r9d, r9d
jne 0x14001e2c0
mov rax, qword [rax]
jmp 0x14001e290
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rcx, qword [rbp - 0x68]
add rax, r10
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14001e3b7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14001e3b7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x8742a026
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14001e3b2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14001e390
cmp r8d, 0x54ec03fc
je 0x14001e3bc
test r9d, r9d
jne 0x14001e370
mov rax, qword [rax]
jmp 0x14001e340
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rcx, qword [rbp - 0x70]
add rax, r10
call rax
mov r14, qword [rsp + 0x1ab0]
mov r13, qword [rsp + 0x1aa8]
mov rcx, qword [rbp + 0x1920]
xor rcx, rsp
call fcn.14008b0f0
mov rbx, qword [rsp + 0x1ab8]
add rsp, 0x1a70
pop r15
pop r12
pop rdi
pop rsi
pop rbp
ret