Function at 0x1400a9030
Capabilities:
Hash data using fnv
Parse pe header

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x350]
sub rsp, 0x450
mov rax, qword [0x1401b6080]
xor rax, rsp
mov qword [rbp + 0x340], rax
mov qword [rsp + 0x30], r8
mov rsi, rdx
mov r14, rcx
xor edi, edi
test rdx, rdx
je 0x1400a9229
call fcn.1400a9fe0
cmp rax, rsi
cmovne rsi, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
movups xmmword [rbp - 0x10], xmm0
movups xmmword [rbp], xmm0
movups xmmword [rbp + 0x10], xmm0
mov r9d, 0x40
lea r8, [rbp - 0x20]
mov rdx, rsi
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
mov eax, 0x5a4d
cmp word [rbp - 0x20], ax
jne 0x1400a9229
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x20]
call fcn.1400e09b9
movsxd rdx, dword [rbp + 0x1c]
add rdx, rsi
mov r9d, 0x108
lea r8, [rbp + 0x20]
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
cmp dword [rbp + 0x20], 0x4550
jne 0x1400a9229
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
mov qword [rbp - 0x48], rax
mov eax, dword [rbp + 0xa8]
add rax, rsi
mov qword [rbp + 0x230], rax
mov ecx, dword [rbp + 0xac]
add rcx, rax
mov qword [rsp + 0x20], rcx
mov r9d, 0x28
lea r8, [rbp - 0x68]
mov rdx, rax
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
mov eax, dword [rbp - 0x4c]
add rax, rsi
mov qword [rsp + 0x40], rax
mov eax, dword [rbp - 0x44]
add rax, rsi
mov qword [rsp + 0x38], rax
mov r13d, dword [rbp - 0x48]
add r13, rsi
mov ebx, edi
cmp dword [rbp - 0x54], ebx
jbe 0x1400a9229
movabs r15, 0xcbf29ce484222325
nop
mov dword [rsp + 0x50], edi
mov dword [rsp + 0x4c], edi
mov word [rsp + 0x48], di
movsxd r12, ebx
lea rdx, [r12*4]
add rdx, r13
mov r9d, 4
lea r8, [rsp + 0x50]
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a921e
xor edx, edx
mov r8d, 0xff
lea rcx, [rbp + 0x240]
call fcn.1400e09b9
mov edx, dword [rsp + 0x50]
add rdx, rsi
mov r9d, 0xff
lea r8, [rbp + 0x240]
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a921e
movsx rax, byte [rbp + 0x240]
test al, al
jne 0x1400a91f7
mov rax, r15
jmp 0x1400a9217
mov rdx, rax
xor rdx, r15
movabs rax, 0x100000001b3
imul rdx, rax
lea rcx, [rbp + 0x241]
call fcn.140001b80
cmp rax, qword [rsp + 0x30]
je 0x1400a9255
inc ebx
cmp ebx, dword [rbp - 0x54]
jb 0x1400a9180
xor eax, eax
mov rcx, qword [rbp + 0x340]
xor rcx, rsp
call fcn.1400dea30
mov rbx, qword [rsp + 0x4a8]
add rsp, 0x450
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rsp + 0x38]
lea rdx, [rax + r12*2]
mov r9d, 2
lea r8, [rsp + 0x48]
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
movzx eax, word [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
lea rdx, [rcx + rax*4]
mov r9d, 4
lea r8, [rsp + 0x4c]
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
mov ebx, dword [rsp + 0x4c]
add rbx, rsi
cmp rbx, qword [rbp + 0x230]
jb 0x1400a9528
cmp rbx, qword [rsp + 0x20]
jae 0x1400a9528
xor edx, edx
mov r8d, 0xff
lea rcx, [rbp + 0x130]
call fcn.1400e09b9
mov r9d, 0xff
lea r8, [rbp + 0x130]
mov rdx, rbx
mov rcx, r14
call fcn.1400bd350
test al, al
je 0x1400a9229
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x70], rdi
lea rax, [rbp + 0x130]
mov r12, 0xffffffffffffffff
mov r8, r12
inc r8
cmp byte [rax + r8], dil
jne 0x1400a9310
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x58]
call fcn.1400109c0
nop
lea rbx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x68]
test rsi, rsi
je 0x1400a9516
mov r8, rsi
mov edx, 0x2e
mov rcx, rbx
call fcn.1400e0b0b
test rax, rax
je 0x1400a9516
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x1400a9516
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
lea r13, [rax + 1]
mov r8, r13
cmp rsi, r13
cmovb r8, rsi
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x78]
call fcn.1400109c0
nop
movabs rax, 0x4049f7f23719ccab
mov qword [rbp + 0x230], rax
movabs rcx, 0x36817a07e8ec9120
mov qword [rbp + 0x238], rcx
movabs rax, 0x4049f7f23775a0cf
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
movaps xmm0, xmmword [rsp + 0x20]
xorps xmm0, xmmword [rbp + 0x230]
movdqa xmmword [rsp + 0x20], xmm0
lea rax, [rsp + 0x20]
mov r8, r12
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400a9400
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x78]
call fcn.14000d310
lea rdi, [rsp + 0x78]
mov rdx, qword [rsp + 0x78]
cmp qword [rbp - 0x70], 0xf
cmova rdi, rdx
lea rbx, [rsp + 0x78]
cmova rbx, rdx
lea rcx, [rsp + 0x78]
cmova rcx, rdx
mov rsi, qword [rbp - 0x78]
add rsi, rcx
cmp rbx, rsi
je 0x1400a9465
sub rdi, rbx
nop dword [rax]
movsx ecx, byte [rbx]
call qword [0x1400eab30]
nop
mov byte [rdi + rbx], al
inc rbx
cmp rbx, rsi
jne 0x1400a9450
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x30], xmm1
mov rax, qword [rsp + 0x68]
cmp rax, r13
jb 0x1400a9530
sub rax, r13
cmp rax, 0xffffffffffffffff
cmovb r12, rax
lea rdx, [rsp + 0x58]
cmp qword [rsp + 0x70], 0xf
cmova rdx, qword [rsp + 0x58]
add rdx, r13
mov r8, r12
lea rcx, [rbp - 0x40]
call fcn.1400109c0
nop
lea rcx, [rbp - 0x40]
cmp qword [rbp - 0x28], 0xf
cmova rcx, qword [rbp - 0x40]
movsx rax, byte [rcx]
test al, al
je 0x1400a94e3
mov rdx, rax
xor rdx, r15
movabs rax, 0x100000001b3
imul rdx, rax
inc rcx
call fcn.140001b80
mov r15, rax
lea rdx, [rsp + 0x78]
mov rcx, r14
call fcn.1400a8670
mov r8, r15
mov rdx, rax
mov rcx, r14
call fcn.1400a9030
mov rdi, rax
lea rcx, [rbp - 0x40]
call fcn.14000d150
nop
lea rcx, [rsp + 0x78]
call fcn.14000d150
nop
lea rcx, [rsp + 0x58]
call fcn.14000d150
mov rax, rdi
jmp 0x1400a922b
mov rax, rbx
jmp 0x1400a922b
call fcn.14000dae0
int3