Function at 0x1400046b0
Capabilities:
Access peb ldr_data
Encode data using xor
Encrypt data using xtea
Execute anti-debugging instructions
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x128
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
mov ecx, 0x2f0
call fcn.14000d580
mov rdi, rax
mov qword [rbp + 0x70], rax
mov ebx, 0x40
movabs r14, 0x6d1fa1d1b8f0207a
movabs r15, 0x607a402ba49fc1b5
movabs r12, 0x64109174cd3517d6
test rax, rax
je 0x14000588a
mov rcx, rax
call fcn.14000e1c0
lea rax, [0x1400c0b30]
mov qword [rdi], rax
xor r13d, r13d
mov qword [rdi + 0x238], r13
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov r10, qword [0x1401bf1c0]
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x258], esi
lea r9, [rsi + r14]
mov qword [rdi + 0x248], r9
mov r8d, r10d
neg r8d
mov r14d, r10d
and r14d, 0x3f
mov ecx, ebx
mov r11, r9
test r10d, r10d
jle 0x140004788
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x1400047a1
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r11, cl
or r11, rax
imul r11, r15
mov qword [rdi + 0x250], r11
mov ecx, ebx
cmp esi, 0x7fffffff
jb 0x1400047e5
test r8d, r8d
jle 0x1400047d6
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x140004815
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x14000480f
test esi, esi
jle 0x1400047fe
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x140004815
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r11, r9
mov qword [rdi + 0x240], r11
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x274], esi
movabs r9, 0x8308338ef9a01eb8
add r9, rsi
mov qword [rdi + 0x264], r9
mov r8d, r10d
neg r8d
mov r14d, r10d
and r14d, 0x3f
mov ecx, ebx
mov r11, r9
test r10d, r10d
jle 0x140004876
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x14000488f
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r11, cl
or r11, rax
imul r11, r12
mov qword [rdi + 0x26c], r11
mov ecx, ebx
cmp esi, 0x7fffffff
jb 0x1400048d3
test r8d, r8d
jle 0x1400048c4
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x140004903
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x1400048fd
test esi, esi
jle 0x1400048ec
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x140004903
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r9, r11
mov qword [rdi + 0x25c], r9
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x290], esi
movabs r9, 0x9f926e9c9ff12526
add r9, rsi
mov qword [rdi + 0x280], r9
mov r8d, r10d
neg r8d
mov r14d, r10d
and r14d, 0x3f
mov ecx, ebx
mov r11, r9
test r10d, r10d
jle 0x140004964
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x14000497d
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r11, cl
or r11, rax
movabs rax, 0x27287f3bc8cccd73
imul r11, rax
mov qword [rdi + 0x288], r11
mov ecx, ebx
cmp esi, 0x7fffffff
jb 0x1400049cb
test r8d, r8d
jle 0x1400049bc
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x1400049fb
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x1400049f5
test esi, esi
jle 0x1400049e4
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x1400049fb
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r9, r11
mov qword [rdi + 0x278], r9
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x2ac], esi
movabs r9, 0xe58d83449f8cc9e2
add r9, rsi
mov qword [rdi + 0x29c], r9
mov r8d, r10d
neg r8d
mov r14d, r10d
and r14d, 0x3f
mov ecx, ebx
mov r11, r9
test r10d, r10d
jle 0x140004a5c
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x140004a75
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r11, cl
or r11, rax
movabs rax, 0x5391cda94d8e0531
imul r11, rax
mov qword [rdi + 0x2a4], r11
mov ecx, ebx
cmp esi, 0x7fffffff
jb 0x140004ac3
test r8d, r8d
jle 0x140004ab4
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x140004af3
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x140004aed
test esi, esi
jle 0x140004adc
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x140004af3
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r9, r11
mov qword [rdi + 0x294], r9
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x2c8], esi
movabs r9, 0x2bfab1ad897aa3a0
add r9, rsi
mov qword [rdi + 0x2b8], r9
mov r8d, r10d
neg r8d
mov r14d, r10d
and r14d, 0x3f
mov ecx, ebx
mov r11, r9
test r10d, r10d
jle 0x140004b54
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x140004b6d
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r11, cl
or r11, rax
movabs rax, 0x87ee6f58aea6be72
imul r11, rax
mov qword [rdi + 0x2c0], r11
mov ecx, ebx
cmp esi, 0x7fffffff
jb 0x140004bbb
test r8d, r8d
jle 0x140004bac
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x140004beb
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x140004be5
test esi, esi
jle 0x140004bd4
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x140004beb
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r9, r11
mov qword [rdi + 0x2b0], r9
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
add r10, rcx
mov qword [0x1401bf1c0], r10
mov r11d, r10d
mov dword [rdi + 0x2e4], r11d
movabs r9, 0xb884640e61335cce
add r9, r11
mov qword [rdi + 0x2d4], r9
mov r8d, r10d
neg r8d
mov esi, r10d
and esi, 0x3f
mov ecx, ebx
test r10d, r10d
mov r10, r9
jle 0x140004c52
sub ecx, esi
mov rdx, r9
shr rdx, cl
movzx ecx, sil
shl r10, cl
or r10, rdx
jmp 0x140004c6b
mov eax, r8d
and eax, 0x3f
mov edx, eax
sub ecx, eax
mov rax, r9
shl rax, cl
movzx ecx, dl
shr r10, cl
or r10, rax
movabs rax, 0x4651641903aaaaf
imul r10, rax
mov qword [rdi + 0x2dc], r10
mov ecx, ebx
cmp r11d, 0x7fffffff
jb 0x140004cb9
test r8d, r8d
jle 0x140004cab
and r8d, 0x3f
mov edx, r8d
sub ecx, r8d
mov r8, r9
shr r8, cl
movzx ecx, dl
shl r9, cl
or r9, r8
jmp 0x140004ce9
sub ecx, esi
mov rax, r9
shl rax, cl
movzx ecx, sil
jmp 0x140004ce3
test r11d, r11d
jle 0x140004cd2
sub ecx, esi
mov rdx, r9
shr rdx, cl
movzx ecx, sil
shl r9, cl
or r9, rdx
jmp 0x140004ce9
and r8d, 0x3f
sub ecx, r8d
mov rax, r9
shl rax, cl
movzx ecx, r8b
shr r9, cl
or r9, rax
xor r9, r10
mov qword [rdi + 0x2cc], r9
mov byte [rdi + 0x2e8], r13b
rdtsc
shl rdx, 0x20
or rax, rdx
mov r8, rax
mov edx, 0x10
lea rcx, [0x1401bf198]
call fcn.14002eab0
rdtsc
shl rdx, 0x20
or rax, rdx
mov r8, rax
mov edx, 0x10
lea rcx, [0x1401bf1a8]
call fcn.14002eab0
movups xmm0, xmmword [0x1401bf198]
movaps xmmword [rbp - 0x80], xmm0
mov esi, r13d
mov r12d, r13d
lea r11, str.DXBC
mov r14d, dword [rbp - 0x7c]
mov r15d, dword [rbp - 0x80]
nop dword [rax]
nop dword [rax + rax]
movdqa xmmword [rsp + 0x60], xmm0
mov r9d, dword [r11]
mov r10d, dword [r11 + 4]
mov r8d, r13d
mov ebx, 4
nop word [rax + rax]
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
sub rbx, 1
jne 0x140004d80
mov dword [r11], r9d
mov dword [r11 + 4], r10d
add r15d, r12d
mov dword [rbp - 0x80], r15d
add r14d, r15d
mov dword [rbp - 0x7c], r14d
add dword [rbp - 0x78], r14d
add dword [rbp - 0x74], esi
inc esi
add r12d, 0x29c
add r11, 8
cmp esi, 0x53
jae 0x1400052d1
movaps xmm0, xmmword [rbp - 0x80]
jmp 0x140004d60
movups xmm0, xmmword [0x1401bf1a8]
movaps xmmword [rbp - 0x80], xmm0
mov esi, r13d
mov r12d, r13d
lea r11, str.DXBCSV_ve
mov r14d, dword [rbp - 0x7c]
mov r15d, dword [rbp - 0x80]
mov ebx, 0x40
nop word [rax + rax]
movdqa xmmword [rsp + 0x60], xmm0
mov r9d, dword [r11]
mov r10d, dword [r11 + 4]
mov r8d, r13d
mov edi, 4
nop word [rax + rax]
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
mov edx, r10d
shr edx, 5
mov eax, r10d
shl eax, 4
xor edx, eax
add edx, r10d
mov eax, r8d
and eax, 3
mov ecx, dword [rsp + rax*4 + 0x60]
add ecx, r8d
xor edx, ecx
add r9d, edx
add r8d, 0x9e3779b9
mov ecx, r9d
shr ecx, 5
mov eax, r9d
shl eax, 4
xor ecx, eax
add ecx, r9d
mov eax, r8d
shr rax, 0xb
and eax, 3
mov eax, dword [rsp + rax*4 + 0x60]
add eax, r8d
xor ecx, eax
add r10d, ecx
sub rdi, 1
jne 0x140005320
mov dword [r11], r9d
mov dword [r11 + 4], r10d
add r15d, r12d
mov dword [rbp - 0x80], r15d
add r14d, r15d
mov dword [rbp - 0x7c], r14d
add dword [rbp - 0x78], r14d
add dword [rbp - 0x74], esi
inc esi
add r12d, 0x4d0
add r11, 8
cmp esi, 0x9a
jae 0x140005874
movaps xmm0, xmmword [rbp - 0x80]
jmp 0x140005300
cmp qword [0x1401bf190], r13
mov rdi, qword [rbp + 0x70]
jne 0x140005890
xor ecx, ecx
call fcn.14001ed40
jmp 0x140005890
xor r13d, r13d
mov edi, r13d
mov qword [0x1401bd148], rdi
mov rax, qword [0x1401bf1c8]
mov qword [rax + 0x250], rdi
mov dword [rax + 0x258], r13d
mov dword [rax + 0x25c], 0x41b80000
mov r15d, r13d
mov r14d, 0xd308365c
mov esi, r14d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rbp - 0x80], xmm0
movd ecx, xmm0
sub cx, 8
test r15d, r15d
je 0x140005943
mov r9, qword [rbp - 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14000593a
nop
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 0x140005910
cmp r10d, r15d
jne 0x140005aa8
mov rdi, qword [rax + 0x30]
test rdi, rdi
je 0x140005ab5
movsxd rcx, dword [rdi + 0x3c]
mov rdx, qword [rcx + rdi + 0x88]
mov rcx, rdx
shr rcx, 0x20
mov qword [rbp + 0x88], rcx
mov r12d, edx
add r12, rdi
cmp r12, rdi
je 0x140005aa8
mov r11d, dword [r12 + 0x18]
test r11d, r11d
je 0x140005aa8
mov edx, dword [r12 + 0x20]
nop dword [rax]
dec r11d
lea rcx, [rdi + r11*4]
mov r9d, dword [rcx + rdx]
add r9, rdi
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x1400059e0
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 0x1400059b0
mov edx, dword [r12 + 0x20]
cmp r10d, esi
je 0x1400059f2
test r11d, r11d
jne 0x140005990
mov rax, qword [rax]
jmp 0x1400058e0
mov ecx, dword [r12 + 0x24]
add rcx, rdi
movzx edx, word [rcx + r11*2]
mov ecx, dword [r12 + 0x1c]
add rcx, rdi
mov r8d, dword [rcx + rdx*4]
add r8, rdi
cmp r8, r12
jbe 0x140005ab0
mov rax, qword [rbp + 0x88]
add rax, r12
cmp r8, rax
jae 0x140005ab0
mov esi, 0x811c9dc5
mov r15d, esi
movzx edx, byte [r8]
cmp dl, 0x2e
je 0x140005a67
nop dword [rax + rax]
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 r8
movzx edx, byte [r8]
cmp dl, 0x2e
jne 0x140005a40
inc r8
movzx edx, byte [r8]
test dl, dl
je 0x140005a97
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
lea r8, [r8 + 1]
movzx edx, byte [r8]
test dl, dl
jne 0x140005a72
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1400058e0
xor r13d, r13d
jmp 0x140005abb
xor r13d, r13d
mov r8d, r13d
mov edx, 0x7f00
xor ecx, ecx
call r8
mov esi, r13d
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 [rbp - 0x80], xmm0
movd ecx, xmm0
sub cx, 8
test esi, esi
je 0x140005b43
mov r9, qword [rbp - 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x140005b3a
nop dword [rax]
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 0x140005b10
cmp r10d, esi
jne 0x140005ca8
mov rdi, qword [rax + 0x30]
test rdi, rdi
je 0x140005cb5
movsxd rcx, dword [rdi + 0x3c]
mov rdx, qword [rcx + rdi + 0x88]
mov rcx, rdx
shr rcx, 0x20
mov qword [rbp + 0x88], rcx
mov r12d, edx
add r12, rdi
cmp r12, rdi
je 0x140005ca8
mov r11d, dword [r12 + 0x18]
test r11d, r11d
je 0x140005ca8
mov r13d, dword [r12 + 0x20]
nop dword [rax]
dec r11d
lea rcx, [rdi + r11*4]
mov r9d, dword [rcx + r13]
add r9, rdi
mov r10d, 0x811c9dc5
movzx r8d, byte [r9]
inc r9
test r8b, r8b
je 0x140005bdb
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 0x140005bb0
cmp r10d, r14d
je 0x140005bed
test r11d, r11d
jne 0x140005b90
mov rax, qword [rax]
jmp 0x140005ae0
mov ecx, dword [r12 + 0x24]
add rcx, rdi
movzx edx, word [rcx + r11*2]
mov ecx, dword [r12 + 0x1c]
add rcx, rdi
mov r8d, dword [rcx + rdx*4]
add r8, rdi
cmp r8, r12
jbe 0x140005cb0
mov rax, qword [rbp + 0x88]
add rax, r12
cmp r8, rax
jae 0x140005cb0
mov esi, 0x811c9dc5
mov r14d, esi
movzx edx, byte [r8]
cmp dl, 0x2e
je 0x140005c65
nop word [rax + rax]
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
movzx edx, byte [r8]
cmp dl, 0x2e
jne 0x140005c40
inc r8
movzx edx, byte [r8]
test dl, dl
je 0x140005c97
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, r14d
imul r14d, ecx, 0x1000193
lea r8, [r8 + 1]
movzx edx, byte [r8]
test dl, dl
jne 0x140005c70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140005ae0
xor r13d, r13d
jmp 0x140005cbb
xor r13d, r13d
mov r8d, r13d
mov edx, 0x7f01
xor ecx, ecx
call r8
mov rdi, qword [rbp + 0x78]
mov qword [0x1401bd158], rdi
xorps xmm0, xmm0
movups xmmword [rbp - 0x6c], xmm0
movups xmmword [rbp - 0x5c], xmm0
movups xmmword [rbp - 0x4c], xmm0
movups xmmword [rbp - 0x3c], xmm0
mov qword [rbp - 0x30], 2
mov dword [rbp - 0x48], 2
mov qword [rbp - 0x70], 0
mov dword [rbp - 0x60], 0x1c
mov dword [rbp - 0x68], 0x3c
mov dword [rbp - 0x64], 1
mov dword [rbp - 0x4c], 0x20
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x54], 1
mov qword [rbp - 0x38], 1
lea rax, [0x1401bd168]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x78]
mov qword [rsp + 0x50], rax
lea rax, [0x1401bd150]
mov qword [rsp + 0x48], rax
lea rax, [0x1401bd140]
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 7
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 1]
xor ecx, ecx
call qword [sym.imp.d3d11.dll_D3D11CreateDeviceAndSwapChain]
mov rcx, qword [0x1401bd140]
test eax, eax
je 0x140005fb7
test rcx, rcx
je 0x140005d9e
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [0x1401bd168]
test rcx, rcx
je 0x140005db0
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [0x1401bd150]
test rcx, rcx
je 0x140005dc2
mov rax, qword [rcx]
call qword [rax + 0x10]
mov esi, r13d
mov edi, 0xca760f46
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 [rbp - 0x80], xmm0
movd ecx, xmm0
sub cx, 8
test esi, esi
je 0x140005e43
mov r9, qword [rbp - 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x140005e3a
nop dword [rax]
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 0x140005e10
cmp r10d, esi
jne 0x140005f96
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x140005f9e
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov rcx, rdx
shr rcx, 0x20
mov qword [rbp + 0x78], rcx
mov r15d, edx
add r15, rbx
cmp r15, rbx
je 0x140005f96
mov r11d, dword [r15 + 0x18]
test r11d, r11d
je 0x140005f96
mov r12d, dword [r15 + 0x20]
nop word [rax + rax]
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 0x140005edb
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 0x140005eb0
cmp r10d, edi
je 0x140005eed
test r11d, r11d
jne 0x140005e90
mov rax, qword [rax]
jmp 0x140005de0
mov ecx, dword [r15 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r15 + 0x1c]
add rcx, rbx
mov r8d, dword [rcx + rdx*4]
add r8, rbx
cmp r8, r15
jbe 0x140005fa1
mov rax, qword [rbp + 0x78]
add rax, r15
cmp r8, rax
jae 0x140005fa1
mov esi, 0x811c9dc5
mov edi, esi
movzx edx, byte [r8]
cmp dl, 0x2e
je 0x140005f55
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
movzx edx, byte [r8]
cmp dl, 0x2e
jne 0x140005f30
inc r8
movzx edx, byte [r8]
test dl, dl
je 0x140005f85
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 r8, [r8 + 1]
movzx edx, byte [r8]
test dl, dl
jne 0x140005f60
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140005de0
mov r8, r13
mov rdx, qword [0x1401bd108]
mov rcx, qword [0x1401bd130]
call r8
jmp 0x140006bbb
mov qword [rbp + 0x70], r13
mov rax, qword [rcx]
mov r9, qword [rax + 0x30]
lea r8, [rbp + 0x70]
lea rdx, [0x1400b3ce0]
call r9
test eax, eax
js 0x140005ff1
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
mov r8d, 3
mov rdx, rdi
call qword [rax + 0x40]
mov rcx, qword [rbp + 0x70]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [0x1401bd140]
mov rax, qword [rcx]
lea r9, [rbp + 0x80]
lea r8, [0x1400b3cf0]
xor edx, edx
call qword [rax + 0x48]
mov rsi, qword [rbp + 0x80]
mov rdi, qword [0x1401bd148]
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov rdx, qword [0x1401bf1c0]
add rdx, rcx
mov qword [0x1401bf1c0], rdx
mov dword [rdi + 0x258], edx
mov r12d, edx
neg r12d
mov eax, edx
and eax, 0x3f
mov r15d, eax
mov r9d, r12d
and r9d, 0x3f
mov ecx, ebx
mov r8, rsi
test r12d, r12d
jle 0x14000606f
sub ecx, r9d
shr r8, cl
movzx ecx, r9b
mov rax, rsi
shl rax, cl
jmp 0x14000607d
sub ecx, eax
shl r8, cl
movzx ecx, al
mov rax, rsi
shr rax, cl
or r8, rax
mov r14, r9
mov r10d, edx
movabs rax, 0x6d1fa1d1b8f0207a
add r10, rax
xor r10, r8
mov qword [rdi + 0x248], r10
mov r11d, ebx
sub r11d, r9d
mov r9, r10
test edx, edx
jle 0x1400060c4
mov eax, edx
and eax, 0x3f
mov r15d, eax
mov ecx, ebx
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r10
shl rax, cl
jmp 0x1400060d3
mov ecx, r11d
shl r9, cl
mov rax, r10
mov rcx, r14
shr rax, cl
or r9, rax
movabs rax, 0x607a402ba49fc1b5
imul r9, rax
mov qword [rdi + 0x250], r9
mov r8, rsi
xor r8, r10
cmp edx, 0x7fffffff
jb 0x140006120
mov rdx, r8
test r12d, r12d
jle 0x14000610f
mov rcx, r14
shl rdx, cl
mov ecx, r11d
shr r8, cl
jmp 0x140006141
mov ecx, ebx
sub ecx, r15d
shl rdx, cl
movzx ecx, r15b
shr r8, cl
jmp 0x140006141
test edx, edx
mov rdx, r8
jle 0x140006135
mov ecx, ebx
sub ecx, r15d
shr rdx, cl
movzx ecx, r15b
jmp 0x14000613e
mov rcx, r14
shr rdx, cl
mov ecx, r11d
shl r8, cl
or rdx, r8
xor r9, rdx
mov qword [rdi + 0x240], r9
mov qword [rbp + 0x78], r13
mov rax, qword [rsi]
lea rdx, [rbp + 0x78]
mov rcx, rsi
call qword [rax + 0x18]
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov r10, qword [0x1401bf1c0]
add r10, rcx
mov qword [0x1401bf1c0], r10
mov dword [rdi + 0x274], r10d
mov r15d, r10d
neg r15d
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov r8d, r15d
and r8d, 0x3f
mov ecx, ebx
mov rdx, qword [rbp + 0x78]
mov r9, rdx
test r15d, r15d
jle 0x1400061b8
sub ecx, r8d
shr r9, cl
movzx ecx, r8b
mov rax, rdx
shl rax, cl
jmp 0x1400061c6
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, rdx
shr rax, cl
or r9, rax
mov rsi, r8
mov r8d, r10d
movabs rax, 0x7cf7cc71065fe148
sub r8, rax
xor r8, r9
mov qword [rdi + 0x264], r8
mov r11d, ebx
sub r11d, esi
mov r9, r8
test r10d, r10d
jle 0x140006209
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov ecx, ebx
sub ecx, eax
shr r9, cl
movzx ecx, al
jmp 0x140006212
mov rcx, rsi
shr r9, cl
mov ecx, r11d
mov rax, r8
shl rax, cl
or r9, rax
movabs rax, 0x64109174cd3517d6
imul r9, rax
mov qword [rdi + 0x26c], r9
xor rdx, r8
mov r8, rdx
cmp r10d, 0x7fffffff
jb 0x140006260
test r15d, r15d
jle 0x14000624f
mov ecx, r11d
shr r8, cl
mov rcx, rsi
jmp 0x14000627c
mov ecx, ebx
sub ecx, r14d
shl r8, cl
movzx ecx, r14b
shr rdx, cl
jmp 0x14000627f
test r10d, r10d
jle 0x140006273
mov ecx, ebx
sub ecx, r14d
shr r8, cl
movzx ecx, r14b
jmp 0x14000627c
mov rcx, rsi
shr r8, cl
mov ecx, r11d
shl rdx, cl
or r8, rdx
xor r8, r9
mov qword [rdi + 0x25c], r8
mov r11d, r10d
mov r8, r9
xor r8, qword [rdi + 0x25c]
mov ecx, ebx
mov r9, r8
cmp r10d, 0x7fffffff
jb 0x1400062ca
neg r10d
test r11d, r11d
jle 0x1400062c5
mov eax, r11d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x1400062eb
mov eax, r10d
jmp 0x1400062da
neg r10d
test r10d, r10d
jle 0x1400062d7
mov eax, r10d
jmp 0x1400062b2
mov eax, r11d
and eax, 0x3f
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, r8
shr rax, cl
or r9, rax
mov rsi, qword [rdi + 0x264]
xor r9, rsi
test r9, r9
je 0x140006653
mov qword [rbp + 0x70], r13
mov ecx, ebx
mov r9, r8
cmp r11d, 0x7fffffff
jb 0x14000637e
mov eax, r11d
test r11d, r11d
jle 0x14000632e
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x140006341
neg eax
and eax, 0x3f
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, r8
shr rax, cl
or r9, rax
xor r9, rsi
mov rax, qword [r9]
mov r14, qword [rax + 0x140]
mov ecx, ebx
mov r9, r8
test r11d, r11d
jle 0x14000636e
and r11d, 0x3f
sub ecx, r11d
shr r9, cl
movzx ecx, r11b
shl r8, cl
jmp 0x1400063eb
and r10d, 0x3f
sub ecx, r10d
shl r9, cl
movzx ecx, r10b
jmp 0x1400063e8
test r10d, r10d
jle 0x140006399
mov eax, r10d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x1400063ad
mov eax, r11d
and eax, 0x3f
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, r8
shr rax, cl
or r9, rax
xor r9, rsi
mov rax, qword [r9]
mov r14, qword [rax + 0x140]
mov ecx, ebx
mov r9, r8
test r10d, r10d
jle 0x1400063da
and r10d, 0x3f
sub ecx, r10d
shr r9, cl
movzx ecx, r10b
shl r8, cl
jmp 0x1400063eb
and r11d, 0x3f
sub ecx, r11d
shl r9, cl
movzx ecx, r11b
shr r8, cl
or r9, r8
xor r9, rsi
lea rdx, [rbp + 0x70]
mov rcx, r9
call r14
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov r10, qword [0x1401bf1c0]
add r10, rcx
mov qword [0x1401bf1c0], r10
mov dword [rdi + 0x290], r10d
mov r15d, r10d
neg r15d
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov r8d, r15d
and r8d, 0x3f
mov ecx, ebx
mov rdx, qword [rbp + 0x70]
mov r9, rdx
test r15d, r15d
jle 0x140006454
sub ecx, r8d
shr r9, cl
movzx ecx, r8b
mov rax, rdx
shl rax, cl
jmp 0x140006462
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, rdx
shr rax, cl
or r9, rax
mov rsi, r8
mov r8d, r10d
movabs rax, 0x606d9163600edada
sub r8, rax
xor r8, r9
mov qword [rdi + 0x280], r8
mov r11d, ebx
sub r11d, esi
mov r9, r8
test r10d, r10d
jle 0x1400064a5
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov ecx, ebx
sub ecx, eax
shr r9, cl
movzx ecx, al
jmp 0x1400064ae
mov rcx, rsi
shr r9, cl
mov ecx, r11d
mov rax, r8
shl rax, cl
or r9, rax
movabs rax, 0x27287f3bc8cccd73
imul r9, rax
mov qword [rdi + 0x288], r9
xor rdx, r8
mov r8, rdx
cmp r10d, 0x7fffffff
jb 0x1400064f9
test r15d, r15d
jle 0x1400064eb
mov rcx, rsi
shl r8, cl
mov ecx, r11d
jmp 0x140006518
mov ecx, ebx
sub ecx, r14d
shl r8, cl
movzx ecx, r14b
jmp 0x140006518
test r10d, r10d
jle 0x14000650f
mov ecx, ebx
sub ecx, r14d
shr r8, cl
movzx ecx, r14b
shl rdx, cl
jmp 0x14000651b
mov ecx, r11d
shl r8, cl
mov rcx, rsi
shr rdx, cl
or r8, rdx
xor r8, r9
mov qword [rdi + 0x278], r8
mov r8, r9
xor r8, qword [rdi + 0x278]
mov r11d, r10d
neg r11d
mov ecx, ebx
mov r9, r8
cmp r10d, 0x7fffffff
jb 0x140006566
test r10d, r10d
jle 0x140006561
mov eax, r10d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x140006584
mov eax, r11d
jmp 0x140006573
test r11d, r11d
jle 0x140006570
mov eax, r11d
jmp 0x14000654e
mov eax, r10d
and eax, 0x3f
sub ecx, eax
shl r9, cl
movzx ecx, al
mov rax, r8
shr rax, cl
or r9, rax
mov rsi, qword [rdi + 0x280]
xor r9, rsi
test r9, r9
je 0x140006653
mov ecx, ebx
mov r9, r8
cmp r10d, 0x7fffffff
jb 0x140006613
test r10d, r10d
jle 0x1400065c0
and r10d, 0x3f
sub ecx, r10d
shr r9, cl
movzx ecx, r10b
shl r8, cl
jmp 0x1400065d4
neg r10d
and r10d, 0x3f
sub ecx, r10d
shl r9, cl
movzx ecx, r10b
shr r8, cl
or r9, r8
xor r9, rsi
mov eax, dword [rdi + 0x274]
mov rdx, qword [rdi + 0x26c]
xor rdx, qword [rdi + 0x25c]
mov r8, rdx
cmp eax, 0x7fffffff
jb 0x1400066a1
test eax, eax
jle 0x14000662b
and eax, 0x3f
sub ebx, eax
movzx ecx, bl
shr r8, cl
movzx ecx, al
shl rdx, cl
jmp 0x14000663e
test r11d, r11d
jle 0x1400065c3
and r11d, 0x3f
sub ecx, r11d
shr r9, cl
movzx ecx, r11b
shl r8, cl
jmp 0x1400065d4
neg eax
and eax, 0x3f
sub ebx, eax
movzx ecx, bl
shl r8, cl
movzx ecx, al
shr rdx, cl
or r8, rdx
xor r8, qword [rdi + 0x264]
mov rdx, r9
mov rcx, r8
call fcn.140026090
mov rcx, qword [rbp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov ecx, 0x41800000
call fcn.14002fab0
movaps xmm7, xmm0
mov rax, qword [0x1401bd0e0]
mulss xmm7, dword [rax + 0x1c]
movaps xmm0, xmm7
call fcn.14000e0a0
movaps xmm6, xmm7
subss xmm6, xmm0
mov ecx, 0x3f000000
call fcn.14002fab0
comiss xmm0, xmm6
jbe 0x1400066be
movaps xmm0, xmm7
call fcn.14000e0a0
jmp 0x140006715
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14000662d
and ecx, 0x3f
mov eax, ecx
sub ebx, ecx
movzx ecx, bl
shr r8, cl
movzx ecx, al
shl rdx, cl
jmp 0x14000663e
movss dword [rbp + 0x78], xmm7
mov eax, dword [rbp + 0x78]
mov ecx, eax
shr ecx, 0x17
movzx ecx, cl
sub ecx, 0x7f
cmp ecx, 0x17
jge 0x140006718
test ecx, ecx
js 0x1400066f9
mov edx, 0x7fffff
sar edx, cl
test eax, edx
je 0x140006718
test eax, eax
js 0x1400066eb
add eax, edx
not edx
and eax, edx
mov dword [rbp + 0x78], eax
movss xmm7, dword [rbp + 0x78]
jmp 0x140006718
test eax, eax
jns 0x140006704
mov ecx, 0x80000000
jmp 0x140006710
test eax, 0x7fffffff
je 0x140006718
mov ecx, 0x3f800000
call fcn.14002fab0
movaps xmm7, xmm0
movabs rax, 0x9de12663402f7799
mov qword [rbp - 0x20], rax
movabs rax, 0x871ffa22b79ba2fe
mov qword [rbp - 0x18], rax
movabs rdx, 0xf1f60fed0b17ca9b
mov qword [rbp - 0x10], rdx
movabs rcx, 0x436a8bc66a143f0
mov qword [rbp - 8], rcx
movabs rax, 0x9d892609405c77f4
mov qword [rsp + 0x60], rax
movabs rax, 0x877cfa56b7efa2d0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
movdqa xmm0, xmmword [rbp - 0x20]
pxor xmm0, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [rsp + 0x70]
pxor xmm1, xmmword [rbp - 0x10]
movdqa xmmword [rsp + 0x70], xmm1
movaps xmm2, xmm7
lea rdx, [rsp + 0x60]
call fcn.14001b900
mov qword [0x1401bd170], rax
mov rcx, qword [0x1401bd148]
mov rax, qword [rcx]
movss xmm0, dword [0x1400c2980]
movss xmm1, dword [0x1400c297c]
unpcklps xmm1, xmm0
movq r8, xmm1
lea rdx, [0x1400cfc70]
call qword [rax + 0x18]
mov qword [0x1401bd160], rax
mov esi, r13d
mov edi, 0x860861c0
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 [rbp - 0x80], xmm0
movd ecx, xmm0
sub cx, 8
test esi, esi
je 0x140006863
mov r9, qword [rbp - 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x14000685a
nop dword [rax]
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 0x140006830
cmp r10d, esi
jne 0x1400069b6
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x1400069be
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov rcx, rdx
shr rcx, 0x20
mov qword [rbp + 0x78], rcx
mov r15d, edx
add r15, rbx
cmp r15, rbx
je 0x1400069b6
mov r11d, dword [r15 + 0x18]
test r11d, r11d
je 0x1400069b6
mov r12d, dword [r15 + 0x20]
nop word [rax + rax]
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 0x1400068fb
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 0x1400068d0
cmp r10d, edi
je 0x14000690d
test r11d, r11d
jne 0x1400068b0
mov rax, qword [rax]
jmp 0x140006800
mov ecx, dword [r15 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r15 + 0x1c]
add rcx, rbx
mov r8d, dword [rcx + rdx*4]
add r8, rbx
cmp r8, r15
jbe 0x1400069c1
mov rax, qword [rbp + 0x78]
add rax, r15
cmp r8, rax
jae 0x1400069c1
mov esi, 0x811c9dc5
mov edi, esi
movzx edx, byte [r8]
cmp dl, 0x2e
je 0x140006975
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
movzx edx, byte [r8]
cmp dl, 0x2e
jne 0x140006950
inc r8
movzx edx, byte [r8]
test dl, dl
je 0x1400069a5
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 r8, [r8 + 1]
movzx edx, byte [r8]
test dl, dl
jne 0x140006980
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x140006800
mov r8, r13
mov edx, 1
mov rcx, qword [0x1401bd158]
call r8
mov esi, r13d
mov edi, 0x547ab68
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 [rbp - 0x80], xmm0
movd ecx, xmm0
sub cx, 8
test esi, esi
je 0x140006a53
mov r9, qword [rbp - 0x78]
movzx ecx, cx
shr rcx, 1
lea r11, [r9 + rcx*2]
mov r10d, 0x811c9dc5
cmp r9, r11
je 0x140006a4a
nop dword [rax]
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 0x140006a20
cmp r10d, esi
jne 0x140006ba6
mov rbx, qword [rax + 0x30]
test rbx, rbx
je 0x140006bae
movsxd rcx, dword [rbx + 0x3c]
mov rdx, qword [rcx + rbx + 0x88]
mov rcx, rdx
shr rcx, 0x20
mov qword [rbp + 0x78], rcx
mov r15d, edx
add r15, rbx
cmp r15, rbx
je 0x140006ba6
mov r11d, dword [r15 + 0x18]
test r11d, r11d
je 0x140006ba6
mov r12d, dword [r15 + 0x20]
nop word [rax + rax]
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 0x140006aeb
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 0x140006ac0
cmp r10d, edi
je 0x140006afd
test r11d, r11d
jne 0x140006aa0
mov rax, qword [rax]
jmp 0x1400069f0
mov ecx, dword [r15 + 0x24]
add rcx, rbx
movzx edx, word [rcx + r11*2]
mov ecx, dword [r15 + 0x1c]
add rcx, rbx
mov r8d, dword [rcx + rdx*4]
add r8, rbx
cmp r8, r15
jbe 0x140006bb1
mov rax, qword [rbp + 0x78]
add rax, r15
cmp r8, rax
jae 0x140006bb1
mov esi, 0x811c9dc5
mov edi, esi
movzx edx, byte [r8]
cmp dl, 0x2e
je 0x140006b65
movsx eax, dl
sub dl, 0x41
mov ecx, eax
or ecx, 0x20
cmp dl, 0x19
cmova ecx, eax
xor ecx, esi
imul esi, ecx, 0x1000193
inc r8
movzx edx, byte [r8]
cmp dl, 0x2e
jne 0x140006b40
inc r8
movzx edx, byte [r8]
test dl, dl
je 0x140006b95
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 r8, [r8 + 1]
movzx edx, byte [r8]
test dl, dl
jne 0x140006b70
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov rax, qword [rax]
jmp 0x1400069f0
mov r8, r13
mov rcx, qword [0x1401bd158]
call r8
movaps xmm6, xmmword [rsp + 0x110]
movaps xmm7, xmmword [rsp + 0x100]
add rsp, 0x128
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret