Function at 0x140032dc0
Capabilities:
Encode data using xor
Get file size
Read file via mapping
Resolve function by parsing pe exports
Terminate process
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2a8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x210], xmm9
movaps xmmword [rbp + 0x200], xmm8
movaps xmmword [rbp + 0x1f0], xmm7
movaps xmmword [rbp + 0x1e0], xmm6
mov qword [rbp + 0x1d8], 0xfffffffffffffffe
mov r13d, r9d
mov r14d, edx
mov r15, rcx
movdqu xmm1, xmmword [rcx]
movdqu xmm0, xmmword [rcx + 0x18]
movdqu xmm2, xmmword [rcx + 0x28]
pshufd xmm4, xmm0, 0xee
pshufd xmm9, xmm2, 0xee
pshufd xmm8, xmm0, 0x44
pshufd xmm6, xmm2, 0x44
pand xmm6, xmm1
pand xmm8, xmm1
pand xmm9, xmm1
pand xmm4, xmm1
movdqa xmm0, xmm4
psrlw xmm0, 1
movdqa xmm3, xmmword [str.UUUUUUUUUUUUUUUU3333333333333333]
pand xmm0, xmm3
psubb xmm4, xmm0
movdqa xmm2, xmmword [0x140055220]
movdqa xmm0, xmm4
pand xmm0, xmm2
psrlw xmm4, 2
pand xmm4, xmm2
paddb xmm4, xmm0
movdqa xmm0, xmm4
psrlw xmm0, 4
paddb xmm0, xmm4
movdqa xmm4, xmmword [0x140055230]
pand xmm0, xmm4
pxor xmm5, xmm5
psadbw xmm0, xmm5
movdqa xmm7, xmm9
psrlw xmm7, 1
pand xmm7, xmm3
psubb xmm9, xmm7
movdqa xmm7, xmm9
pand xmm7, xmm2
psrlw xmm9, 2
pand xmm9, xmm2
paddb xmm9, xmm7
movdqa xmm7, xmm9
psrlw xmm7, 4
paddb xmm7, xmm9
pand xmm7, xmm4
psadbw xmm7, xmm5
movdqa xmm9, xmm8
psrlw xmm9, 1
pand xmm9, xmm3
psubb xmm8, xmm9
movdqa xmm9, xmm8
pand xmm9, xmm2
psrlw xmm8, 2
pand xmm8, xmm2
paddb xmm8, xmm9
movdqa xmm9, xmm8
psrlw xmm9, 4
paddb xmm9, xmm8
pand xmm9, xmm4
psadbw xmm9, xmm5
movdqa xmm8, xmm6
psrlw xmm8, 1
pand xmm8, xmm3
psubb xmm6, xmm8
movdqa xmm8, xmm6
pand xmm8, xmm2
psrlw xmm6, 2
pand xmm6, xmm2
paddb xmm6, xmm8
movdqa xmm8, xmm6
psrlw xmm8, 4
paddb xmm8, xmm6
pand xmm8, xmm4
psadbw xmm8, xmm5
movdqa xmm6, xmmword [0x140055240]
pmuludq xmm6, xmm8
pmuludq xmm8, xmmword [0x140055250]
psllq xmm8, 0x20
paddq xmm8, xmm6
movdqa xmm6, xmmword [0x140055260]
pmuludq xmm6, xmm9
pmuludq xmm9, xmmword [0x140055270]
psllq xmm9, 0x20
paddq xmm9, xmm6
movdqa xmm6, xmmword [0x140055280]
pmuludq xmm6, xmm7
pmuludq xmm7, xmmword [0x140055290]
paddq xmm9, xmm8
psllq xmm7, 0x20
paddq xmm7, xmm6
movdqa xmm6, xmmword [0x1400552a0]
pmuludq xmm6, xmm0
pmuludq xmm0, xmmword [0x1400552b0]
psllq xmm0, 0x20
paddq xmm0, xmm6
paddq xmm0, xmm7
paddq xmm0, xmm9
movq xmm6, qword [rcx + 0x38]
pshufd xmm6, xmm6, 0x44
pand xmm6, xmm1
movdqa xmm1, xmm6
psrlw xmm1, 1
pand xmm1, xmm3
psubb xmm6, xmm1
movdqa xmm1, xmm6
pand xmm1, xmm2
psrlw xmm6, 2
pand xmm6, xmm2
paddb xmm6, xmm1
movdqa xmm1, xmm6
psrlw xmm1, 4
paddb xmm1, xmm6
pand xmm1, xmm4
psadbw xmm1, xmm5
movdqa xmm2, xmmword [0x1400552c0]
pmuludq xmm2, xmm1
pmuludq xmm1, xmmword [0x1400552d0]
psllq xmm1, 0x20
paddq xmm1, xmm2
pshufd xmm2, xmm0, 0xee
paddq xmm2, xmm0
movq rax, xmm2
movq rcx, xmm1
pshufd xmm0, xmm1, 0xee
movq rbx, xmm0
add rbx, rcx
add rbx, rax
xor r9d, r9d
test r13d, r13d
jne 0x140033091
test rbx, rbx
je 0x14003311a
mov rdi, rbx
shr rdi, 0x34
mov rax, rdi
shl rax, 4
lea r12, [0x140070f10]
mov rax, qword [rax + r12]
test rax, rax
mov qword [rbp + 0x160], r8
je 0x1400330dd
nop word cs:[rax + rax]
cmp rax, rbx
je 0x1400330dd
inc edi
and edi, 0xfff
mov rax, rdi
shl rax, 4
mov rax, qword [rax + r12]
test rax, rax
jne 0x1400330c0
shl rdi, 4
mov rsi, qword [rdi + r12 + 8]
test rsi, rsi
je 0x14003310d
cmp r13d, 1
jne 0x1400330f9
cmp byte [rsi + 0x3e], 0
jne 0x14003314f
jmp 0x14003310d
cmp r13d, 2
jne 0x14003314f
mov al, 1
mov dword [rbp + 0x1bc], eax
cmp byte [rsi + 0x3f], 0
jne 0x140033159
mov rax, qword [rbp + 0x160]
mov dword [rax], 0
mov eax, r9d
movaps xmm6, xmmword [rbp + 0x1e0]
movaps xmm7, xmmword [rbp + 0x1f0]
movaps xmm8, xmmword [rbp + 0x200]
movaps xmm9, xmmword [rbp + 0x210]
add rsp, 0x2a8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov dword [rbp + 0x1bc], 0
lea rax, [r15 + 0x18]
mov qword [rbp + 0x170], rax
lea rax, [r15 + 0x20]
mov qword [rbp + 0x178], rax
lea rax, [r15 + 0x28]
mov qword [rbp + 0x180], rax
lea rax, [r15 + 0x30]
mov qword [rbp + 0x188], rax
lea rax, [r15 + 0x38]
mov qword [rbp + 0x158], rax
mov eax, r13d
mov qword [rbp + 0x190], rax
test byte [rsi + rax + 0x38], 1
mov qword [rbp + 0x1c0], rsi
mov dword [rbp + 0x198], r14d
jne 0x1400346b1
lea rcx, [0x140070e68]
call sub.MSVCP140.dll__Mtx_lock
test eax, eax
jne 0x140034f21
cmp dword [0x140070eb4], 0x7fffffff
je 0x140034f2b
mov rax, qword [rbp + 0x190]
test byte [rsi + rax + 0x38], 1
jne 0x1400346a5
mov dword [rbp + 0x1cc], r13d
lea r14, [r15 + 8]
mov rdx, qword [rsi]
xor eax, eax
mov qword [rbp + 0x1a8], rdx
cmp rdx, rbx
mov qword [rbp + 0x1d0], r14
cmove r14, r15
setne al
mov rcx, r15
mov r15, qword [r15 + rax*8]
mov qword [rbp + 0x148], rcx
mov rax, qword [rcx + 0x10]
movabs r10, 0x5555555555555555
movabs r9, 0x3333333333333333
movabs r8, 0xf0f0f0f0f0f0f0f
movabs rdx, 0x101010101010101
and rax, r15
je 0x1400332a1
mov rcx, rax
shr rcx, 1
and rcx, r10
sub rax, rcx
mov rcx, rax
and rcx, r9
shr rax, 2
and rax, r9
add rax, rcx
mov rsi, rax
shr rsi, 4
add rsi, rax
and rsi, r8
imul rsi, rdx
shr rsi, 0x38
lea rcx, [rbp + 0x130]
mov dl, 0x4b
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
lea r13, [rsi + rbp]
add r13, 0x131
jmp 0x1400332a8
lea r13, [rbp + 0x130]
mov rax, qword [rbp + 0x170]
mov rax, qword [rax]
and rax, r15
je 0x140033325
mov rcx, rax
shr rcx, 1
movabs rdx, 0x5555555555555555
and rcx, rdx
sub rax, rcx
mov rcx, rax
movabs rdx, 0x3333333333333333
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov rsi, rax
shr rsi, 4
add rsi, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rsi, rax
movabs rax, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
mov rcx, r13
mov dl, 0x51
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
add r13, rsi
inc r13
mov rax, qword [rbp + 0x178]
mov rax, qword [rax]
and rax, r15
je 0x1400333a5
mov rcx, rax
shr rcx, 1
movabs rdx, 0x5555555555555555
and rcx, rdx
sub rax, rcx
mov rcx, rax
movabs rdx, 0x3333333333333333
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov rsi, rax
shr rsi, 4
add rsi, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rsi, rax
movabs rax, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
mov rcx, r13
mov dl, 0x52
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
add r13, rsi
inc r13
mov r15, qword [r14]
mov rax, qword [rbp + 0x180]
mov rax, qword [rax]
and rax, r15
je 0x140033425
mov rcx, rax
shr rcx, 1
movabs rdx, 0x5555555555555555
and rcx, rdx
sub rax, rcx
mov rcx, rax
movabs rdx, 0x3333333333333333
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov rsi, rax
shr rsi, 4
add rsi, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rsi, rax
movabs rax, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
mov rcx, r13
mov dl, 0x42
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
add r13, rsi
inc r13
mov r15, qword [r14]
mov rax, qword [rbp + 0x188]
mov rax, qword [rax]
and rax, r15
je 0x1400334a5
mov rcx, rax
shr rcx, 1
movabs rdx, 0x5555555555555555
and rcx, rdx
sub rax, rcx
mov rcx, rax
movabs rdx, 0x3333333333333333
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov rsi, rax
shr rsi, 4
add rsi, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rsi, rax
movabs rax, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
mov rcx, r13
mov dl, 0x4e
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
add r13, rsi
inc r13
mov r15, qword [r14]
mov r14, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x158]
and r15, qword [rax]
je 0x140033526
mov rax, r15
shr rax, 1
movabs rcx, 0x5555555555555555
and rax, rcx
sub r15, rax
mov rax, r15
movabs rcx, 0x3333333333333333
and rax, rcx
shr r15, 2
and r15, rcx
add r15, rax
mov rsi, r15
shr rsi, 4
add rsi, r15
movabs rax, 0xf0f0f0f0f0f0f0f
and rsi, rax
movabs rax, 0x101010101010101
imul rsi, rax
shr rsi, 0x38
mov rcx, r13
mov dl, 0x50
mov r8, rsi
call sub.VCRUNTIME140.dll_memset
dec esi
add r13, rsi
inc r13
lea rsi, [r13 + 1]
xor eax, eax
cmp r14, rbx
sete al
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x1d0]
cmovne rdx, rcx
mov byte [r13], 0x76
mov rax, qword [rcx + rax*8]
mov rcx, qword [rcx + 0x10]
and rcx, rax
mov qword [rbp + 0x1d0], rdx
je 0x1400335d8
mov rax, rcx
shr rax, 1
movabs rdx, 0x5555555555555555
and rax, rdx
sub rcx, rax
mov rax, rcx
movabs rdx, 0x3333333333333333
and rax, rdx
shr rcx, 2
and rcx, rdx
add rcx, rax
mov r15, rcx
shr r15, 4
add r15, rcx
movabs rax, 0xf0f0f0f0f0f0f0f
and r15, rax
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x4b
mov r8, r15
call sub.VCRUNTIME140.dll_memset
mov rdx, qword [rbp + 0x1d0]
dec r15d
lea rsi, [r15 + r13]
add rsi, 2
mov rax, qword [rdx]
mov rcx, qword [rbp + 0x170]
mov rcx, qword [rcx]
and rcx, rax
je 0x140033662
mov rax, rcx
shr rax, 1
movabs rdx, 0x5555555555555555
and rax, rdx
sub rcx, rax
mov rax, rcx
movabs rdx, 0x3333333333333333
and rax, rdx
shr rcx, 2
and rcx, rdx
add rcx, rax
mov r15, rcx
shr r15, 4
add r15, rcx
movabs r14, 0xf0f0f0f0f0f0f0f
and r15, r14
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x51
mov r8, r15
call sub.VCRUNTIME140.dll_memset
mov rdx, qword [rbp + 0x1d0]
dec r15d
add rsi, r15
inc rsi
mov rax, qword [rdx]
jmp 0x14003366c
movabs r14, 0xf0f0f0f0f0f0f0f
mov rcx, qword [rbp + 0x178]
mov rcx, qword [rcx]
and rcx, rax
je 0x1400336ea
mov rax, rcx
shr rax, 1
movabs rdx, 0x5555555555555555
and rax, rdx
sub rcx, rax
mov rax, rcx
movabs rdx, 0x3333333333333333
and rax, rdx
shr rcx, 2
and rcx, rdx
add rcx, rax
mov r15, rcx
shr r15, 4
add r15, rcx
and r15, r14
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x52
mov r8, r15
call sub.VCRUNTIME140.dll_memset
mov rdx, qword [rbp + 0x1d0]
dec r15d
add rsi, r15
inc rsi
mov rax, qword [rdx]
mov rcx, qword [rbp + 0x180]
mov rcx, qword [rcx]
and rcx, rax
je 0x140033768
mov rax, rcx
shr rax, 1
movabs rdx, 0x5555555555555555
and rax, rdx
sub rcx, rax
mov rax, rcx
movabs rdx, 0x3333333333333333
and rax, rdx
shr rcx, 2
and rcx, rdx
add rcx, rax
mov r15, rcx
shr r15, 4
add r15, rcx
and r15, r14
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x42
mov r8, r15
call sub.VCRUNTIME140.dll_memset
mov rdx, qword [rbp + 0x1d0]
dec r15d
add rsi, r15
inc rsi
mov rax, qword [rdx]
mov rcx, qword [rbp + 0x188]
mov rcx, qword [rcx]
and rcx, rax
je 0x1400337e3
mov rax, rcx
shr rax, 1
mov r13, rdx
movabs rdx, 0x5555555555555555
and rax, rdx
sub rcx, rax
mov rax, rcx
movabs rdx, 0x3333333333333333
and rax, rdx
shr rcx, 2
and rcx, rdx
add rcx, rax
mov r15, rcx
shr r15, 4
add r15, rcx
and r15, r14
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x4e
mov r8, r15
call sub.VCRUNTIME140.dll_memset
dec r15d
add rsi, r15
inc rsi
mov rax, qword [r13]
mov rcx, qword [rbp + 0x158]
and rax, qword [rcx]
je 0x140033854
mov rcx, rax
shr rcx, 1
movabs rdx, 0x5555555555555555
and rcx, rdx
sub rax, rcx
mov rcx, rax
movabs rdx, 0x3333333333333333
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov r15, rax
shr r15, 4
add r15, rax
and r15, r14
movabs rax, 0x101010101010101
imul r15, rax
shr r15, 0x38
mov rcx, rsi
mov dl, 0x50
mov r8, r15
call sub.VCRUNTIME140.dll_memset
dec r15d
add rsi, r15
inc rsi
mov byte [rsi], 0
lea rax, str..rtbw
mov r14, qword [rbp + 0x190]
mov rsi, qword [rax + r14*8]
lea rcx, [rbp + 0x130]
mov rdx, rsi
call fcn.140035030
cmp rax, 0xffffffffffffffff
je 0x140033971
mov r15, rax
mov qword [rbp + 0x1d0], rsi
lea r13, [rbp + 0x10]
mov rcx, rax
mov rdx, r13
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov r9d, dword [rbp + 0x10]
mov dword [rsp + 0x20], eax
mov qword [rsp + 0x28], 0
mov rcx, r15
xor edx, edx
mov r8d, 2
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
test rax, rax
je 0x140034f3f
mov rcx, qword [rbp + 0x1c0]
mov qword [rcx + r14*8 + 0x20], rax
mov qword [rsp + 0x20], 0
mov rcx, rax
mov edx, 4
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
test rax, rax
je 0x140034f48
mov rsi, rax
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [rsi]
lea rcx, [0x14005856c]
cmp eax, dword [rcx + r14*4]
jne 0x140033938
mov rax, qword [rbp + 0x1c0]
mov qword [rax + r14*8 + 8], rsi
cmp byte [rbp + 0x1bc], 0
je 0x1400339a1
mov dword [rbp + 0x1d0], 0
jmp 0x140033a0f
mov ecx, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
lea rcx, str.Corrupted_table._n
mov edx, 0x11
mov r8d, 1
mov r9, rax
call sub.api_ms_win_crt_stdio_l1_1_0.dll_fwrite
mov rax, qword [rbp + 0x1c0]
mov rdx, qword [rax + r14*8 + 0x20]
mov rcx, rsi
call fcn.1400351a0
lea rax, [rdi + r12]
add rax, 8
mov qword [rax], 0
mov rax, qword [rbp + 0x160]
mov dword [rax], 0
lea rcx, [0x140070e68]
call sub.MSVCP140.dll__Mtx_unlock
xor r9d, r9d
jmp 0x14003311a
movzx eax, byte [rsi + 4]
mov ecx, eax
and cl, 1
mov dword [rbp + 0x1d0], ecx
cmp dword [rbp + 0x1cc], 1
jne 0x140033a0f
shr al, 2
and al, 1
mov rcx, qword [rbp + 0x1c0]
mov byte [rcx + 0x42], al
add rsi, 5
mov qword [rbp + 0x1a0], rsi
cmp byte [rcx + 0x3d], 0
je 0x140033a9e
lea r15, [rcx + 0x2c8]
mov edi, 2
mov ecx, 6
mov al, 1
mov dword [rbp + 0x19c], eax
mov dword [rbp + 0x1b8], 0
mov dword [rbp + 0x1c8], 0
jmp 0x140033ac6
add rsi, 5
mov qword [rbp + 0x1a0], rsi
mov rax, qword [rbp + 0x1c0]
cmp byte [rax + 0x3d], 0
je 0x140033a65
lea r15, [rax + 0x640]
cmp dword [rbp + 0x1cc], 0
cmove r15, rax
add r15, 0x48
mov edi, 1
mov ecx, 4
mov al, 1
mov dword [rbp + 0x1c8], eax
mov dword [rbp + 0x19c], 0
mov dword [rbp + 0x1b8], 0
jmp 0x140033ac6
lea r15, [rax + 0x140]
cmp dword [rbp + 0x1cc], 0
cmove r15, rax
add r15, 0x48
mov dword [rbp + 0x19c], 0
mov ecx, 1
mov al, 1
mov dword [rbp + 0x1b8], eax
mov dword [rbp + 0x1c8], 0
jmp 0x140033ac4
lea r15, [rcx + 0xe8]
mov dword [rbp + 0x1c8], 0
mov ecx, 1
mov al, 1
mov dword [rbp + 0x19c], eax
mov al, 1
mov dword [rbp + 0x1b8], eax
xor edi, edi
lea r14, [rbp - 0x48]
mov rax, rcx
mov qword [rbp + 0x1a8], rcx
shl rax, 4
lea rax, [rax + rax*4]
mov qword [rbp + 0x168], rax
xor r12d, r12d
mov qword [rbp + 0x150], r15
jmp 0x140033b30
movzx eax, byte [rsi + 0x3b]
cmp byte [rsi + 0x3d], 0
je 0x140033b90
cmp byte [rsi + 0x41], 0
setne cl
inc rax
movzx esi, cl
add rsi, rax
add rsi, qword [rbp + 0x1a0]
mov qword [rbp + 0x1a0], rsi
inc r12
add r14, 0x10
add r15, 0x50
cmp qword [rbp + 0x1a8], r12
je 0x140033b97
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r12d
mov rcx, r15
mov rdx, qword [rbp + 0x1c0]
mov r8, rsi
mov rsi, rdx
xor r9d, r9d
call fcn.140035220
mov qword [r14 - 8], rax
cmp byte [rbp + 0x1d0], 0
je 0x140033af0
mov r8, qword [rbp + 0x1a0]
mov rax, qword [rbp + 0x168]
lea rcx, [r15 + rax]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r12d
mov rdx, rsi
mov r9d, 4
call fcn.140035220
mov qword [r14], rax
jmp 0x140033af0
xor ecx, ecx
jmp 0x140033b05
mov eax, esi
and eax, 1
add rax, rsi
mov qword [rbp + 0x1a0], rax
mov rax, qword [rbp + 0x1c0]
add rax, 0x1f8
mov qword [rbp + 0x140], rax
mov rdi, qword [rbp + 0x1a8]
neg rdi
mov r14d, 0x828
lea r12, [rbp - 0x48]
lea r15, [rbp + 0x1b7]
mov rsi, qword [rbp + 0x150]
jmp 0x140033c2e
lea r8, [r13 + 0x18]
mov rdx, qword [r12]
mov eax, dword [rbp + 0x1cc]
mov dword [rsp + 0x20], eax
lea rcx, [rbp + 0x1a0]
mov r9, r15
call fcn.1400356f0
mov rcx, qword [rbp + 0x168]
mov qword [rsi + rcx], rax
lea rax, [rdi + r14]
inc rax
inc r14
add rsi, 0x50
add r12, 0x10
add r13, 0x30
cmp rax, 0x828
je 0x140033cbf
mov rdx, qword [r12 - 8]
mov eax, dword [rbp + 0x1cc]
mov dword [rsp + 0x20], eax
lea rcx, [rbp + 0x1a0]
mov r8, r13
mov r9, r15
call fcn.1400356f0
mov qword [rsi], rax
cmp byte [rbp + 0x1bc], 0
je 0x140033c90
mov rcx, qword [rbp + 0x1c0]
cmp byte [rcx + 0x3d], 0
movzx eax, byte [rbp + 0x1b7]
je 0x140033ca4
mov byte [rcx + r14], al
cmp byte [rbp + 0x1d0], 0
jne 0x140033be0
jmp 0x140033c0c
cmp byte [rbp + 0x1d0], 0
jne 0x140033be0
xor eax, eax
jmp 0x140033c01
mov rcx, qword [rbp + 0x140]
mov byte [rcx], al
cmp byte [rbp + 0x1d0], 0
je 0x140033c0c
jmp 0x140033be0
mov r12d, dword [rbp + 0x19c]
test r12b, r12b
je 0x14003400c
mov rsi, qword [rbp + 0x1c0]
cmp byte [rsi + 0x42], 0
mov rax, qword [rbp + 0x1a0]
mov r13d, dword [rbp + 0x1cc]
mov r15, qword [rbp + 0x148]
mov rdi, qword [rbp + 0x150]
jne 0x14003402f
lea rdx, [rsi + 0x7c8]
lea r8, [rsi + 0x1d8]
lea r9, [rsi + 0x7d0]
cmp byte [rsi + 0x3d], 0
lea rcx, [rsi + 0x1e0]
cmove rdx, r8
mov qword [rdx], rax
cmovne rcx, r9
mov word [rcx], 1
movzx edx, word [rax]
lea r8, [rax + rdx*2]
lea r9, [rax + rdx*2]
add r9, 2
sub r9d, eax
inc r9d
mov word [rcx + 2], r9w
movzx edx, word [rax + rdx*2 + 2]
lea rdx, [r8 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140033d93
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 4], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 6], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1b8], 0
jne 0x140034000
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 8], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0xa], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140033e17
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0xc], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0xe], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x10], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x12], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140033e8e
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x14], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x16], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x18], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x1a], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140033f05
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x1c], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x1e], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1c8], 0
jne 0x140034000
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x20], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x22], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140033f89
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x24], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x26], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x28], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x2a], r10w
movzx edx, word [rdx + r8*2 + 2]
lea rdx, [r9 + rdx*2]
add rdx, 4
cmp byte [rbp + 0x1d0], 0
je 0x140034000
mov r8d, edx
sub r8d, eax
inc r8d
mov word [rcx + 0x2c], r8w
movzx r8d, word [rdx]
lea r9, [rdx + r8*2]
lea r10, [rdx + r8*2]
add r10, 2
sub r10d, eax
inc r10d
mov word [rcx + 0x2e], r10w
movzx eax, word [rdx + r8*2 + 2]
lea rdx, [r9 + rax*2]
add rdx, 4
mov qword [rbp + 0x1a0], rdx
mov rax, rdx
jmp 0x14003402f
mov rax, qword [rbp + 0x1a0]
mov r13d, dword [rbp + 0x1cc]
mov rsi, qword [rbp + 0x1c0]
mov r15, qword [rbp + 0x148]
mov rdi, qword [rbp + 0x150]
cmp byte [rbp + 0x1bc], 0
je 0x1400341b1
lea r8, [rsi + 0x800]
lea rdx, [rsi + 0x1e8]
lea r9, [rsi + 0x808]
lea rcx, [rsi + 0x1f0]
cmp byte [rsi + 0x3d], 0
cmove r8, rdx
lea rdx, [rsi + 0x828]
mov qword [r8], rax
cmovne rcx, r9
cmove rdx, qword [rbp + 0x140]
xor r8d, r8d
mov r9, rax
jmp 0x140034121
mov r10d, r9d
and r10d, 1
lea r11, [r9 + r10]
lea rsi, [r9 + r10]
add rsi, 2
sub esi, eax
shr esi, 1
mov word [rcx + r8*8], si
movzx r9d, word [r9 + r10]
lea r10, [r11 + r9*2]
add r10, 2
lea rsi, [r11 + r9*2]
add rsi, 4
sub esi, eax
shr esi, 1
mov word [rcx + r8*8 + 2], si
movzx r9d, word [r11 + r9*2 + 2]
lea r11, [r10 + r9*2]
add r11, 2
lea rsi, [r10 + r9*2]
add rsi, 4
sub esi, eax
shr esi, 1
mov word [rcx + r8*8 + 4], si
movzx r9d, word [r10 + r9*2 + 2]
lea r10, [r11 + r9*2]
add r10, 2
lea rsi, [r11 + r9*2]
add rsi, 4
sub esi, eax
shr esi, 1
mov word [rcx + r8*8 + 6], si
movzx r9d, word [r11 + r9*2 + 2]
lea r9, [r10 + r9*2]
add r9, 2
mov rsi, qword [rbp + 0x1c0]
inc r8
cmp qword [rbp + 0x1a8], r8
je 0x1400341a8
movzx r10d, byte [rdx + r8]
test r10b, 2
je 0x140034111
test r10b, 0x10
jne 0x140034081
lea r10, [r9 + 1]
sub r10d, eax
mov word [rcx + r8*8], r10w
movzx r10d, byte [r9]
lea r11, [r9 + r10]
inc r11
lea rsi, [r9 + r10]
add rsi, 2
sub esi, eax
mov word [rcx + r8*8 + 2], si
movzx r9d, byte [r9 + r10 + 1]
lea r10, [r9 + r11]
inc r10
lea rsi, [r9 + r11]
add rsi, 2
sub esi, eax
mov word [rcx + r8*8 + 4], si
movzx r9d, byte [r9 + r11 + 1]
lea r11, [r9 + r10]
inc r11
lea rsi, [r9 + r10]
add rsi, 2
sub esi, eax
mov word [rcx + r8*8 + 6], si
movzx r9d, byte [r9 + r10 + 1]
add r9, r11
inc r9
jmp 0x14003410a
mov eax, r9d
and eax, 1
add rax, r9
mov rcx, qword [rdi]
mov qword [rcx], rax
add rax, qword [rbp + 0x10]
cmp byte [rbp + 0x1d0], 0
je 0x1400341fc
mov rdx, qword [rbp + 0x1a8]
lea rdx, [rdx + rdx*4]
shl rdx, 4
mov r8, qword [rdi + rdx]
mov qword [r8], rax
add rax, qword [rbp + 0x28]
cmp byte [rbp + 0x1b8], 0
je 0x140034216
mov qword [rcx + 8], rax
add rax, qword [rbp + 0x18]
mov qword [r8 + 8], rax
add rax, qword [rbp + 0x30]
jmp 0x140034382
cmp byte [rbp + 0x1b8], 0
je 0x1400344c9
mov qword [rcx + 8], rax
add rax, qword [rbp + 0x18]
jmp 0x1400345ea
mov r9, qword [rdi + 0x50]
mov qword [r9], rax
add rax, qword [rbp + 0x40]
mov r9, qword [rdx + rdi + 0x50]
mov qword [r9], rax
add rax, qword [rbp + 0x58]
mov r9, qword [rdi + 0xa0]
mov qword [r9], rax
add rax, qword [rbp + 0x70]
mov r9, qword [rdx + rdi + 0xa0]
mov qword [r9], rax
add rax, qword [rbp + 0x88]
mov r9, qword [rdi + 0xf0]
mov qword [r9], rax
add rax, qword [rbp + 0xa0]
mov r9, qword [rdx + rdi + 0xf0]
mov qword [r9], rax
add rax, qword [rbp + 0xb8]
cmp byte [rbp + 0x1c8], 0
jne 0x1400342bf
mov r9, qword [rdi + 0x140]
mov qword [r9], rax
add rax, qword [rbp + 0xd0]
mov r9, qword [rdx + rdi + 0x140]
mov qword [r9], rax
add rax, qword [rbp + 0xe8]
mov r9, qword [rdi + 0x190]
mov qword [r9], rax
add rax, qword [rbp + 0x100]
mov r9, qword [rdx + rdi + 0x190]
mov qword [r9], rax
add rax, qword [rbp + 0x118]
mov qword [rcx + 8], rax
add rax, qword [rbp + 0x18]
mov qword [r8 + 8], rax
add rax, qword [rbp + 0x30]
mov r9, qword [rdi + 0x50]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x48]
mov r9, qword [rdx + rdi + 0x50]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x60]
mov r9, qword [rdi + 0xa0]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x78]
mov r9, qword [rdx + rdi + 0xa0]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x90]
mov r9, qword [rdi + 0xf0]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0xa8]
mov r9, qword [rdx + rdi + 0xf0]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0xc0]
cmp byte [rbp + 0x1c8], 0
jne 0x140034382
mov r9, qword [rdi + 0x140]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0xd8]
mov r9, qword [rdx + rdi + 0x140]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0xf0]
mov r9, qword [rdi + 0x190]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x108]
mov r9, qword [rdx + rdi + 0x190]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x120]
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x20]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [r8 + 0x10], rax
cmp byte [rbp + 0x1b8], 0
jne 0x1400345f6
mov rcx, qword [rbp + 0x38]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0x50]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x50]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdx + rdi + 0x50]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x68]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0xa0]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x80]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdx + rdi + 0xa0]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x98]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0xf0]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0xb0]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdx + rdi + 0xf0]
mov qword [rcx + 0x10], rax
cmp byte [rbp + 0x1c8], 0
jne 0x1400345f6
mov rcx, qword [rbp + 0xc8]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0x140]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0xe0]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdx + rdi + 0x140]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0xf8]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0x190]
mov qword [rcx + 0x10], rax
add rax, qword [rbp + 0x110]
mov rcx, qword [rdx + rdi + 0x190]
jmp 0x1400345ea
mov r9, qword [rdi + 0x50]
mov qword [r9], rax
add rax, qword [rbp + 0x40]
mov r8, qword [rdi + 0xa0]
mov qword [r8], rax
add rax, qword [rbp + 0x70]
mov rdx, qword [rdi + 0xf0]
mov qword [rdx], rax
add rax, qword [rbp + 0xa0]
cmp byte [rbp + 0x1c8], 0
jne 0x14003451e
mov r10, qword [rdi + 0x140]
mov qword [r10], rax
add rax, qword [rbp + 0xd0]
mov r10, qword [rdi + 0x190]
mov qword [r10], rax
add rax, qword [rbp + 0x100]
mov qword [rcx + 8], rax
add rax, qword [rbp + 0x18]
mov qword [r9 + 8], rax
add rax, qword [rbp + 0x48]
mov qword [r8 + 8], rax
add rax, qword [rbp + 0x78]
mov qword [rdx + 8], rax
add rax, qword [rbp + 0xa8]
cmp byte [rbp + 0x1c8], 0
jne 0x14003456e
mov r10, qword [rdi + 0x140]
mov qword [r10 + 8], rax
add rax, qword [rbp + 0xd8]
mov r10, qword [rdi + 0x190]
mov qword [r10 + 8], rax
add rax, qword [rbp + 0x108]
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [rcx + 0x10], rax
mov rcx, qword [rbp + 0x20]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [r9 + 0x10], rax
mov rcx, qword [rbp + 0x50]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [r8 + 0x10], rax
mov rcx, qword [rbp + 0x80]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [rdx + 0x10], rax
cmp byte [rbp + 0x1c8], 0
jne 0x1400345f6
mov rcx, qword [rbp + 0xb0]
add rax, rcx
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov rcx, qword [rdi + 0x140]
mov qword [rcx + 0x10], rax
add rax, qword [rbp + 0xe0]
mov rcx, qword [rdi + 0x190]
add rax, 0x3f
and rax, 0xffffffffffffffc0
mov qword [rcx + 0x10], rax
test r12b, r12b
je 0x140034699
cmp byte [rsi + 0x3d], 0
je 0x140034699
movzx edx, byte [rsi + 0x3b]
test rdx, rdx
je 0x140034623
mov eax, edx
and eax, 3
cmp dl, 4
jae 0x140034627
xor r8d, r8d
xor ecx, ecx
jmp 0x140034667
xor ecx, ecx
jmp 0x14003468f
and edx, 0xfffffffc
xor r8d, r8d
lea r9, [0x140058580]
xor ecx, ecx
movzx r10d, byte [rdi + r8 + 0x40]
add rcx, qword [r9 + r10*8]
movzx r10d, byte [rdi + r8 + 0x41]
add rcx, qword [r9 + r10*8]
movzx r10d, byte [rdi + r8 + 0x42]
add rcx, qword [r9 + r10*8]
movzx r10d, byte [rdi + r8 + 0x43]
add rcx, qword [r9 + r10*8]
add r8, 4
cmp rdx, r8
jne 0x140034636
test rax, rax
je 0x14003468f
lea rdx, [r8 + rdi]
add rdx, 0x40
xor r8d, r8d
lea r9, [0x140058580]
movzx r10d, byte [rdx + r8]
add rcx, qword [r9 + r10*8]
inc r8
cmp rax, r8
jne 0x14003467e
cmp rcx, qword [rsi]
setne byte [rsi + 0x82c]
mov rax, qword [rbp + 0x190]
mov byte [rsi + rax + 0x38], 1
lea rcx, [0x140070e68]
call sub.MSVCP140.dll__Mtx_unlock
movzx edx, byte [rsi + 0x3c]
test dl, dl
je 0x1400346c6
cmp byte [r15 + 0x42], 0
sete al
xor r9d, r9d
jmp 0x1400346fd
mov rcx, qword [rsi]
cmp rbx, rcx
setne al
movzx r8d, byte [r15 + 0x42]
cmp r8b, al
sete r9b
cmp r13d, 1
jne 0x1400346fd
cmp byte [rsi + 0x3d], 0
je 0x1400346fd
cmp byte [rsi + 0x82c], 0
je 0x1400346fd
cmp r8b, al
setne r9b
cmp rbx, rcx
sete al
movzx ecx, byte [rsi + 0x3d]
mov byte [rbp + 0x190], cl
test cl, cl
mov dword [rbp + 0x1d0], r9d
je 0x14003479a
cmp r13d, 1
mov ecx, 8
mov r8d, 0x14
cmove r8, rcx
xor r9d, r9d
test r13d, r13d
cmove r8, r9
lea r8, [r8 + r8*4]
shl r8, 4
test al, al
mov ecx, 0x38
cmove ecx, r9d
movzx r10d, byte [rsi + r8 + 0x88]
cmp r10b, 8
setb r11b
and r10d, 7
dec r10d
cmp r10d, 5
ja case.default.0x14003478c
xor r11b, al
xor r11b, 1
movzx r9d, r11b
mov r9, qword [r15 + r9*8]
lea r11, [0x1400595ac]
movsxd rsi, dword [r11 + r10*4]
add rsi, r11
mov r10, qword [rbp + 0x158]
jmp rsi
mov r10, qword [rbp + 0x188]
jmp case.0x14003478c.1
xor ecx, ecx
cmp r13d, 1
setne cl
xor r8d, r8d
mov qword [rbp + 0x1a8], r8
test r13d, r13d
lea r8, [rcx + rcx + 2]
mov ecx, 0
cmovne rcx, r8
cmp byte [rbp + 0x1bc], 0
je 0x1400347eb
movzx r8d, byte [rsi + 0x1f8]
mov qword [rbp + 0x1a8], r8
test r8b, 1
sete r8b
test dl, dl
jne 0x1400347eb
xor r8b, r9b
je 0x140034ac5
lea rcx, [rcx + rcx*4]
shl rcx, 4
lea rdx, [rsi + rcx]
add rdx, 0x48
mov ecx, dword [rbp + 0x1bc]
not cl
and cl, r9b
movzx ecx, cl
lea r8, [rcx + rcx*4]
shl r8, 4
lea rbx, [rdx + r8]
movzx ecx, byte [rsi + 0x3b]
test ecx, ecx
je 0x1400348df
add rdx, r8
add rdx, 0x40
lea r8, [r15 + 0x10]
xor r9d, r9d
lea r10, [0x1400595dc]
nop word cs:[rax + rax]
movsxd r9, r9d
movzx esi, byte [rdx + r9]
cmp sil, 8
setb r11b
and esi, 7
dec esi
cmp esi, 5
ja case.default.0x140034868
movsxd rdi, dword [r10 + rsi*4]
add rdi, r10
mov rsi, qword [rbp + 0x158]
jmp rdi
mov rsi, qword [rbp + 0x188]
jmp case.0x140034868.1
xor r11d, r11d
jmp 0x1400348c0
mov rsi, qword [rbp + 0x180]
jmp case.0x140034868.1
mov rsi, qword [rbp + 0x178]
jmp case.0x140034868.1
mov rsi, qword [rbp + 0x170]
jmp case.0x140034868.1
mov rsi, r8
nop word cs:[rax + rax]
xor r11b, al
xor r11b, 1
movzx r11d, r11b
mov r11, qword [r15 + r11*8]
and r11, qword [rsi]
nop word cs:[rax + rax]
lea rsi, [r11 - 1]
tzcnt rdi, r11
mov dword [rbp + r9*4 + 0x10], edi
inc r9
and r11, rsi
jne 0x1400348c0
cmp r9d, ecx
jl 0x140034840
lea rcx, [rbp + 0x10]
xor r15d, r15d
mov rdx, rbx
mov rsi, qword [rbp + 0x1c0]
mov r8, rsi
xor r9d, r9d
jmp 0x140034c1b
mov r10, qword [rbp + 0x180]
jmp case.0x14003478c.1
mov r10, qword [rbp + 0x178]
jmp case.0x14003478c.1
mov r10, qword [rbp + 0x170]
jmp case.0x14003478c.1
lea r10, [r15 + 0x10]
and r9, qword [r10]
mov rsi, qword [rbp + 0x1c0]
mov r12, r15
add r8, rsi
add r8, 0x48
mov qword [rbp + 0x168], r8
xor r8d, r8d
nop dword [rax + rax]
lea r10, [r9 - 1]
tzcnt r11, r9
xor r11d, ecx
mov dword [rbp + r8*4 + 0x10], r11d
inc r8
and r9, r10
jne 0x140034940
movzx r10d, byte [rsi + 0x40]
mov r15d, dword [rbp + 0x10]
cmp r10, 2
jb 0x140034a62
mov r11d, r10d
xor r9d, r9d
mov dword [rbp + 0x1cc], r13d
cmp r13d, 1
sete r9b
dec r10
cmp r11b, 2
jne 0x140034998
mov r11d, 1
mov ebx, r15d
jmp 0x140034a1e
mov rsi, r10
and rsi, 0xfffffffffffffffe
neg rsi
mov r11d, 1
mov rbx, r9
shl rbx, 6
lea rdi, [0x140058450]
add rdi, rbx
mov ebx, r15d
nop dword [rax]
movsxd rbx, ebx
movzx r14d, byte [rbx + rdi]
movsxd r13, dword [rbp + r11*4 + 0x10]
cmp r14b, byte [r13 + rdi]
mov r14d, r13d
cmova r14d, ebx
mov dword [rbp + r11*4 + 0x10], r14d
cmova r15d, r13d
cmova ebx, r13d
movsxd rbx, ebx
movzx r14d, byte [rbx + rdi]
movsxd r13, dword [rbp + r11*4 + 0x14]
cmp r14b, byte [r13 + rdi]
mov r14d, r13d
cmova r14d, ebx
cmova r15d, r13d
cmova ebx, r13d
mov dword [rbp + r11*4 + 0x14], r14d
lea r14, [rsi + r11]
add r14, 2
add r11, 2
cmp r14, 1
jne 0x1400349c0
test r10b, 1
je 0x140034a50
movsxd r10, ebx
shl r9, 6
lea rsi, [0x140058450]
add rsi, r9
movzx r9d, byte [r10 + rsi]
movsxd rdi, dword [rbp + r11*4 + 0x10]
cmp r9b, byte [rdi + rsi]
cmovbe r10d, edi
mov dword [rbp + r11*4 + 0x10], r10d
cmova r15d, edi
mov dword [rbp + 0x10], r15d
mov r13d, dword [rbp + 0x1cc]
mov rsi, qword [rbp + 0x1c0]
cmp r13d, 1
jne 0x140034a84
add r15d, 0xfffffff8
sar r15d, 3
cmp byte [rbp + 0x1bc], 0
jne 0x140034a9d
xor edx, edx
mov qword [rbp + 0x1a8], rdx
jmp 0x140034ada
and r15d, 7
lea r9, [0x140057e20]
movzx r15d, byte [r15 + r9]
cmp byte [rbp + 0x1bc], 0
je 0x140034a79
movsxd r9, r15d
movzx r9d, byte [rsi + r9 + 0x828]
mov qword [rbp + 0x1a8], r9
test r9b, 1
sete r9b
test dl, dl
jne 0x140034ada
xor r9b, byte [rbp + 0x1d0]
jne 0x140034ada
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xffffffff
xor r9d, r9d
jmp 0x14003311a
test r13d, r13d
je 0x140034af9
mov edx, r15d
cmp r13d, 1
jne 0x140034b04
lea edx, [r15 + 6]
cmp byte [rbp + 0x1d0], 0
cmove edx, r15d
jmp 0x140034b04
movzx edx, byte [rbp + 0x1d0]
lea edx, [r15 + rdx*4]
movsxd rdx, edx
lea rdx, [rdx + rdx*4]
shl rdx, 4
movzx r9d, byte [rsi + 0x3b]
cmp r8d, r9d
jge 0x140034be2
mov r10, qword [rbp + 0x168]
add r10, rdx
add r10, 0x40
lea r11, [r12 + 0x10]
lea rsi, [0x1400595c4]
nop word [rax + rax]
movsxd r8, r8d
movzx ebx, byte [r10 + r8]
cmp bl, 8
setb dil
and ebx, 7
dec ebx
cmp ebx, 5
ja case.default.0x140034b67
movsxd rbx, dword [rsi + rbx*4]
add rbx, rsi
mov r14, qword [rbp + 0x158]
jmp rbx
mov r14, qword [rbp + 0x188]
jmp case.0x140034b67.1
xor edi, edi
jmp 0x140034bc0
mov r14, qword [rbp + 0x180]
jmp case.0x140034b67.1
mov r14, qword [rbp + 0x178]
jmp case.0x140034b67.1
mov r14, qword [rbp + 0x170]
jmp case.0x140034b67.1
mov r14, r11
nop word cs:[rax + rax]
xor dil, al
xor dil, 1
movzx edi, dil
mov rdi, qword [r12 + rdi*8]
and rdi, qword [r14]
nop word cs:[rax + rax]
lea rbx, [rdi - 1]
tzcnt r14, rdi
xor r14d, ecx
mov dword [rbp + r8*4 + 0x10], r14d
inc r8
and rdi, rbx
jne 0x140034bc0
cmp r8d, r9d
jl 0x140034b40
mov rbx, qword [rbp + 0x168]
add rbx, rdx
lea rcx, [rbp + 0x10]
mov rdx, rbx
cmp r13d, 1
jne 0x140034c0b
mov rsi, qword [rbp + 0x1c0]
mov r8, rsi
mov r9d, 2
jmp 0x140034c1b
mov rsi, qword [rbp + 0x1c0]
mov r8, rsi
mov r9d, 1
call fcn.140035c10
mov r8, qword [rbx]
movzx ecx, byte [r8 + 0x31]
test rcx, rcx
je 0x140034ca8
mov rdx, rax
shr rdx, cl
mov r9, 0xffffffffffffffff
shl r9, cl
mov r10, 0xffffffffffffffff
not r9d
and eax, r9d
dec cl
shl r10, cl
add r10d, eax
add edx, edx
lea edx, [rdx + rdx*2]
mov r9, qword [r8]
mov rcx, qword [r8 + 8]
mov eax, dword [r9 + rdx]
movzx edx, word [r9 + rdx + 4]
add edx, r10d
mov dword [rbp + 0x1cc], r13d
js 0x140034cb1
movzx r10d, word [rcx + rax*2]
cmp edx, r10d
jbe 0x140034cd8
inc eax
mov r11d, eax
mov r9d, edx
nop word cs:[rax + rax]
not r10d
add r9d, r10d
mov eax, r11d
movzx r10d, word [rcx + rax*2]
inc r11d
cmp r9d, r10d
jg 0x140034c90
jmp 0x140034cdb
add r8, 0x33
jmp 0x140034df3
dec eax
mov r10d, eax
nop word cs:[rax + rax]
mov eax, r10d
movzx r9d, word [rcx + rax*2]
add r9d, edx
dec r10d
inc r9d
mov edx, r9d
js 0x140034cc0
jmp 0x140034cdb
mov r9d, edx
movzx ecx, byte [r8 + 0x30]
shl rax, cl
movzx r11d, byte [r8 + 0x32]
mov rcx, qword [r8 + 0x10]
mov r14, qword [r8 + 0x18]
lea r12, [r8 + 0x38]
mov rdi, qword [rcx + rax]
bswap rdi
mov r10, qword [r8 + 0x20]
lea rsi, [rcx + rax]
add rsi, 8
dec r11
xor eax, eax
nop dword [rax]
mov rcx, r12
mov rdx, r11
nop word cs:[rax + rax]
inc rdx
lea rbx, [rcx + 8]
mov r13, rdi
sub r13, qword [rcx]
mov rcx, rbx
jb 0x140034d20
movzx ebx, word [r14 + rdx*2]
mov ecx, edx
neg cl
shr r13, cl
add r13d, ebx
movzx ecx, byte [r10 + r13]
movzx ebx, cl
cmp r9d, ebx
jle 0x140034d74
mov ecx, edx
shl rdi, cl
not ebx
add r9d, ebx
add eax, edx
cmp eax, 0x20
jb 0x140034d10
add eax, 0xffffffe0
mov edx, dword [rsi]
add rsi, 4
bswap edx
mov ecx, eax
shl rdx, cl
or rdi, rdx
jmp 0x140034d10
mov r8, qword [r8 + 0x28]
test cl, cl
je 0x140034ddd
mov rsi, qword [rbp + 0x1c0]
jmp 0x140034d94
test dl, dl
je 0x140034de4
lea ecx, [r13 + r13*2]
movzx eax, byte [r8 + rcx + 1]
mov edx, eax
and edx, 0xf
shl edx, 8
movzx r13d, byte [r8 + rcx]
or r13, rdx
movzx edx, byte [r10 + r13]
movzx r11d, dl
cmp r9d, r11d
jle 0x140034d90
not r11d
add r9d, r11d
movzx ecx, byte [r8 + rcx + 2]
shl rcx, 4
shr eax, 4
or rax, rcx
movzx edx, byte [r10 + rax]
mov r13d, eax
jmp 0x140034d90
mov rsi, qword [rbp + 0x1c0]
lea eax, [r13 + r13*2]
add r8, rax
mov r13d, dword [rbp + 0x1cc]
movzx r9d, byte [r8]
test r13d, r13d
je 0x140034e57
movzx eax, byte [r8 + 1]
and eax, 0xf
shl rax, 8
or r9, rax
cmp r13d, 1
jne 0x140034e60
cmp byte [rsi + 0x42], 0
jne 0x14003311a
cmp byte [rbp + 0x190], 0
je 0x140034eeb
movsxd rax, r15d
movzx ecx, byte [rbp + 0x1d0]
movsxd rdx, dword [rbp + 0x198]
lea rax, [rsi + rax*8]
add rsi, 0x7c8
lea rax, [rax + rcx*4]
lea rax, [rax + rdx*2]
add rax, 0x7d0
jmp 0x140034f0e
add r9d, 0xfffffffe
jmp 0x14003311a
movsxd rcx, dword [rbp + 0x198]
mov r10, qword [rbp + 0x1a8]
test r10b, 2
je 0x140034ecf
lea rdx, [rsi + 0x800]
cmp byte [rbp + 0x190], 0
lea rax, [0x140058550]
movsxd rax, dword [rax + rcx*4 + 8]
lea rax, [rsi + rax*2 + 0x1f0]
movsxd r8, r15d
lea r8, [rax + r8*8 + 0x618]
cmove r8, rax
lea rax, [rsi + 0x1e8]
cmove rdx, rax
movzx r8d, word [r8]
mov eax, r9d
add rax, r8
mov rdx, qword [rdx]
test r10b, 0x10
jne 0x140034eca
movzx r9d, byte [rdx + rax]
jmp 0x140034ecf
movzx r9d, word [rdx + rax*2]
lea rax, [0x140058564]
test byte [rcx + rax + 2], r10b
sete al
or cl, al
and cl, 1
shl r9d, cl
jmp 0x14003311a
movzx eax, byte [rbp + 0x1d0]
movsxd rcx, dword [rbp + 0x198]
lea rax, [rsi + rax*4]
add rsi, 0x1d8
lea rax, [rax + rcx*2]
add rax, 0x1e0
mov rcx, qword [rsi]
movzx eax, word [rax]
add r9, rax
movzx r9d, word [rcx + r9*2]
jmp 0x14003311a
mov ecx, 5
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
mov dword [0x140070eb4], 0x7ffffffe
mov ecx, 6
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
lea rsi, str.CreateFileMapping___failed__error___lu._n
jmp 0x140034f4f
lea rsi, str.MapViewOfFile___failed__error___lu._n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rbx, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov ecx, 2
call rbx
mov rcx, rax
mov rdx, rsi
mov r8d, edi
call fcn.140035150
mov ecx, 2
call rbx
lea rdx, str.Could_not_map__s_s_into_memory._n
lea r8, [rbp + 0x130]
mov rcx, rax
mov r9, qword [rbp + 0x1d0]
call fcn.140035150
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3