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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xe88]
sub rsp, 0xf60
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1400b2040]
xor rax, rsp
mov qword [rbp + 0xe40], rax
xor r14d, r14d
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
or rbx, 0xffffffffffffffff
mov eax, dword [rcx + rax]
cmp dword [0x1400b2cb8], eax
jle 0x140055316
lea rcx, [0x1400b2cb8]
call fcn.1400620b8
cmp dword [0x1400b2cb8], ebx
jne 0x140055316
call fcn.140041c10
mov qword [0x1400b2c70], rax
lea rcx, [0x1400b2cb8]
call fcn.14006204c
movabs r12, 0x8e3580d420a0e3ff
movabs r15, 0x7efd42897e1c9a08
mov r13d, 1
cmp byte [0x1400b2c04], r14b
jne 0x140056c64
mov qword [rbp + 0x540], r12
mov qword [rbp + 0x548], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x550], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x558], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rsp + 0x60], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rsp + 0x68], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rsp + 0x70]
xorps xmm0, xmmword [rbp + 0x540]
movdqa xmmword [rsp + 0x40], xmm0
xorps xmm1, xmmword [rbp + 0x550]
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x570], r12
mov qword [rbp + 0x578], r15
mov qword [rbp + 0x560], r12
mov qword [rbp + 0x568], r15
movdqa xmm0, xmmword [rbp + 0x570]
xorps xmm0, xmmword [rbp + 0x560]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x560], r12
mov qword [rbp + 0x568], r15
movabs rax, 0xeb58e1ba52c5908a
mov qword [rbp + 0x570], rax
mov qword [rbp + 0x578], r15
movdqa xmm0, xmmword [rbp + 0x560]
xorps xmm0, xmmword [rbp + 0x570]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x560], r12
mov qword [rbp + 0x568], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp + 0x570], rax
mov qword [rbp + 0x578], r15
movdqa xmm0, xmmword [rbp + 0x560]
xorps xmm0, xmmword [rbp + 0x570]
movdqa xmmword [rbp + 0x560], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x1400554e7
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x1400554e7
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rsi + r9*4]
mov r8d, dword [rcx + rdx]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x1400554e2
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x1400554c2
cmp r11d, 0x881c4e81
je 0x1400554ec
test r9d, r9d
jne 0x1400554a4
mov rax, qword [rax]
jmp 0x14005547f
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0x940]
lea r8, [rbp + 0x540]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x560]
call r10
mov qword [rbp + 0x6f0], r12
mov qword [rbp + 0x6f8], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x700], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x708], rax
movabs rdx, 0xe151eebd778fd99c
mov qword [rbp + 0x290], rdx
movabs rdx, 0x518e25e61233e97f
mov qword [rbp + 0x298], rdx
movabs rdx, 0x96a61b133423adf5
mov qword [rbp + 0x2a0], rdx
mov qword [rbp + 0x2a8], rax
movups xmm1, xmmword [rbp + 0x290]
movups xmm2, xmmword [rbp + 0x2a0]
movdqa xmm0, xmmword [rbp + 0x6f0]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
xorps xmm2, xmmword [rbp + 0x700]
movdqa xmmword [rsp + 0x50], xmm2
mov qword [rbp + 0x780], r12
mov qword [rbp + 0x788], r15
mov qword [rbp + 0x120], r12
mov qword [rbp + 0x128], r15
movdqa xmm0, xmmword [rbp + 0x780]
xorps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x880], r12
mov qword [rbp + 0x888], r15
movabs rax, 0xea47efa353d3828f
mov qword [rbp + 0x140], rax
mov qword [rbp + 0x148], r15
movdqa xmm0, xmmword [rbp + 0x880]
xorps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x890], r12
mov qword [rbp + 0x898], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], r15
movdqa xmm0, xmmword [rbp + 0x890]
xorps xmm0, xmmword [rbp - 0x30]
movdqa xmmword [rbp - 0x30], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x1400556e3
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x1400556e3
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rsi + r9*4]
mov r8d, dword [rcx + rdx]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x1400556de
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x1400556be
cmp r11d, 0x881c4e81
je 0x1400556e8
test r9d, r9d
jne 0x1400556a0
mov rax, qword [rax]
jmp 0x14005567b
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0x9c0]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp - 0x30]
call r10
mov qword [rbp + 0x720], r12
mov qword [rbp + 0x728], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x730], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x738], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0x2c0], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0x2c8], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0x2d0], rcx
mov qword [rbp + 0x2d8], rax
movups xmm1, xmmword [rbp + 0x2c0]
movups xmm2, xmmword [rbp + 0x2d0]
movdqa xmm0, xmmword [rbp + 0x720]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x730]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x8a0], r12
mov qword [rbp + 0x8a8], r15
mov qword [rbp + 0x170], r12
mov qword [rbp + 0x178], r15
movdqa xmm0, xmmword [rbp + 0x8a0]
xorps xmm0, xmmword [rbp + 0x170]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x8b0], r12
mov qword [rbp + 0x8b8], r15
movabs rax, 0x8e3580d444c99497
mov qword [rbp + 0x190], rax
mov qword [rbp + 0x198], r15
movdqa xmm0, xmmword [rbp + 0x8b0]
xorps xmm0, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x8c0], r12
mov qword [rbp + 0x8c8], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], r15
movdqa xmm0, xmmword [rbp + 0x8c0]
xorps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x40], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x1400558e0
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x1400558e0
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rdx + r9*4]
mov r8d, dword [rcx + rsi]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x1400558db
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x1400558bb
cmp r11d, 0x881c4e81
je 0x1400558e5
test r9d, r9d
jne 0x14005589d
mov rax, qword [rax]
jmp 0x140055878
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xa40]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x40]
call r10
mov qword [rbp + 0x750], r12
mov qword [rbp + 0x758], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x760], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x768], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0x2f0], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0x2f8], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0x300], rcx
mov qword [rbp + 0x308], rax
movups xmm1, xmmword [rbp + 0x2f0]
movups xmm2, xmmword [rbp + 0x300]
movdqa xmm0, xmmword [rbp + 0x750]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x760]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x8d0], r12
mov qword [rbp + 0x8d8], r15
mov qword [rbp + 0x1c0], r12
mov qword [rbp + 0x1c8], r15
movdqa xmm0, xmmword [rbp + 0x8d0]
xorps xmm0, xmmword [rbp + 0x1c0]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x8e0], r12
mov qword [rbp + 0x8e8], r15
movabs rax, 0xe74de58b45c6828c
mov qword [rbp + 0x1e0], rax
movabs rax, 0x7efd42897e1c9a7c
mov qword [rbp + 0x1e8], rax
movdqa xmm0, xmmword [rbp + 0x8e0]
xorps xmm0, xmmword [rbp + 0x1e0]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x900], r12
mov qword [rbp + 0x908], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp - 0x10], rax
mov qword [rbp - 8], r15
movdqa xmm0, xmmword [rbp + 0x900]
xorps xmm0, xmmword [rbp - 0x10]
movdqa xmmword [rbp - 0x10], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x140055ae7
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x140055ae7
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rdx + r9*4]
mov r8d, dword [rcx + rsi]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x140055ae2
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x140055ac2
cmp r11d, 0x881c4e81
je 0x140055aec
test r9d, r9d
jne 0x140055aa4
mov rax, qword [rax]
jmp 0x140055a7f
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xac0]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp - 0x10]
call r10
mov qword [rbp + 0x5c0], r12
mov qword [rbp + 0x5c8], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x5d0], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x5d8], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0x310], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0x318], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
movups xmm1, xmmword [rbp + 0x310]
movups xmm2, xmmword [rbp + 0x320]
movdqa xmm0, xmmword [rbp + 0x5c0]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x5d0]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x910], r12
mov qword [rbp + 0x918], r15
mov qword [rbp + 0x210], r12
mov qword [rbp + 0x218], r15
movdqa xmm0, xmmword [rbp + 0x910]
xorps xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x920], r12
mov qword [rbp + 0x928], r15
movabs rax, 0xeb6af4bb42cd8a9e
mov qword [rbp + 0x230], rax
movabs rax, 0x7efd26ec127efb66
mov qword [rbp + 0x238], rax
movdqa xmm0, xmmword [rbp + 0x920]
xorps xmm0, xmmword [rbp + 0x230]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x930], r12
mov qword [rbp + 0x938], r15
movabs rax, 0xeb41f8b17f92909c
mov qword [rbp + 0x60], rax
movabs rax, 0x7efd4289127df47a
mov qword [rbp + 0x68], rax
movdqa xmm0, xmmword [rbp + 0x930]
xorps xmm0, xmmword [rbp + 0x60]
movdqa xmmword [rbp + 0x60], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x140055cf8
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x140055cf8
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rsi + r9*4]
mov r8d, dword [rcx + rdx]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x140055cf3
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x140055cd3
cmp r11d, 0x881c4e81
je 0x140055cfd
test r9d, r9d
jne 0x140055cb5
mov rax, qword [rax]
jmp 0x140055c90
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xb40]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x60]
call r10
mov qword [rbp + 0x7a0], r12
mov qword [rbp + 0x7a8], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x7b0], rax
movabs rcx, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x7b8], rcx
movabs rdx, 0xe151eebd778fd99c
mov qword [rbp + 0x340], rdx
movabs rdx, 0x518e25e61233e97f
mov qword [rbp + 0x348], rdx
movabs rdx, 0x96a61b133423adf5
mov qword [rbp + 0x350], rdx
mov qword [rbp + 0x358], rcx
movups xmm1, xmmword [rbp + 0x340]
movups xmm2, xmmword [rbp + 0x350]
movdqa xmm0, xmmword [rbp + 0x7a0]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x7b0]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x5e0], r12
mov qword [rbp + 0x5e8], r15
mov qword [rbp + 0x260], r12
mov qword [rbp + 0x268], r15
movdqa xmm0, xmmword [rbp + 0x5e0]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x580], r12
mov qword [rbp + 0x588], r15
mov qword [rbp + 0x590], rax
mov qword [rbp + 0x598], rcx
movabs rax, 0xef46eeb150cd8c9c
mov qword [rbp + 0x380], rax
movabs rax, 0x179221ec0c43ff7c
mov qword [rbp + 0x388], rax
movabs rax, 0x96a669765042c2f5
mov qword [rbp + 0x390], rax
mov qword [rbp + 0x398], rcx
movups xmm1, xmmword [rbp + 0x380]
movups xmm2, xmmword [rbp + 0x390]
movdqa xmm0, xmmword [rbp + 0x580]
xorps xmm0, xmm1
movdqa xmmword [rbp + 0x5c0], xmm0
movdqa xmm1, xmmword [rbp + 0x590]
xorps xmm1, xmm2
movdqa xmmword [rbp + 0x5d0], xmm1
mov qword [rbp + 0x5f0], r12
mov qword [rbp + 0x5f8], r15
movabs rax, 0xeb41f8b17f92909c
mov qword [rbp + 0x280], rax
movabs rax, 0x7efd4289127df47a
mov qword [rbp + 0x288], rax
movdqa xmm0, xmmword [rbp + 0x5f0]
xorps xmm0, xmmword [rbp + 0x280]
movdqa xmmword [rbp + 0x540], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x140055f56
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x140055f56
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rsi + r9*4]
mov edx, dword [rcx + r8]
add rdx, r8
mov r11d, 0x811c9dc5
mov cl, byte [rdx]
add rdx, r13
test cl, cl
je 0x140055f51
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r13
test cl, cl
jne 0x140055f32
cmp r11d, 0x881c4e81
je 0x140055f5b
test r9d, r9d
jne 0x140055f15
mov rax, qword [rax]
jmp 0x140055ef0
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov eax, dword [r10 + 0x24]
add rax, r8
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r8
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xbc0]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x5c0]
lea rcx, [rbp + 0x540]
call r10
lea rdx, [rbp + 0x940]
lea rcx, [rsp + 0x40]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x498]
call fcn.140001818
nop
lea rcx, [rsp + 0x40]
call fcn.140001624
lea rdx, [rbp + 0x9c0]
lea rcx, [rbp + 0x580]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rbp + 0x580]
lea rcx, [rbp + 0x478]
call fcn.140001818
nop
lea rcx, [rbp + 0x580]
call fcn.140001624
lea rdx, [rbp + 0xa40]
lea rcx, [rsp + 0x40]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x518]
call fcn.140001818
nop
lea rcx, [rsp + 0x40]
call fcn.140001624
lea rdx, [rbp + 0xac0]
lea rcx, [rbp + 0x580]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rbp + 0x580]
lea rcx, [rbp + 0x4f8]
call fcn.140001818
nop
lea rcx, [rbp + 0x580]
call fcn.140001624
lea rdx, [rbp + 0xb40]
lea rcx, [rsp + 0x40]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x4d8]
call fcn.140001818
nop
lea rcx, [rsp + 0x40]
call fcn.140001624
lea rdx, [rbp + 0xbc0]
lea rcx, [rbp + 0x580]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rbp + 0x580]
lea rcx, [rbp + 0x4b8]
call fcn.140001818
nop
lea rcx, [rbp + 0x580]
call fcn.140001624
mov qword [rbp + 0x7f0], r12
mov qword [rbp + 0x7f8], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x800], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x808], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0x3b0], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0x3b8], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0x3c0], rcx
mov qword [rbp + 0x3c8], rax
movups xmm1, xmmword [rbp + 0x3b0]
movups xmm2, xmmword [rbp + 0x3c0]
movdqa xmm0, xmmword [rbp + 0x7f0]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x800]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x600], r12
mov qword [rbp + 0x608], r15
mov qword [rbp + 0x2b0], r12
mov qword [rbp + 0x2b8], r15
movdqa xmm0, xmmword [rbp + 0x600]
xorps xmm0, xmmword [rbp + 0x2b0]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x610], r12
mov qword [rbp + 0x618], r15
movabs rax, 0x8e47dfb14dc58b8b
mov qword [rbp + 0x2e0], rax
mov qword [rbp + 0x2e8], r15
movdqa xmm0, xmmword [rbp + 0x610]
xorps xmm0, xmmword [rbp + 0x2e0]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x620], r12
mov qword [rbp + 0x628], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp], rax
mov qword [rbp + 8], r15
movdqa xmm0, xmmword [rbp + 0x620]
xorps xmm0, xmmword [rbp]
movdqa xmmword [rbp], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x14005628e
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14005628e
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rsi + r9*4]
mov r8d, dword [rcx + rdx]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x140056289
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x140056269
cmp r11d, 0x881c4e81
je 0x140056293
test r9d, r9d
jne 0x14005624b
mov rax, qword [rax]
jmp 0x140056226
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xc40]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp]
call r10
mov qword [rbp + 0x820], r12
mov qword [rbp + 0x828], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x830], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x838], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0x80], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0x88], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0x90], rcx
mov qword [rbp + 0x98], rax
movups xmm1, xmmword [rbp + 0x80]
movups xmm2, xmmword [rbp + 0x90]
movdqa xmm0, xmmword [rbp + 0x820]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x830]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x630], r12
mov qword [rbp + 0x638], r15
mov qword [rbp + 0x330], r12
mov qword [rbp + 0x338], r15
movdqa xmm0, xmmword [rbp + 0x630]
xorps xmm0, xmmword [rbp + 0x330]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x640], r12
mov qword [rbp + 0x648], r15
movabs rax, 0x8e52dfb14dc58b8b
mov qword [rbp + 0x360], rax
mov qword [rbp + 0x368], r15
movdqa xmm0, xmmword [rbp + 0x640]
xorps xmm0, xmmword [rbp + 0x360]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x770], r12
mov qword [rbp + 0x778], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], r15
movdqa xmm0, xmmword [rbp + 0x770]
xorps xmm0, xmmword [rbp - 0x20]
movdqa xmmword [rbp - 0x20], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x14005648b
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14005648b
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rdx + r9*4]
mov r8d, dword [rcx + rsi]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x140056486
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x140056466
cmp r11d, 0x881c4e81
je 0x140056490
test r9d, r9d
jne 0x140056448
mov rax, qword [rax]
jmp 0x140056423
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xcc0]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp - 0x20]
call r10
mov qword [rbp + 0x850], r12
mov qword [rbp + 0x858], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x860], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x868], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0xa0], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0xa8], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rax
movups xmm1, xmmword [rbp + 0xa0]
movups xmm2, xmmword [rbp + 0xb0]
movdqa xmm0, xmmword [rbp + 0x850]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x860]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x650], r12
mov qword [rbp + 0x658], r15
mov qword [rbp + 0x3a0], r12
mov qword [rbp + 0x3a8], r15
movdqa xmm0, xmmword [rbp + 0x650]
xorps xmm0, xmmword [rbp + 0x3a0]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x660], r12
mov qword [rbp + 0x668], r15
movabs rax, 0x8e57dfb14dc58b8b
mov qword [rbp + 0x70], rax
mov qword [rbp + 0x78], r15
movdqa xmm0, xmmword [rbp + 0x660]
xorps xmm0, xmmword [rbp + 0x70]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x670], r12
mov qword [rbp + 0x678], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x38], r15
movdqa xmm0, xmmword [rbp + 0x670]
xorps xmm0, xmmword [rbp + 0x30]
movdqa xmmword [rbp + 0x30], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x14005667f
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14005667f
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rdx + r9*4]
mov r8d, dword [rcx + rsi]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x14005667a
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x14005665a
cmp r11d, 0x881c4e81
je 0x140056684
test r9d, r9d
jne 0x14005663c
mov rax, qword [rax]
jmp 0x140056617
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xd40]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x30]
call r10
mov qword [rbp + 0x5a0], r12
mov qword [rbp + 0x5a8], r15
movabs rax, 0x96a669765042c299
mov qword [rbp + 0x5b0], rax
movabs rax, 0xf4ccd583a50ae8a2
mov qword [rbp + 0x5b8], rax
movabs rcx, 0xe151eebd778fd99c
mov qword [rbp + 0xd0], rcx
movabs rcx, 0x518e25e61233e97f
mov qword [rbp + 0xd8], rcx
movabs rcx, 0x96a61b133423adf5
mov qword [rbp + 0xe0], rcx
mov qword [rbp + 0xe8], rax
movups xmm1, xmmword [rbp + 0xd0]
movups xmm2, xmmword [rbp + 0xe0]
movdqa xmm0, xmmword [rbp + 0x5a0]
xorps xmm0, xmm1
movdqa xmmword [rsp + 0x40], xmm0
movdqa xmm1, xmmword [rbp + 0x5b0]
xorps xmm1, xmm2
movdqa xmmword [rsp + 0x50], xmm1
mov qword [rbp + 0x680], r12
mov qword [rbp + 0x688], r15
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xc8], r15
movdqa xmm0, xmmword [rbp + 0x680]
xorps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x710], r12
mov qword [rbp + 0x718], r15
movabs rax, 0x8e54dfb14dc58b8b
mov qword [rbp + 0xf0], rax
mov qword [rbp + 0xf8], r15
movdqa xmm0, xmmword [rbp + 0x710]
xorps xmm0, xmmword [rbp + 0xf0]
movdqa xmmword [rbp + 0x540], xmm0
mov qword [rbp + 0x8f0], r12
mov qword [rbp + 0x8f8], r15
movabs rax, 0x8e35f2b144c18c93
mov qword [rbp + 0x50], rax
mov qword [rbp + 0x58], r15
movdqa xmm0, xmmword [rbp + 0x8f0]
xorps xmm0, xmmword [rbp + 0x50]
movdqa xmmword [rbp + 0x50], xmm0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rdx, qword [rax + 0x30]
movsxd rcx, dword [rdx + 0x3c]
mov r10d, dword [rcx + rdx + 0x88]
add r10, rdx
cmp r10, rdx
je 0x14005687c
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x14005687c
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [rdx + r9*4]
mov r8d, dword [rcx + rsi]
add r8, rdx
mov r11d, 0x811c9dc5
mov cl, byte [r8]
add r8, r13
test cl, cl
je 0x140056877
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [r8]
add r8, r13
test cl, cl
jne 0x140056857
cmp r11d, 0x881c4e81
je 0x140056881
test r9d, r9d
jne 0x140056839
mov rax, qword [rax]
jmp 0x140056814
mov ecx, dword [r10 + 0x1c]
add rcx, rdx
mov eax, dword [r10 + 0x24]
add rax, rdx
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, rdx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x80
lea r9, [rbp + 0xdc0]
lea r8, [rsp + 0x60]
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x50]
call r10
lea rdx, [rbp + 0xc40]
lea rcx, [rsp + 0x40]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x458]
call fcn.140001818
nop
lea rcx, [rsp + 0x40]
call fcn.140001624
lea rdx, [rbp + 0xcc0]
lea rcx, [rbp + 0x5a0]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rbp + 0x5a0]
lea rcx, [rbp + 0x438]
call fcn.140001818
nop
lea rcx, [rbp + 0x5a0]
call fcn.140001624
lea rdx, [rbp + 0xd40]
lea rcx, [rsp + 0x40]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x418]
call fcn.140001818
nop
lea rcx, [rsp + 0x40]
call fcn.140001624
lea rdx, [rbp + 0xdc0]
lea rcx, [rbp + 0x5a0]
call fcn.1400016b0
nop
xor r8d, r8d
lea rdx, [rbp + 0x5a0]
lea rcx, [rbp + 0x3f8]
call fcn.140001818
nop
lea rcx, [rbp + 0x5a0]
call fcn.140001624
cmp qword [rbp + 0x468], r14
je 0x140056a39
cmp qword [rbp + 0x448], r14
je 0x140056a39
cmp qword [rbp + 0x428], r14
je 0x140056a39
cmp qword [rbp + 0x408], r14
je 0x140056a39
xor edx, edx
lea rcx, [rbp + 0x458]
call fcn.14004cbf4
mov rax, qword [0x1400b2c70]
movss dword [rax + 0xa8], xmm0
xor edx, edx
lea rcx, [rbp + 0x438]
call fcn.14004cbf4
mov rax, qword [0x1400b2c70]
movss dword [rax + 0xac], xmm0
xor edx, edx
lea rcx, [rbp + 0x418]
call fcn.14004cbf4
mov rax, qword [0x1400b2c70]
movss dword [rax + 0xb0], xmm0
xor edx, edx
lea rcx, [rbp + 0x3f8]
call fcn.14004cbf4
mov rax, qword [0x1400b2c70]
movss dword [rax + 0xb4], xmm0
jmp 0x140056a40
mov rax, qword [0x1400b2c70]
cmp qword [rbp + 0x4a8], r14
je 0x140056a86
cmp qword [rbp + 0x488], r14
je 0x140056a86
lea rcx, [rax + 0x200]
lea rdx, [rbp + 0x498]
call fcn.140060104
mov rcx, qword [0x1400b2c70]
add rcx, 0x220
lea rdx, [rbp + 0x478]
call fcn.140060104
mov rax, qword [0x1400b2c70]
cmp qword [rax + 0x210], r14
je 0x140056aa1
cmp qword [rax + 0x230], r14
je 0x140056aa1
mov byte [rax + 0x1d2], r13b
jmp 0x140056aa8
mov byte [rax + 0x1d2], r14b
cmp byte [rax + 0x1d2], r14b
je 0x140056bdc
call fcn.140051764
mov rcx, qword [0x1400b2c70]
test al, al
je 0x140056ace
cmp byte [rcx + 0x1d0], r14b
jne 0x140056ad2
mov dword [rcx + 0x70], r13d
mov qword [rbp + 0x6d0], r12
mov qword [rbp + 0x6d8], r15
movabs rdi, 0x8e3580d445d5918b
mov qword [rbp + 0x100], rdi
mov qword [rbp + 0x108], r15
movdqa xmm0, xmmword [rbp + 0x6d0]
xorps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x4f8]
call fcn.14004a8fc
test al, al
setne cl
mov rax, qword [0x1400b2c70]
mov byte [rax + 0x30c], cl
mov qword [rbp + 0x6a0], r12
mov qword [rbp + 0x6a8], r15
mov qword [rbp + 0x370], rdi
mov qword [rbp + 0x378], r15
movdqa xmm0, xmmword [rbp + 0x6a0]
xorps xmm0, xmmword [rbp + 0x370]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x4d8]
call fcn.14004a8fc
test al, al
setne cl
mov rax, qword [0x1400b2c70]
mov byte [rax + 0x3b4], cl
mov qword [rbp + 0x870], r12
mov qword [rbp + 0x878], r15
mov qword [rbp + 0x130], rdi
mov qword [rbp + 0x138], r15
movdqa xmm0, xmmword [rbp + 0x870]
xorps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x4b8]
call fcn.14004a8fc
test al, al
setne al
mov rcx, qword [0x1400b2c70]
mov byte [rcx + 0x3d8], al
mov dword [rcx + 0x70], r13d
mov byte [0x1400b2c04], r13b
lea rcx, [rbp + 0x3f8]
call fcn.140001624
nop
lea rcx, [rbp + 0x418]
call fcn.140001624
nop
lea rcx, [rbp + 0x438]
call fcn.140001624
nop
lea rcx, [rbp + 0x458]
call fcn.140001624
nop
lea rcx, [rbp + 0x4b8]
call fcn.140001624
nop
lea rcx, [rbp + 0x4d8]
call fcn.140001624
nop
lea rcx, [rbp + 0x4f8]
call fcn.140001624
nop
lea rcx, [rbp + 0x518]
call fcn.140001624
nop
lea rcx, [rbp + 0x478]
call fcn.140001624
nop
lea rcx, [rbp + 0x498]
call fcn.140001624
lea rcx, [rbp + 0x3d0]
call fcn.14001077c
movss xmm0, dword [rax]
movss dword [rbp - 0x80], xmm0
mov dword [rbp - 0x7c], 0x42280000
mov qword [rbp + 0x7d0], r12
mov qword [rbp + 0x7d8], r15
movabs rax, 0xef57dfa44fd4c0dc
mov qword [rbp + 0x150], rax
movabs rax, 0x7efd42897e1c9a7a
mov qword [rbp + 0x158], rax
movdqa xmm0, xmmword [rbp + 0x7d0]
xorps xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x160], xmm0
mov rcx, qword [0x1400b29c0]
mov rax, qword [rcx + 0x1b90]
mov byte [rax + 0xc1], r13b
xor r8d, r8d
lea rdx, [rbp + 0x160]
mov rcx, qword [rcx + 0x1b90]
call fcn.140005cac
mov edx, eax
mov dword [rsp + 0x20], r14d
mov r9b, r13b
lea r8, [rbp - 0x80]
lea rcx, [rbp + 0x160]
call fcn.14000a62c
movaps xmm0, xmmword [0x1400ab740]
movups xmmword [rsp + 0x60], xmm0
mov rax, qword [0x1400b2c70]
movups xmm0, xmmword [rax + 0xa8]
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x7c0], r12
mov qword [rbp + 0x7c8], r15
movabs rax, 0xf91bce9562e3a2a9
mov qword [rbp + 0x180], rax
movabs rax, 0x7efd42897e1cfc7c
mov qword [rbp + 0x188], rax
movdqa xmm0, xmmword [rbp + 0x7c0]
xorps xmm0, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x540], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x10]
xor r8d, r8d
mov edx, r13d
lea rcx, [rbp + 0x540]
call fcn.14004d198
call fcn.14000a890
mov ecx, r13d
call fcn.14004cf70
xor edx, edx
lea edi, [rdx + 3]
mov ecx, edi
call fcn.140004568
lea rcx, [rbp + 0x3d8]
call fcn.14001077c
movss xmm6, dword [rax + 4]
lea rcx, [rbp + 0x3e0]
call fcn.14001077c
movss xmm0, dword [rax]
movss dword [rbp - 0x78], xmm0
movss dword [rbp - 0x74], xmm6
mov qword [rbp + 0x6e0], r12
mov qword [rbp + 0x6e8], r15
movabs rax, 0xeb59e4b049cdc0dc
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], r15
movdqa xmm0, xmmword [rbp + 0x6e0]
xorps xmm0, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x1b0], xmm0
mov rcx, qword [0x1400b29c0]
mov rax, qword [rcx + 0x1b90]
mov byte [rax + 0xc1], r13b
xor r8d, r8d
lea rdx, [rbp + 0x1b0]
mov rcx, qword [rcx + 0x1b90]
call fcn.140005cac
mov edx, eax
mov dword [rsp + 0x20], r14d
mov r9b, r13b
lea r8, [rbp - 0x78]
lea rcx, [rbp + 0x1b0]
call fcn.14000a62c
mov ecx, r13d
call fcn.14000461c
movaps xmm0, xmmword [0x1400ab740]
movups xmmword [rsp + 0x60], xmm0
mov rax, qword [0x1400b2c70]
movups xmm0, xmmword [rax + 0xa8]
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x810], r12
mov qword [rbp + 0x818], r15
movabs rax, 0x8e35809a69e7acb3
mov qword [rbp + 0x1d0], rax
mov qword [rbp + 0x1d8], r15
movdqa xmm0, xmmword [rbp + 0x810]
xorps xmm0, xmmword [rbp + 0x1d0]
movdqa xmmword [rbp + 0x540], xmm0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x20]
mov r8b, r13b
mov edx, r13d
lea rcx, [rbp + 0x540]
call fcn.14004d198
call fcn.14003254c
xor edx, edx
lea ecx, [rdi + 4]
call fcn.140004568
lea rcx, [rbp + 0x3e8]
call fcn.14001077c
movss xmm6, dword [rax + 4]
lea rcx, [rbp + 0x3f0]
call fcn.14001077c
movss xmm0, dword [rax]
movss dword [rbp - 0x70], xmm0
movss dword [rbp - 0x6c], xmm6
mov qword [rbp + 0x6c0], r12
mov qword [rbp + 0x6c8], r15
movabs rax, 0x8e5be9b34fccc0dc
mov qword [rbp + 0x1f0], rax
mov qword [rbp + 0x1f8], r15
movdqa xmm0, xmmword [rbp + 0x6c0]
xorps xmm0, xmmword [rbp + 0x1f0]
movdqa xmmword [rbp + 0x200], xmm0
mov rcx, qword [0x1400b29c0]
mov rax, qword [rcx + 0x1b90]
mov byte [rax + 0xc1], r13b
xor r8d, r8d
lea rdx, [rbp + 0x200]
mov rcx, qword [rcx + 0x1b90]
call fcn.140005cac
mov edx, eax
mov dword [rsp + 0x20], r14d
mov r9b, r13b
lea r8, [rbp - 0x70]
lea rcx, [rbp + 0x200]
call fcn.14000a62c
mov ecx, r13d
call fcn.14000461c
lea ecx, [rdi - 1]
call fcn.14004cf70
movss xmm6, dword [0x1400ab628]
movaps xmm0, xmm6
call fcn.1400104a4
mov qword [rbp + 0x740], r12
mov qword [rbp + 0x748], r15
movabs rax, 0xeb58e1ba52c590aa
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], r15
movdqa xmm0, xmmword [rbp + 0x740]
xorps xmm0, xmmword [rbp + 0x110]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x790], r12
mov qword [rbp + 0x798], r15
movabs rax, 0xef5bf2b153d5c0dc
mov qword [rbp + 0x220], rax
movabs rax, 0x7efd42897e1cff65
mov qword [rbp + 0x228], rax
movdqa xmm0, xmmword [rbp + 0x790]
xorps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rbp + 0x540], xmm0
and dword [rbp - 0x68], 0
and dword [rbp - 0x64], 0
mov r8, qword [0x1400b2c70]
add r8, 0xd0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x11008
lea rax, [rbp - 0x68]
mov qword [rsp + 0x20], rax
lea r9d, [rdi + 0x7d]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x540]
call fcn.140036010
movaps xmm0, xmm6
call fcn.1400104a4
mov qword [rbp + 0x7e0], r12
mov qword [rbp + 0x7e8], r15
movabs rax, 0xea47efa353d382af
mov qword [rbp + 0x240], rax
mov qword [rbp + 0x248], r15
movdqa xmm0, xmmword [rbp + 0x7e0]
xorps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rbp + 0x840], r12
mov qword [rbp + 0x848], r15
movabs rax, 0xe142f3a741d0c0dc
mov qword [rbp + 0x250], rax
movabs rax, 0x7efd42897e1cfe7a
mov qword [rbp + 0x258], rax
movdqa xmm0, xmmword [rbp + 0x840]
xorps xmm0, xmmword [rbp + 0x250]
movdqa xmmword [rbp + 0x540], xmm0
and dword [rbp - 0x60], 0
and dword [rbp - 0x5c], 0
mov r8, qword [0x1400b2c70]
add r8, 0x150
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x19008
lea rax, [rbp - 0x60]
mov qword [rsp + 0x20], rax
lea r9d, [rdi + 0x7d]
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x540]
call fcn.140036010
mov ecx, edi
call fcn.14004cf70
call fcn.14003254c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x1400571d0
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x1400571d0
mov esi, dword [r10 + 0x20]
dec r9d
lea rcx, [r8 + r9*4]
mov edx, dword [rcx + rsi]
add rdx, r8
mov r11d, 0x811c9dc5
mov cl, byte [rdx]
add rdx, r13
test cl, cl
je 0x1400571cb
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r13
test cl, cl
jne 0x1400571ac
cmp r11d, 0x95466b05
je 0x1400571d5
test r9d, r9d
jne 0x140057190
mov rax, qword [rax]
jmp 0x14005716b
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx edx, word [rcx + r9*2]
mov ecx, dword [r10 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
mov ecx, 0xd
call rax
test ax, ax
js 0x14005724d
mov dword [rbp - 0x58], 0x436f0000
mov dword [rbp - 0x54], 0x42040000
mov qword [rbp + 0x690], r12
mov qword [rbp + 0x698], r15
movabs rax, 0x8e3580ba49c78cb3
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], r15
movdqa xmm0, xmmword [rbp + 0x690]
xorps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
xor r8d, r8d
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x40]
call fcn.1400308c8
test al, al
je 0x1400572a9
mov rcx, qword [0x1400b2c70]
lea rdx, [rcx + 0xd0]
mov r8, rbx
inc r8
cmp byte [rdx + r8], r14b
jne 0x14005725e
add rcx, 0x200
call fcn.14004a3ac
mov rcx, qword [0x1400b2c70]
lea rdx, [rcx + 0x150]
inc rbx
cmp byte [rdx + rbx], r14b
jne 0x140057281
mov r8, rbx
add rcx, 0x220
call fcn.14004a3ac
call fcn.140051764
mov rcx, qword [0x1400b2c70]
mov dword [rcx + 0x70], r13d
mov dword [rbp - 0x50], 0x436f0000
mov dword [rbp - 0x4c], 0x42040000
mov qword [rbp + 0x6b0], r12
mov qword [rbp + 0x6b8], r15
movabs rax, 0x8e3580d454c99bba
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x278], r15
movdqa xmm0, xmmword [rbp + 0x6b0]
xorps xmm0, xmmword [rbp + 0x270]
movdqa xmmword [rsp + 0x60], xmm0
xor r8d, r8d
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x60]
call fcn.1400308c8
test al, al
je 0x140057451
mov esi, 0xe80fd3a
mov rax, qword [0x1400b2c70]
cmp byte [rax + 0x30c], r14b
je 0x1400573bd
call fcn.140060c0c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14005739b
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14005739b
mov edi, dword [r9 + 0x20]
dec r10d
lea rcx, [r8 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r8
mov r11d, 0x811c9dc5
mov cl, byte [rdx]
add rdx, r13
test cl, cl
je 0x140057396
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r13
test cl, cl
jne 0x14005737b
cmp r11d, esi
je 0x1400573a0
test r10d, r10d
jne 0x14005735f
mov rax, qword [rax]
jmp 0x14005733a
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
xor ecx, ecx
call rax
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r9d, dword [rcx + r8 + 0x88]
add r9, r8
cmp r9, r8
je 0x14005742f
mov r10d, dword [r9 + 0x18]
test r10d, r10d
je 0x14005742f
mov edi, dword [r9 + 0x20]
dec r10d
lea rcx, [r8 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r8
mov r11d, 0x811c9dc5
mov cl, byte [rdx]
add rdx, r13
test cl, cl
je 0x14005742a
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
add rdx, r13
test cl, cl
jne 0x14005740f
cmp r11d, esi
je 0x140057434
test r10d, r10d
jne 0x1400573f3
mov rax, qword [rax]
jmp 0x1400573ce
mov ecx, dword [r9 + 0x24]
add rcx, r8
movzx edx, word [rcx + r10*2]
mov ecx, dword [r9 + 0x1c]
add rcx, r8
mov eax, dword [rcx + rdx*4]
add rax, r8
xor ecx, ecx
call rax
call fcn.14000a890
call fcn.14000a890
mov rcx, qword [rbp + 0xe40]
xor rcx, rsp
call fcn.140061e40
lea r11, [rsp + 0xf60]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret