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

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1080
call fcn.140049ae0
sub rsp, rax
mov rax, qword [0x140090040]
xor rax, rsp
mov qword [rsp + 0x1070], rax
mov r15, r8
mov r12, rcx
mov qword [rsp + 0x38], rcx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x140032049
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x140032049
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
mov r9d, 0x811c9dc5
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x140032044
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x140032010
cmp r9d, 0x484ace07
je 0x140032106
test r10d, r10d
jne 0x140031ff0
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x14003205f
cmp qword [rax + 0x30], 0
jne 0x140031fc0
xor ebx, ebx
mov r10d, ebx
mov eax, dword [0x140083c6c]
mov dword [rsp + 0x30], eax
cmp byte [str.7ZECVXW], 0
je 0x140032160
cmp dword [0x140090090], 2
jl 0x140032125
movdqa xmm3, xmmword [0x140084890]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140084990]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140084990]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1400848b0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140084950]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140084970]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x140032160
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
xor ebx, ebx
jmp 0x140032064
lea r9, [rsp + 0x30]
mov r8d, ebx
nop dword [rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140032130
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
lea rcx, [rsp + 0x30]
call r10
mov r13, rax
test rax, rax
jne 0x14003219d
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov qword [r12 + 0x10], rbx
mov qword [r12 + 0x18], 0xf
mov byte [r12], al
jmp 0x1400326fb
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop dword [rax]
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x140032249
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x140032249
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
mov r9d, 0x811c9dc5
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x140032244
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x140032210
cmp r9d, 0x51f7bdbc
je 0x140032393
test r10d, r10d
jne 0x1400321f0
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x14003225f
cmp qword [rax + 0x30], 0
jne 0x1400321c0
xor r10d, r10d
mov r9d, dword [r15 + 0x10]
cmp qword [r15 + 0x18], 0xf
jbe 0x140032270
mov r15, qword [r15]
lea rdx, [0x140093118]
cmp qword [0x140093130], 0xf
cmova rdx, qword [0x140093118]
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0x80000000
mov r8, r15
mov rcx, r13
call r10
mov r15, rax
test rax, rax
jne 0x1400323c9
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop dword [rax]
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x140032355
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x140032355
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
mov r9d, 0x811c9dc5
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x140032350
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x140032320
cmp r9d, 0x3915b706
je 0x1400323b0
test r10d, r10d
jne 0x140032300
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x14003236b
cmp qword [rax + 0x30], 0
jne 0x1400322d0
xor eax, eax
mov rcx, r13
call rax
xorps xmm0, xmm0
movups xmmword [r12], xmm0
xor eax, eax
mov qword [r12 + 0x10], rax
mov qword [r12 + 0x18], 0xf
mov byte [r12], al
jmp 0x1400326fb
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
jmp 0x140032262
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx edx, word [rcx + r10*2]
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rcx + rdx*4]
add rax, r11
jmp 0x14003236d
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
nop dword [rax + rax]
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop dword [rax]
nop dword [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x140032497
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x140032497
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [rdi + r10*4]
mov r8d, dword [rax + r11]
add r8, r11
mov r9d, 0x811c9dc5
movzx eax, byte [r8]
inc r8
test al, al
je 0x140032492
nop
movsx ecx, al
sub al, 0x41
mov edx, ecx
or edx, 0x20
cmp al, 0x19
cmova edx, ecx
xor edx, r9d
imul r9d, edx, 0x1000193
movzx eax, byte [r8]
lea r8, [r8 + 1]
test al, al
jne 0x140032460
cmp r9d, 0xcf278366
je 0x140032525
test r10d, r10d
jne 0x140032440
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x1400324ad
cmp qword [rax + 0x30], 0
jne 0x140032410
xor r10d, r10d
lea r9, [rsp + 0x40]
mov r8d, 0x1000
lea rdx, [rsp + 0x70]
mov rcx, r15
call r10
test eax, eax
je 0x140032561
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x140032561
mov edi, eax
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rdi, rax
ja 0x140032542
lea rax, [rcx + rdi]
mov qword [rsp + 0x58], rax
lea rbx, [rsp + 0x48]
cmp rdx, 0xf
cmova rbx, qword [rsp + 0x48]
add rbx, rcx
mov r8d, edi
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.14006eff0
mov byte [rdi + rbx], 0
jmp 0x1400323f0
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
jmp 0x1400324b0
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x70]
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x48]
call fcn.140005760
jmp 0x1400323f0
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x140032609
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x140032609
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [r11 + r10*4]
mov r8d, dword [rax + rdi]
add r8, r11
mov r9d, 0x811c9dc5
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x140032604
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x1400325d0
cmp r9d, 0x3915b706
je 0x140032729
test r10d, r10d
jne 0x1400325b0
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x14003261f
cmp qword [rax + 0x30], 0
jne 0x140032580
xor edx, edx
mov rcx, r15
call rdx
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x18]
mov rbp, qword [rcx + 0x10]
mov r14, rbp
nop word [rax + rax]
mov r11, qword [r14 + 0x30]
movsxd rax, dword [r11 + 0x3c]
mov esi, dword [rax + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x1400326c9
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x1400326c9
mov edi, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r10d
lea rax, [r11 + r10*4]
mov r8d, dword [rax + rdi]
add r8, r11
mov r9d, 0x811c9dc5
movzx edx, byte [r8]
inc r8
test dl, dl
je 0x1400326c4
nop
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r9d
imul r9d, ecx, 0x1000193
movzx edx, byte [r8]
lea r8, [r8 + 1]
test dl, dl
jne 0x140032690
cmp r9d, 0x3915b706
je 0x140032745
test r10d, r10d
jne 0x140032670
mov rax, qword [r14]
mov r14, rax
cmp rax, rbp
je 0x1400326df
cmp qword [rax + 0x30], 0
jne 0x140032640
xor edx, edx
mov rcx, r13
call rdx
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [r12], xmm0
movups xmm1, xmmword [rsp + 0x58]
movups xmmword [r12 + 0x10], xmm1
mov rax, r12
mov rcx, qword [rsp + 0x1070]
xor rcx, rsp
call fcn.140049190
mov rbx, qword [rsp + 0x10c8]
add rsp, 0x1080
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r11
jmp 0x140032621
mov ecx, dword [rsi + 0x1c]
add rcx, r11
mov eax, dword [rsi + 0x24]
add rax, r11
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r11
jmp 0x1400326e1