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.14000d720
mov rdi, rax
mov qword [rbp + 0x70], rax
mov ebx, 0x40
movabs r15, 0x9789636d6fdbb546
movabs r12, 0x7a542714bc6e18bb
test rax, rax
je 0x14000588a
mov rcx, rax
call fcn.14000e360
lea rax, [0x1400c1b30]
mov qword [rdi], rax
xor r13d, r13d
mov qword [rdi + 0x238], r13
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov r10, qword [0x1401c01c0]
add r10, rcx
mov esi, r10d
mov dword [rdi + 0x258], esi
movabs r9, 0xbaed8b2307d3bf95
add r9, rsi
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 0x140004787
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x1400047a0
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 0x1400047e4
test r8d, r8d
jle 0x1400047d5
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 0x140004814
sub ecx, r14d
mov rax, r9
shl rax, cl
movzx ecx, r14b
jmp 0x14000480e
test esi, esi
jle 0x1400047fd
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r9, cl
or r9, rdx
jmp 0x140004814
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
lea r9, [rsi + r12]
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 0x14000486c
sub ecx, r14d
mov rdx, r9
shr rdx, cl
movzx ecx, r14b
shl r11, cl
or r11, rdx
jmp 0x140004885
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, 0xca1dd2166a196d91
imul r11, rax
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, 0xabed1a944ea19161
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, 0x99ddac683aadcadc
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, 0x36624a96257926fd
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, 0x7bb49f05ded26de2
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, 0xa6c38737f61bade3
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, 0x9e6f282d0f9a300d
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 [0x1401c01c0], r10
mov r11d, r10d
mov dword [rdi + 0x2e4], r11d
movabs r9, 0xf73b1455f11da329
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, 0xfd2381ef4850f688
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, [0x1401c0198]
call fcn.14002ec50
rdtsc
shl rdx, 0x20
or rax, rdx
mov r8, rax
mov edx, 0x10
lea rcx, [0x1401c01a8]
call fcn.14002ec50
movups xmm0, xmmword [0x1401c0198]
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 [0x1401c01a8]
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 [0x1401c0190], r13
mov rdi, qword [rbp + 0x70]
jne 0x140005890
xor ecx, ecx
call fcn.14001eee0
jmp 0x140005890
xor r13d, r13d
mov edi, r13d
mov qword [0x1401be148], rdi
mov rax, qword [0x1401c01c8]
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 [0x1401be158], 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, [0x1401be168]
mov qword [rsp + 0x58], rax
lea rax, [rbp + 0x78]
mov qword [rsp + 0x50], rax
lea rax, [0x1401be150]
mov qword [rsp + 0x48], rax
lea rax, [0x1401be140]
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 [0x1401be140]
test eax, eax
je 0x140005fb9
test rcx, rcx
je 0x140005d9e
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [0x1401be168]
test rcx, rcx
je 0x140005db0
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rcx, qword [0x1401be150]
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 [0x1401be108]
mov rcx, qword [0x1401be130]
call r8
xor al, al
jmp 0x140006bbd
mov qword [rbp + 0x70], r13
mov rax, qword [rcx]
mov r9, qword [rax + 0x30]
lea r8, [rbp + 0x70]
lea rdx, [0x1400b4ce0]
call r9
test eax, eax
js 0x140005ff3
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 [0x1401be140]
mov rax, qword [rcx]
lea r9, [rbp + 0x80]
lea r8, [0x1400b4cf0]
xor edx, edx
call qword [rax + 0x48]
mov rsi, qword [rbp + 0x80]
mov rdi, qword [0x1401be148]
mov rax, qword [rbp + 0x68]
imul rcx, rax, 0x34124c
mov rdx, qword [0x1401c01c0]
add rdx, rcx
mov qword [0x1401c01c0], 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 0x140006071
sub ecx, r9d
shr r8, cl
movzx ecx, r9b
mov rax, rsi
shl rax, cl
jmp 0x14000607f
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, 0x451274dcf82c406b
sub r10, rax
xor r10, r8
mov qword [rdi + 0x248], r10
mov r11d, ebx
sub r11d, r9d
mov r9, r10
test edx, edx
jle 0x1400060c6
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 0x1400060d5
mov ecx, r11d
shl r9, cl
mov rax, r10
mov rcx, r14
shr rax, cl
or r9, rax
movabs rax, 0x9789636d6fdbb546
imul r9, rax
mov qword [rdi + 0x250], r9
mov r8, rsi
xor r8, r10
cmp edx, 0x7fffffff
jb 0x140006122
mov rdx, r8
test r12d, r12d
jle 0x140006111
mov rcx, r14
shl rdx, cl
mov ecx, r11d
shr r8, cl
jmp 0x140006143
mov ecx, ebx
sub ecx, r15d
shl rdx, cl
movzx ecx, r15b
shr r8, cl
jmp 0x140006143
test edx, edx
mov rdx, r8
jle 0x140006137
mov ecx, ebx
sub ecx, r15d
shr rdx, cl
movzx ecx, r15b
jmp 0x140006140
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 [0x1401c01c0]
add r10, rcx
mov qword [0x1401c01c0], 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 0x1400061ba
sub ecx, r8d
shr r9, cl
movzx ecx, r8b
mov rax, rdx
shl rax, cl
jmp 0x1400061c8
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, 0x7a542714bc6e18bb
add r8, rax
xor r8, r9
mov qword [rdi + 0x264], r8
mov r11d, ebx
sub r11d, esi
mov r9, r8
test r10d, r10d
jle 0x14000620b
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov ecx, ebx
sub ecx, eax
shr r9, cl
movzx ecx, al
jmp 0x140006214
mov rcx, rsi
shr r9, cl
mov ecx, r11d
mov rax, r8
shl rax, cl
or r9, rax
movabs rax, 0xca1dd2166a196d91
imul r9, rax
mov qword [rdi + 0x26c], r9
xor rdx, r8
mov r8, rdx
cmp r10d, 0x7fffffff
jb 0x140006262
test r15d, r15d
jle 0x140006251
mov ecx, r11d
shr r8, cl
mov rcx, rsi
jmp 0x14000627e
mov ecx, ebx
sub ecx, r14d
shl r8, cl
movzx ecx, r14b
shr rdx, cl
jmp 0x140006281
test r10d, r10d
jle 0x140006275
mov ecx, ebx
sub ecx, r14d
shr r8, cl
movzx ecx, r14b
jmp 0x14000627e
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 0x1400062cc
neg r10d
test r11d, r11d
jle 0x1400062c7
mov eax, r11d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x1400062ed
mov eax, r10d
jmp 0x1400062dc
neg r10d
test r10d, r10d
jle 0x1400062d9
mov eax, r10d
jmp 0x1400062b4
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 0x140006655
mov qword [rbp + 0x70], r13
mov ecx, ebx
mov r9, r8
cmp r11d, 0x7fffffff
jb 0x140006380
mov eax, r11d
test r11d, r11d
jle 0x140006330
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x140006343
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 0x140006370
and r11d, 0x3f
sub ecx, r11d
shr r9, cl
movzx ecx, r11b
shl r8, cl
jmp 0x1400063ed
and r10d, 0x3f
sub ecx, r10d
shl r9, cl
movzx ecx, r10b
jmp 0x1400063ea
test r10d, r10d
jle 0x14000639b
mov eax, r10d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x1400063af
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 0x1400063dc
and r10d, 0x3f
sub ecx, r10d
shr r9, cl
movzx ecx, r10b
shl r8, cl
jmp 0x1400063ed
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 [0x1401c01c0]
add r10, rcx
mov qword [0x1401c01c0], 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 0x140006456
sub ecx, r8d
shr r9, cl
movzx ecx, r8b
mov rax, rdx
shl rax, cl
jmp 0x140006464
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, 0x5412e56bb15e6e9f
sub r8, rax
xor r8, r9
mov qword [rdi + 0x280], r8
mov r11d, ebx
sub r11d, esi
mov r9, r8
test r10d, r10d
jle 0x1400064a7
mov eax, r10d
and eax, 0x3f
mov r14d, eax
mov ecx, ebx
sub ecx, eax
shr r9, cl
movzx ecx, al
jmp 0x1400064b0
mov rcx, rsi
shr r9, cl
mov ecx, r11d
mov rax, r8
shl rax, cl
or r9, rax
movabs rax, 0x99ddac683aadcadc
imul r9, rax
mov qword [rdi + 0x288], r9
xor rdx, r8
mov r8, rdx
cmp r10d, 0x7fffffff
jb 0x1400064fb
test r15d, r15d
jle 0x1400064ed
mov rcx, rsi
shl r8, cl
mov ecx, r11d
jmp 0x14000651a
mov ecx, ebx
sub ecx, r14d
shl r8, cl
movzx ecx, r14b
jmp 0x14000651a
test r10d, r10d
jle 0x140006511
mov ecx, ebx
sub ecx, r14d
shr r8, cl
movzx ecx, r14b
shl rdx, cl
jmp 0x14000651d
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 0x140006568
test r10d, r10d
jle 0x140006563
mov eax, r10d
and eax, 0x3f
sub ecx, eax
shr r9, cl
movzx ecx, al
mov rax, r8
shl rax, cl
jmp 0x140006586
mov eax, r11d
jmp 0x140006575
test r11d, r11d
jle 0x140006572
mov eax, r11d
jmp 0x140006550
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 0x140006655
mov ecx, ebx
mov r9, r8
cmp r10d, 0x7fffffff
jb 0x140006615
test r10d, r10d
jle 0x1400065c2
and r10d, 0x3f
sub ecx, r10d
shr r9, cl
movzx ecx, r10b
shl r8, cl
jmp 0x1400065d6
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 0x1400066a3
test eax, eax
jle 0x14000662d
and eax, 0x3f
sub ebx, eax
movzx ecx, bl
shr r8, cl
movzx ecx, al
shl rdx, cl
jmp 0x140006640
test r11d, r11d
jle 0x1400065c5
and r11d, 0x3f
sub ecx, r11d
shr r9, cl
movzx ecx, r11b
shl r8, cl
jmp 0x1400065d6
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.140026230
mov rcx, qword [rbp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov ecx, 0x41800000
call fcn.14002fc50
movaps xmm7, xmm0
mov rax, qword [0x1401be0e0]
mulss xmm7, dword [rax + 0x1c]
movaps xmm0, xmm7
call fcn.14000e240
movaps xmm6, xmm7
subss xmm6, xmm0
mov ecx, 0x3f000000
call fcn.14002fc50
comiss xmm0, xmm6
jbe 0x1400066c0
movaps xmm0, xmm7
call fcn.14000e240
jmp 0x140006717
mov ecx, eax
neg ecx
test ecx, ecx
jle 0x14000662f
and ecx, 0x3f
mov eax, ecx
sub ebx, ecx
movzx ecx, bl
shr r8, cl
movzx ecx, al
shl rdx, cl
jmp 0x140006640
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 0x14000671a
test ecx, ecx
js 0x1400066fb
mov edx, 0x7fffff
sar edx, cl
test eax, edx
je 0x14000671a
test eax, eax
js 0x1400066ed
add eax, edx
not edx
and eax, edx
mov dword [rbp + 0x78], eax
movss xmm7, dword [rbp + 0x78]
jmp 0x14000671a
test eax, eax
jns 0x140006706
mov ecx, 0x80000000
jmp 0x140006712
test eax, 0x7fffffff
je 0x14000671a
mov ecx, 0x3f800000
call fcn.14002fc50
movaps xmm7, xmm0
movabs rax, 0xa4340b4cf975cfe3
mov qword [rbp - 0x20], rax
movabs rax, 0xd0c573d8a3f2974
mov qword [rbp - 0x18], rax
movabs rdx, 0xcede9b5eae1de4e5
mov qword [rbp - 0x10], rdx
movabs rcx, 0x3d03e25f6f35e806
mov qword [rbp - 8], rcx
movabs rax, 0xa45c0b26f906cf8e
mov qword [rsp + 0x60], rax
movabs rax, 0xd6f57498a4b295a
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.14001baa0
mov qword [0x1401be170], rax
mov rcx, qword [0x1401be148]
mov rax, qword [rcx]
movss xmm0, dword [0x1400c3968]
movss xmm1, dword [0x1400c3964]
unpcklps xmm1, xmm0
movq r8, xmm1
lea rdx, [0x1400d0c70]
call qword [rax + 0x18]
mov qword [0x1401be160], rax
mov esi, r13d
mov edi, 0x860861c0
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 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 [0x1401be158]
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 [0x1401be158]
call r8
mov al, 1
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