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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x260]
sub rsp, 0x360
mov rsi, rdx
movabs rax, 0x51dc3191e737b52d
mov qword [rsp + 0x70], rax
movabs rcx, 0x3b1b0550f00f3046
mov qword [rsp + 0x78], rcx
movabs rax, 0x518031aee708b571
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rcx
movdqa xmm0, xmmword [rsp + 0x70]
pxor xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp + 0x40]
call fcn.14007b770
lea rax, [rbp + 0x40]
mov qword [rbp + 0x250], rax
lea rax, [rsp + 0x60]
mov rbx, 0xffffffffffffffff
mov rdi, rbx
inc rdi
cmp word [rax + rdi*2], 0
jne 0x14003aed6
add rdi, rdi
mov r8, rdi
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x40]
call fcn.14007b0c0
mov rcx, qword [rbp + 0x250]
add rcx, rdi
mov qword [rbp + 0x250], rcx
mov rdi, rbx
nop dword [rax + rax]
inc rdi
cmp word [rsi + rdi*2], 0
jne 0x14003af10
add rdi, rdi
mov r8, rdi
mov rdx, rsi
call fcn.14007b0c0
add qword [rbp + 0x250], rdi
xor esi, esi
mov qword [rbp + 0x2a8], rsi
lea rax, [rbp + 0x40]
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x14003af40
add bx, bx
mov word [rsp + 0x62], bx
mov word [rsp + 0x60], bx
lea rax, [rbp + 0x40]
mov qword [rsp + 0x68], rax
movaps xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x70], xmm0
mov dword [rbp - 0x68], 0x30
mov qword [rbp - 0x60], rsi
lea rax, [rsp + 0x70]
mov qword [rbp - 0x58], rax
mov dword [rbp - 0x50], 0x40
xorps xmm2, xmm2
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rbp - 0x10], xmm1
movups xmmword [rbp], xmm2
mov qword [rbp + 0x2b8], rsi
mov r15d, esi
mov edi, 0x6f2df779
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x60], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b023
mov r9, qword [rsp + 0x68]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b01a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003aff0
cmp r10d, r15d
jne 0x14003b168
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b174
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b168
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b168
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003b0ad
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003b082
cmp r10d, edi
je 0x14003b0bf
test r11d, r11d
jne 0x14003b062
mov rax, qword [rax]
jmp 0x14003afc0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b170
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b170
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b127
nop
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 r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b100
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b157
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b132
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003afc0
xor esi, esi
jmp 0x14003b179
xor esi, esi
mov r10d, esi
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x40], 0x60
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], 0x80
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x10]
lea r8, [rbp - 0x20]
mov edx, 0x80100000
lea rcx, [rbp + 0x2b8]
call r10
test eax, eax
js 0x14003b1d2
mov rbx, qword [rbp + 0x2b8]
mov qword [rbp + 0x2a8], rbx
jmp 0x14003b1d9
mov rbx, qword [rbp + 0x2a8]
test eax, eax
js 0x14003b877
mov r15d, esi
mov edi, 0x4245c933
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b263
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b25a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b230
cmp r10d, r15d
jne 0x14003b3a8
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b3b4
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b3a8
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b3a8
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [r12 + r11*4]
mov r8d, dword [rcx + rbx]
add r8, rbx
mov r10d, 0x811c9dc5
movzx r9d, byte [r8]
inc r8
test r9b, r9b
je 0x14003b2ed
movsx ecx, r9b
sub r9b, 0x41
mov edx, ecx
or edx, 0x20
cmp r9b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r9d, byte [r8]
lea r8, [r8 + 1]
test r9b, r9b
jne 0x14003b2c2
cmp r10d, edi
je 0x14003b2ff
test r11d, r11d
jne 0x14003b2a2
mov rax, qword [rax]
jmp 0x14003b200
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b3b0
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b3b0
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b367
nop
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 r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b340
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b397
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b372
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b200
xor esi, esi
jmp 0x14003b3b9
xor esi, esi
mov r10d, esi
mov dword [rsp + 0x20], 5
mov r9d, 0x18
lea r8, [rbp - 0x38]
lea rdx, [rbp + 0x20]
mov rbx, qword [rbp + 0x2a8]
mov rcx, rbx
call r10
mov rcx, rsi
test eax, eax
cmovns rcx, qword [rbp - 0x30]
mov qword [rsp + 0x60], rcx
js 0x14003b877
test rcx, rcx
je 0x14003b877
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rsi
mov rdx, rcx
lea rcx, [rbp - 0x80]
call fcn.14001c930
nop
xor eax, eax
mov qword [rbp + 0x2b8], rax
mov r15d, esi
mov edi, 0x5256b4fd
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x14003b4a3
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b49a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b470
cmp r10d, r15d
jne 0x14003b5e8
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003b5f4
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b5e8
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b5e8
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r8d, dword [rcx + r12]
add r8, rbx
mov r10d, 0x811c9dc5
movzx r9d, byte [r8]
inc r8
test r9b, r9b
je 0x14003b52d
movsx ecx, r9b
sub r9b, 0x41
mov edx, ecx
or edx, 0x20
cmp r9b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r9d, byte [r8]
lea r8, [r8 + 1]
test r9b, r9b
jne 0x14003b502
cmp r10d, edi
je 0x14003b53f
test r11d, r11d
jne 0x14003b4e2
mov rax, qword [rax]
jmp 0x14003b440
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov r10d, dword [rcx + rax*4]
add r10, rbx
cmp r10, rsi
jbe 0x14003b5f0
lea rax, [rsi + r13]
cmp r10, rax
jae 0x14003b5f0
mov edi, 0x811c9dc5
mov r15d, edi
movzx edx, byte [r10]
cmp dl, 0x2e
je 0x14003b5a7
nop
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 r10
movzx edx, byte [r10]
cmp dl, 0x2e
jne 0x14003b580
inc r10
movzx edx, byte [r10]
test dl, dl
je 0x14003b5d7
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea r10, [r10 + 1]
movzx edx, byte [r10]
test dl, dl
jne 0x14003b5b2
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b440
xor esi, esi
jmp 0x14003b5f9
xor esi, esi
mov r10d, esi
mov qword [rsp + 0x40], rsi
lea rax, [rbp + 0x2b8]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x60]
mov dword [rsp + 0x30], eax
mov rdi, qword [rbp - 0x80]
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rbx, qword [rbp + 0x2a8]
mov rcx, rbx
call r10
nop
test eax, eax
js 0x14003b842
mov rcx, qword [rbp + 0x2a0]
mov qword [rcx], rdi
mov rax, qword [rbp - 0x78]
mov qword [rcx + 8], rax
mov rax, qword [rbp - 0x70]
mov qword [rcx + 0x10], rax
test rbx, rbx
je 0x14003ba84
mov r14d, esi
mov edi, 0xe049c205
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r14d, r14d
je 0x14003b6e3
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b6da
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b6b0
cmp r10d, r14d
jne 0x14003b83a
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003ba72
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003b83a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003b83a
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003b76d
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003b742
cmp r10d, edi
je 0x14003b77f
test r11d, r11d
jne 0x14003b722
mov rax, qword [rax]
jmp 0x14003b680
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov edx, dword [rcx + rax*4]
add rdx, rbx
cmp rdx, rsi
jbe 0x14003ba74
lea rax, [rsi + r13]
cmp rdx, rax
jae 0x14003ba74
mov edi, 0x811c9dc5
mov r14d, edi
movzx r8d, byte [rdx]
cmp r8b, 0x2e
je 0x14003b7eb
nop
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, r14d
imul r14d, ecx, 0x1000193
inc rdx
movzx r8d, byte [rdx]
cmp r8b, 0x2e
jne 0x14003b7c0
inc rdx
movzx r8d, byte [rdx]
test r8b, r8b
je 0x14003b829
nop word [rax + rax]
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea rdx, [rdx + 1]
movzx r8d, byte [rdx]
test r8b, r8b
jne 0x14003b800
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b680
test rdi, rdi
je 0x14003b877
mov rax, qword [rbp - 0x70]
sub rax, rdi
mov rcx, rdi
cmp rax, 0x1000
jb 0x14003b86e
mov rdi, qword [rdi - 8]
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003baa2
mov rcx, rdi
call fcn.14000d830
nop
mov rcx, qword [rbp + 0x2a0]
mov qword [rcx], rsi
mov qword [rcx + 8], rsi
mov qword [rcx + 0x10], rsi
test rbx, rbx
je 0x14003ba84
mov r14d, esi
mov edi, 0xe049c205
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x70], xmm0
movd ecx, xmm0
sub cx, 8
test r14d, r14d
je 0x14003b913
mov r9, qword [rsp + 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14003b90a
movsx ecx, byte [r9]
mov edx, ecx
sub cl, 0x41
mov r8d, edx
or r8d, 0x20
cmp cl, 0x19
cmova r8d, edx
xor r8d, r10d
imul r10d, r8d, 0x1000193
add r9, 2
cmp r9, r11
jne 0x14003b8e0
cmp r10d, r14d
jne 0x14003ba6a
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x14003ba72
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov r13, rdx
shr r13, 0x20
mov esi, edx
add rsi, rbx
cmp rsi, rbx
je 0x14003ba6a
mov r11d, dword [rsi + 0x18]
test r11d, r11d
je 0x14003ba6a
mov r12d, dword [rsi + 0x20]
dec r11d
lea rcx, [rbx + r11*4]
mov r9d, dword [rcx + r12]
add r9, rbx
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x14003b99d
movsx ecx, r8b
sub r8b, 0x41
mov edx, ecx
or edx, 0x20
cmp r8b, 0x19
cmova edx, ecx
xor edx, r10d
imul r10d, edx, 0x1000193
movzx r8d, byte [r9]
lea r9, [r9 + 1]
test r8b, r8b
jne 0x14003b972
cmp r10d, edi
je 0x14003b9af
test r11d, r11d
jne 0x14003b952
mov rax, qword [rax]
jmp 0x14003b8b0
mov ecx, dword [rsi + 0x1c]
add rcx, rbx
mov eax, dword [rsi + 0x24]
add rax, rbx
movzx eax, word [rax + r11*2]
mov edx, dword [rcx + rax*4]
add rdx, rbx
cmp rdx, rsi
jbe 0x14003ba74
lea rax, [rsi + r13]
cmp rdx, rax
jae 0x14003ba74
mov edi, 0x811c9dc5
mov r14d, edi
movzx r8d, byte [rdx]
cmp r8b, 0x2e
je 0x14003ba1b
nop
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, r14d
imul r14d, ecx, 0x1000193
inc rdx
movzx r8d, byte [rdx]
cmp r8b, 0x2e
jne 0x14003b9f0
inc rdx
movzx r8d, byte [rdx]
test r8b, r8b
je 0x14003ba59
nop word [rax + rax]
movsx eax, r8b
sub r8b, 0x41
mov ecx, eax
or ecx, 0x20
cmp r8b, 0x19
cmova ecx, eax
xor ecx, edi
imul edi, ecx, 0x1000193
lea rdx, [rdx + 1]
movzx r8d, byte [rdx]
test r8b, r8b
jne 0x14003ba30
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x14003b8b0
xor edx, edx
mov rcx, qword [rbp + 0x2a8]
call rdx
mov rcx, qword [rbp + 0x2a0]
mov rax, rcx
mov rbx, qword [rsp + 0x3b0]
add rsp, 0x360
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14007f5d4
nop
int3