Function at 0x14003d2c0
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x1118
call fcn.1400f4d10
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1080], xmm6
mov r8, rdx
mov qword [rbp + 0xfb0], rcx
mov eax, dword [0x141f32638]
imul eax, dword [0x141f3263c]
and eax, 0xc21be604
imul eax, eax, 0x853737cd
xor eax, 0xee6b606e
cmp eax, 0x5d8bedc6
jb 0x14003d38e
mov eax, dword [0x141f32640]
xor edx, edx
div dword [0x141f32644]
mov ecx, eax
add ecx, 0xa79edc95
imul rax, rcx, 0x2ee845b9
shr rax, 0x20
sub ecx, eax
shr ecx, 1
add ecx, eax
shr ecx, 0x1f
or ecx, 0x114c5cdc
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
mov rbx, rsp
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
mov r14, rsp
mov eax, 0xe0
call fcn.1400f4d10
sub rsp, rax
mov rsi, rsp
mov eax, 0x50
call fcn.1400f4d10
sub rsp, rax
mov r15, rsp
cmp ecx, 0x77a12baf
jbe 0x14003d3c7
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
mov eax, 0x10
call fcn.1400f4d10
sub rsp, rax
mov eax, 0xe0
call fcn.1400f4d10
sub rsp, rax
mov eax, 0x50
call fcn.1400f4d10
sub rsp, rax
jmp 0x14003d316
mov eax, dword [r8 + 0x44]
mov ecx, dword [r8 + 0x58]
mov rdx, rcx
mov qword [rbp + 0x1068], rax
imul rdx, rax
mov rax, rdx
shr rax, 0x36
jne 0x14003d468
mov rdi, rdx
shl rdi, 0xa
movabs rax, 0x7ffffffffffffff9
cmp rdi, rax
jae 0x14003d468
mov qword [rbp + 0x1070], rdx
nop word [rax + rax]
mov eax, dword [0x141f32658]
or eax, dword [0x141f3265c]
or eax, 0xeefeafdf
xor eax, 0x761e3489
cmp eax, 0xa2fbb6a1
ja 0x14003d410
mov qword [rbp + 0x1038], r8
test rdi, rdi
mov qword [rbp + 0x1050], rcx
je 0x14003d456
movzx eax, byte [0x141f49078]
xor eax, eax
test al, al
je 0x14003d5cb
jmp 0x14003d5e5
mov r13d, 8
xor r12d, r12d
mov rcx, qword [rbp + 0x1070]
jmp 0x14003d4cd
mov eax, dword [0x141f32648]
imul eax, dword [0x141f3264c]
imul rcx, rax, 0x30903811
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
imul eax, eax, 0x58ac68a5
cmp eax, 0xe3fa3e7
jne 0x14003d4a0
ud2
mov eax, dword [0x141f32650]
and eax, dword [0x141f32654]
imul rax, rax, 0xb3ae579
shr rax, 0x3a
imul eax, eax, 0x85535267
add eax, 0xb909a502
ud2
ud2
cmp rcx, 2
jb 0x14003d500
lea r8, [rdi - 0x400]
sub rsp, 0x20
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
add rdi, r13
add rdi, 0xfffffffffffffc00
jmp 0x14003d531
mov eax, dword [0x141f32670]
or eax, dword [0x141f32674]
add eax, 0x97d4212e
cmp eax, 0x5bb71c5d
jb 0x14003d500
mov rdi, r13
cmp qword [rbp + 0x1070], 0
mov eax, 1
mov qword [rbp + 0x1070], rax
je 0x14003d570
mov qword [rbp + 0x1048], r13
mov eax, dword [0x141f32678]
imul eax, dword [0x141f3267c]
imul rax, rax, 0x75d869b9
shr rax, 0x3e
imul eax, eax, 0xca0a0934
add eax, 0x14068a68
cmp eax, 0x2c5498bd
jbe 0x14003d664
jmp 0x14003d6a9
mov eax, dword [0x141f32688]
xor edx, edx
div dword [0x141f3268c]
or eax, 0x5a4d13b5
cmp eax, 0xd54f925c
je 0x14003d570
test r12, r12
je 0x14003d5bd
mov rcx, qword [0x141f49060]
sub rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1070], rax
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov r13d, 8
jmp 0x14003d749
xor eax, eax
mov qword [rbp + 0x1070], rax
jmp 0x14003d749
sub rsp, 0x20
xor r13d, r13d
xor ecx, ecx
mov rdx, rdi
call fcn.1400c6170
add rsp, 0x20
test r13b, r13b
je 0x14003d5f9
sub rsp, 0x20
xor ecx, ecx
mov rdx, rdi
call fcn.1400c6170
add rsp, 0x20
jmp 0x14003d5cb
mov rcx, qword [rbp + 0x1070]
mov r12, rcx
test rax, rax
mov r13, rax
jne 0x14003d4cd
mov eax, dword [0x141f32660]
xor edx, edx
div dword [0x141f32664]
and eax, 0x8d8e4e7
imul eax, eax, 0xe668bc53
add eax, 0x6ea76073
cmp eax, 0xdde160cb
jbe 0x14003d640
ud2
mov eax, dword [0x141f32668]
or eax, dword [0x141f3266c]
or eax, 0x89a02609
and eax, 0x8fa52619
ud2
mov eax, dword [0x141f32680]
or eax, dword [0x141f32684]
imul eax, eax, 0x20e18645
imul rax, rax, 0x4e71092f
shr rax, 0x3e
imul r13d, eax, 0x5f967d7f
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp r13d, 0x87464516
jne 0x14003d6c3
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x14003d664
cmp r12, qword [rbp + 0x1070]
jbe 0x14003d742
nop dword [rax]
mov eax, dword [0x141f32690]
or eax, dword [0x141f32694]
or eax, 0x46e251fa
add eax, 0x50a249bf
imul rax, rax, 0x68f36b51
shr rax, 0x3e
cmp eax, 0xf6425c3
ja 0x14003d6d0
mov r8, qword [rbp + 0x1048]
mov r9, qword [rbp + 0x1070]
shl r9, 0xa
xor eax, eax
nop dword [rax]
test al, al
jne 0x14003d710
mov rcx, qword [0x141f49060]
sub rsp, 0x20
xor edx, edx
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
add rsp, 0x20
mov r13, rax
test rax, rax
jne 0x14003d749
xor eax, eax
test al, al
je 0x14003f740
jmp 0x14003f763
mov r13, qword [rbp + 0x1048]
mov qword [rbp + 0x1048], r13
mov eax, dword [0x141f326a0]
sub eax, dword [0x141f326a4]
imul eax, eax, 0xb3d14edb
xor eax, 0x67f34822
cmp eax, 0xecc7e628
jbe 0x14003d94d
mov rcx, qword [rbp + 0x1038]
mov eax, dword [rcx + 0x40]
mov dword [rbx], eax
mov eax, dword [rcx + 0x48]
mov dword [rbp + 0x1034], eax
mov eax, dword [rcx + 0x4c]
mov dword [rbp + 0x1030], eax
movzx eax, byte [rcx + 0x50]
mov dword [rbp + 0x102c], eax
movzx eax, byte [rcx + 0x51]
mov dword [rbp + 0x1028], eax
mov qword [rsi], r14
mov qword [rsi + 8], 4
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 4
lea rax, [rbp + 0x1034]
mov qword [rsi + 0x20], rax
mov qword [rsi + 0x28], 4
lea rax, [rbp + 0x1030]
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x38], 4
lea rax, [rbp + 0x102c]
mov qword [rsi + 0x40], rax
mov qword [rsi + 0x48], 4
lea rax, [rbp + 0x1028]
mov qword [rsi + 0x50], rax
mov qword [rsi + 0x58], 4
lea rax, [rbp + 0x1024]
mov qword [rsi + 0x60], rax
mov rax, qword [rcx]
mov qword [rsi + 0x68], 4
mov qword [rsi + 0x70], rax
mov rax, qword [rcx + 8]
mov dword [rbp + 0x1024], eax
mov qword [rsi + 0x78], rax
lea rax, [rbp - 0x80]
mov qword [rsi + 0x80], rax
mov rax, qword [rcx + 0x10]
mov qword [rsi + 0x88], 4
mov qword [rsi + 0x90], rax
mov rax, qword [rcx + 0x18]
mov dword [rbp - 0x80], eax
mov qword [rsi + 0x98], rax
lea rax, [rbp + 0x780]
mov qword [rsi + 0xa0], rax
mov rax, qword [rcx + 0x30]
mov qword [rsi + 0xa8], 4
mov qword [rsi + 0xb0], rax
mov rax, qword [rcx + 0x38]
mov dword [rbp + 0x780], eax
mov qword [rsi + 0xb8], rax
lea rax, [rbp + 0x380]
mov qword [rsi + 0xc0], rax
mov rax, qword [rcx + 0x20]
mov qword [rsi + 0xc8], 4
mov qword [rsi + 0xd0], rax
mov rax, qword [rcx + 0x28]
mov dword [rbp + 0x380], eax
mov qword [rsi + 0xd8], rax
mov rax, qword [rbp + 0x1068]
mov dword [r14], eax
xorps xmm0, xmm0
movaps xmmword [rbp + 0xbb0], xmm0
movaps xmmword [rbp + 0xba0], xmm0
movaps xmmword [rbp + 0xb90], xmm0
movaps xmmword [rbp + 0xb80], xmm0
mov qword [rbp + 0xbc0], 0
sub rsp, 0x20
lea rcx, [rbp + 0xb80]
mov edx, 0x40
mov r9d, 0xe
mov r8, rsi
call fcn.14003fac0
add rsp, 0x20
movaps xmm0, xmmword [rbp + 0xb80]
movaps xmm1, xmmword [rbp + 0xb90]
movaps xmm2, xmmword [rbp + 0xba0]
movaps xmm3, xmmword [rbp + 0xbb0]
movups xmmword [r15 + 0x30], xmm3
movups xmmword [r15 + 0x20], xmm2
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
xorps xmm6, xmm6
mov qword [rbp + 0x1060], rbx
mov rbx, qword [rbp + 0x1038]
mov qword [rbp + 0x1010], r14
nop word cs:[rax + rax]
mov eax, dword [0x141f326a8]
xor eax, dword [0x141f326ac]
xor eax, 0x31618327
imul r13, rax, 0x2f2012bf
shr r13, 0x3b
xor r13d, 0x61f875ad
mov rax, qword [rbp + 0x1068]
mov rdx, qword [rbp + 0x1010]
mov dword [rdx], eax
mov eax, dword [rbx + 0x40]
mov rcx, qword [rbp + 0x1060]
mov qword [rbp + 0xf98], rax
mov dword [rcx], eax
mov eax, dword [rbx + 0x48]
mov dword [rbp + 0x1034], eax
mov r12d, dword [rbx + 0x4c]
mov dword [rbp + 0x1030], r12d
movzx r14d, byte [rbx + 0x50]
mov dword [rbp + 0x102c], r14d
mov rax, qword [rbx]
mov qword [rsi], rdx
mov qword [rsi + 8], 4
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], 4
lea rcx, [rbp + 0x1034]
mov qword [rsi + 0x20], rcx
mov qword [rsi + 0x28], 4
lea rcx, [rbp + 0x1030]
mov qword [rsi + 0x30], rcx
mov qword [rsi + 0x38], 4
lea rcx, [rbp + 0x102c]
mov qword [rsi + 0x40], rcx
mov qword [rsi + 0x48], 4
lea rcx, [rbp + 0x1028]
mov qword [rsi + 0x50], rcx
mov qword [rsi + 0x58], 4
lea rcx, [rbp + 0x1024]
mov qword [rsi + 0x60], rcx
mov qword [rsi + 0x68], 4
mov qword [rsi + 0x70], rax
mov rax, qword [rbx + 8]
mov dword [rbp + 0x1024], eax
mov qword [rsi + 0x78], rax
mov rax, qword [rbx + 0x10]
lea rcx, [rbp - 0x80]
mov qword [rsi + 0x80], rcx
mov qword [rsi + 0x88], 4
mov qword [rsi + 0x90], rax
mov rax, qword [rbx + 0x18]
mov dword [rbp - 0x80], eax
mov qword [rsi + 0x98], rax
mov rax, qword [rbx + 0x30]
lea rcx, [rbp + 0x780]
mov qword [rsi + 0xa0], rcx
mov qword [rsi + 0xa8], 4
mov qword [rsi + 0xb0], rax
mov rax, qword [rbx + 0x38]
mov dword [rbp + 0x780], eax
mov qword [rsi + 0xb8], rax
mov rax, qword [rbx + 0x20]
lea rcx, [rbp + 0x380]
mov qword [rsi + 0xc0], rcx
mov qword [rsi + 0xc8], 4
mov qword [rsi + 0xd0], rax
mov rax, qword [rbx + 0x28]
mov dword [rbp + 0x380], eax
mov qword [rsi + 0xd8], rax
movzx edi, byte [rbx + 0x51]
mov dword [rbp + 0x1028], edi
movaps xmmword [rbp + 0xbb0], xmm6
movaps xmmword [rbp + 0xba0], xmm6
movaps xmmword [rbp + 0xb90], xmm6
movaps xmmword [rbp + 0xb80], xmm6
mov qword [rbp + 0xbc0], 0
sub rsp, 0x20
mov edx, 0x40
mov r9d, 0xe
lea rcx, [rbp + 0xb80]
mov r8, rsi
call fcn.14003fac0
add rsp, 0x20
movaps xmm0, xmmword [rbp + 0xb80]
movaps xmm1, xmmword [rbp + 0xb90]
movaps xmm2, xmmword [rbp + 0xba0]
movaps xmm3, xmmword [rbp + 0xbb0]
movups xmmword [r15 + 0x30], xmm3
movups xmmword [r15 + 0x20], xmm2
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
cmp r13d, 0x2e416edf
jb 0x14003d970
mov qword [rbp + 0xfe0], rdi
mov qword [rbp + 0xfd8], r12
cmp dword [rbp + 0x1068], 0
mov r13, qword [rbp + 0x1048]
mov r10, qword [rbp + 0x1050]
mov dword [rbp + 0xffc], r14d
je 0x14003de10
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x14003dbc0
nop word cs:[rax + rax]
mov eax, dword [0x141f326b0]
and eax, dword [0x141f326b4]
xor eax, 0x150018
or eax, 0xdbcaffa7
cmp eax, 0xc07ab231
jb 0x14003dbd0
xor edi, edi
mov ebx, 0xc0721873
nop word cs:[rax + rax]
mov eax, dword [0x141f326b8]
xor edx, edx
div dword [0x141f326bc]
or eax, 0x98ff6af4
cmp eax, 0x196e0e04
jne 0x14003dc30
mov dword [r15 + 0x40], 0
mov dword [r15 + 0x44], edi
nop word cs:[rax + rax]
mov eax, dword [0x141f326c0]
xor edx, edx
div dword [0x141f326c4]
imul rax, rax, 0x7f6b17cf
shr rax, 0x3e
imul eax, eax, 0x42fd2bee
add eax, 0xb2d4bee
mov dword [r15 + 0x40], 0
mov dword [r15 + 0x44], edi
cmp eax, 0x4af1a803
ja 0x14003dc30
mov r12, rdi
imul r12, r10
cmp r12, qword [rbp + 0x1070]
jae 0x14003f5db
mov rsi, r12
shl rsi, 0xa
add rsi, r13
mov eax, dword [0x141f326e0]
xor edx, edx
div dword [0x141f326e4]
cmp eax, 0x8c0387e6
jne 0x14003dcc0
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov rcx, rsi
mov r8, r15
call fcn.140040b40
add rsp, 0x20
mov dword [r15 + 0x40], 1
inc rdi
nop word cs:[rax + rax]
mov eax, dword [0x141f326e8]
xor edx, edx
div dword [0x141f326ec]
imul r13d, eax, 0x95360daf
and r13d, 0xa69ed1cf
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov rcx, rsi
mov r8, r15
call fcn.140040b40
add rsp, 0x20
mov dword [r15 + 0x40], 1
cmp r13d, 0xa1b589c3
je 0x14003dcd0
inc r12
cmp r12, qword [rbp + 0x1070]
jae 0x14003f653
mov eax, dword [str.__t]
xor edx, edx
div dword [0x141f3270c]
add eax, 0xda367c0b
imul rax, rbx
shr rax, 0x3f
cmp eax, 0x5e84fc70
mov r13, qword [rbp + 0x1048]
jbe 0x14003dd80
mov rcx, r12
shl rcx, 0xa
add rcx, r13
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov r8, r15
call fcn.140040b40
add rsp, 0x20
nop dword [rax]
mov esi, dword [0x141f32710]
xor esi, dword [0x141f32714]
add esi, 0x5cd685e3
or esi, 0x3639eccb
xor esi, 0x6f78deac
mov rcx, r12
shl rcx, 0xa
add rcx, r13
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov r8, r15
call fcn.140040b40
add rsp, 0x20
cmp esi, 0x75823a4a
jb 0x14003dd80
mov r10, qword [rbp + 0x1050]
nop word cs:[rax + rax]
mov eax, dword [0x141f32718]
imul eax, dword [0x141f3271c]
or eax, 0x9b1bddfc
add eax, 0x7a7a04c0
xor eax, 0x23479a48
cmp eax, 0x5d54b760
ja 0x14003dde0
cmp rdi, qword [rbp + 0x1068]
jne 0x14003dc00
mov rdi, qword [rbp + 0xfd8]
nop word [rax + rax]
mov eax, dword [0x141f32720]
imul eax, dword [0x141f32724]
add eax, 0x5f178bd8
and eax, 0x27d79faf
xor eax, 0x3d18546
cmp eax, 0xe88ad2c5
ja 0x14003de20
test rdi, rdi
je 0x14003f07d
mov eax, dword [0x141f32728]
xor edx, edx
div dword [0x141f3272c]
lea r12, [rbp + 0x7b0]
nop word cs:[rax + rax]
mov eax, dword [0x141f32730]
imul eax, dword [0x141f32734]
imul eax, eax, 0xcf169e77
xor eax, 0x13235c1b
add eax, 0x8fac2d3a
cmp eax, 0x80eadaf3
ja 0x14003de70
cmp dword [rbp + 0x1068], 0
je 0x14003f07d
mov rax, qword [rbp + 0x1038]
mov r15d, dword [rax + 0x5c]
mov ebx, dword [rax + 0x60]
mov eax, ebx
not eax
mov qword [rbp + 0xf80], rax
add eax, r10d
mov qword [rbp + 0xf90], rax
mov eax, ebx
neg eax
mov dword [rbp + 0xff0], eax
nop
mov eax, dword [0x141f32738]
imul eax, dword [0x141f3273c]
imul eax, eax, 0x335c301a
or eax, 0x2080f9ac
imul eax, eax, 0xa30a7b93
cmp eax, 0x43574917
ja 0x14003ded0
test r10, r10
je 0x14003f350
mov ecx, 0xded48035
xor r8d, r8d
mov qword [rbp + 0xfa0], r15
mov dword [rbp + 0x105c], ebx
mov eax, dword [0x141f32750]
xor edx, edx
div dword [0x141f32754]
nop word cs:[rax + rax]
mov eax, dword [0x141f32758]
xor edx, edx
div dword [0x141f3275c]
add eax, 0x994ec7c5
and eax, 0x8ff0ef7c
imul rax, rcx
shr rax, 0x3e
test r8, r8
sete dl
cmp eax, 0xd3e37b06
ja 0x14003df30
mov byte [rbp + 0x107e], dl
lea rax, [r8 + 1]
mov qword [rbp + 0xfc0], rax
xor edx, edx
mov qword [rbp + 0xfd0], r8
nop word [rax + rax]
mov eax, dword [0x141f32760]
imul eax, dword [0x141f32764]
imul eax, eax, 0x37e40950
imul rax, rax, 0x11584615
shr rax, 0x3c
lea r9, [rdx + 1]
test rdx, rdx
sete r10b
mov r11, rdx
or r11, r8
xor esi, esi
test r11d, r11d
sete r14b
mov ecx, ebx
imul ecx, r9d
cmp rdx, 3
mov r13d, 0
cmovne r13, rcx
cmp eax, 0xb7eef1b
ja 0x14003df80
mov rcx, r13
mov qword [rbp + 0xfa8], r11
mov byte [rbp + 0x107d], r10b
mov qword [rbp + 0xfb8], r9
mov sil, r14b
add esi, esi
mov eax, ebx
imul eax, edx
mov qword [rbp + 0xfc8], rax
dec eax
mov dword [rbp + 0xff4], eax
xor r11d, r11d
mov qword [rbp + 0xfe8], rdx
mov dword [rbp + 0xff8], esi
mov byte [rbp + 0x107b], r14b
mov qword [rbp + 0xf88], r13
nop word cs:[rax + rax]
mov eax, dword [0x141f32768]
and eax, dword [0x141f3276c]
add eax, 0x74b0533a
and eax, 0xdd7ac11f
imul eax, eax, 0xa7b6b10
cmp eax, 0xfc9e7445
mov rbx, qword [rbp + 0xfe0]
lea r13, [rbp - 0x80]
nop dword [rax]
mov eax, dword [0x141f32770]
or eax, dword [0x141f32774]
imul eax, eax, 0xe14ba0ac
add eax, 0xe8c6b764
or eax, 0xa87cdb3e
cmp eax, 0x5d9a862d
je 0x14003e060
cmp ebx, 1
mov qword [rbp + 0x1018], r11
je 0x14003e1e0
cmp ebx, 2
lea r14, [rbp + 0x380]
lea r12, [rbp + 0x780]
jne 0x14003e0e8
nop word cs:[rax + rax]
mov eax, dword [0x141f32778]
imul eax, dword [0x141f3277c]
imul rcx, rax, 0x9d97a51
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
lea eax, [rax*4 - 0x69880748]
cmp eax, 0xdef3ebfe
ja 0x14003e0b0
test r8, r8
je 0x14003e2f1
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x400
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, dword [0x141f32800]
sub eax, dword [0x141f32804]
imul eax, eax, 0x22484948
xor eax, 0xf27663b0
imul eax, eax, 0xca6b3f33
cmp eax, 0x3c32b998
jne 0x14003e14c
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov ebx, dword [rbp + 0x105c]
xor r15d, r15d
mov r13, qword [rbp + 0x1068]
nop dword [rax]
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
test r15b, r15b
jne 0x14003e160
nop dword [rax]
test r15b, r15b
jne 0x14003e180
mov al, 1
mov dword [rbp + 0x1044], eax
xor eax, eax
mov qword [rbp + 0x1060], rax
movzx eax, byte [rbp + 0x107b]
mov qword [rbp + 0x1000], rax
movzx eax, byte [rbp + 0x107d]
mov qword [rbp + 0x1008], rax
movzx eax, byte [rbp + 0x107e]
mov byte [rbp + 0x107f], al
mov r9d, esi
mov r10, qword [rbp + 0x1050]
mov r11, qword [rbp + 0x1018]
cmp r9d, ebx
jb 0x14003e55d
jmp 0x14003ed56
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, dword [0x141f32790]
sub eax, dword [0x141f32794]
or eax, 0x37123ad
mov ecx, 0xa761d1d5
imul rax, rcx
shr rax, 0x3f
imul eax, eax, 0x81dfa291
cmp eax, 0x510759e8
jbe 0x14003e240
sub rsp, 0x20
mov r8d, 0x3d0
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
nop dword [rax + rax]
mov esi, dword [0x141f32798]
and esi, dword [0x141f3279c]
or esi, 0x14600
xor esi, 0x50020040
and esi, 0x50034640
sub rsp, 0x20
mov r8d, 0x3d0
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp esi, 0xaa3f87cd
ja 0x14003e240
sub rsp, 0x20
mov r8d, 0x400
lea r14, [rbp + 0x380]
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
lea r12, [rbp + 0x780]
mov rdx, qword [rbp + 0xfe8]
mov eax, dword [0x141f327a0]
sub eax, dword [0x141f327a4]
or eax, 0xc76a3289
xor eax, 0x378df26f
imul rax, rax, 0x210d3c93
shr rax, 0x3d
cmp eax, 0x3127eea
mov r10, qword [rbp + 0x1050]
mov rcx, qword [rbp + 0xfd0]
mov r11, qword [rbp + 0x1018]
jbe 0x14003e410
jmp 0x14003edf0
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, dword [0x141f32780]
and eax, dword [0x141f32784]
xor eax, 0x5604a721
add eax, 0x4f9d57ef
cmp eax, 0xf96d5453
ja 0x14003e372
nop word cs:[rax + rax]
mov eax, dword [0x141f32788]
imul eax, dword [0x141f3278c]
and eax, 0x7092c039
xor eax, 0xb7ef6007
imul rsi, rax, 0x344c127b
shr rsi, 0x3d
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp esi, 0x2e9da13b
jne 0x14003e38c
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x14003e330
sub rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1000], rax
mov r8d, 0x400
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov rdx, qword [rbp + 0xfe8]
cmp rdx, 2
jb 0x14003e2ab
mov byte [rbp + 0x107f], 1
xor eax, eax
mov qword [rbp + 0x1060], rax
xor eax, eax
mov qword [rbp + 0x1008], rax
mov al, 1
mov dword [rbp + 0x1044], eax
xor r9d, r9d
mov r10, qword [rbp + 0x1050]
mov ebx, dword [rbp + 0x105c]
xor r15d, r15d
mov r11, qword [rbp + 0x1018]
mov r13, qword [rbp + 0x1068]
cmp r9d, ebx
jb 0x14003e55d
jmp 0x14003ed56
mov eax, dword [0x141f327a8]
or eax, dword [0x141f327ac]
add eax, 0xb79936d0
mov qword [rbp + 0x780], rcx
mov qword [rbp + 0x788], r11
cmp eax, 0x1271cf77
jb 0x14003edf0
mov eax, dword [0x141f327b0]
and eax, dword [0x141f327b4]
add eax, 0x93085a6f
cmp eax, 0x4337a865
jbe 0x14003e460
mov qword [rbp + 0x790], rdx
mov qword [rbp + 0x798], r15
mov eax, dword [0x141f327b8]
or eax, dword [0x141f327bc]
add eax, 0x5c2520bc
or eax, 0xbda61faf
imul rax, rax, 0x4de84cfd
shr rax, 0x3e
mov qword [rbp + 0x790], rdx
mov qword [rbp + 0x798], r15
cmp eax, 0x3c1916e2
ja 0x14003e460
mov eax, dword [0x141f327c0]
xor edx, edx
div dword [0x141f327c4]
or eax, 0xe5199fe3
imul eax, eax, 0x72bae8b7
cmp eax, 0x7e4617dc
jbe 0x14003e4c4
mov qword [rbp + 0x7a0], rdi
mov qword [rbp + 0x7a8], rbx
xor r15d, r15d
nop word [rax + rax]
mov eax, dword [0x141f327c8]
or eax, dword [0x141f327cc]
add eax, 0x712c2e94
or eax, 0x67313d6c
add eax, 0x4c0de3f4
mov qword [rbp + 0x7a0], rdi
mov qword [rbp + 0x7a8], rbx
cmp eax, 0xaaf2c7b0
jb 0x14003e4d0
cmp dword [rbp + 0xfa8], 0
je 0x14003ee03
xor eax, eax
mov qword [rbp + 0x1060], rax
xor eax, eax
mov qword [rbp + 0x1000], rax
movzx eax, byte [rbp + 0x107d]
mov qword [rbp + 0x1008], rax
movzx eax, byte [rbp + 0x107e]
mov byte [rbp + 0x107f], al
mov dword [rbp + 0x1044], 0
xor r9d, r9d
mov ebx, dword [rbp + 0x105c]
mov r13, qword [rbp + 0x1068]
cmp r9d, ebx
jae 0x14003ed56
mov eax, dword [0x141f32808]
xor edx, edx
div dword [0x141f3280c]
mov esi, r10d
imul esi, r11d
add esi, dword [rbp + 0xfc8]
add esi, r9d
mov eax, esi
xor edx, edx
div r10d
test edx, edx
mov eax, 0
cmove eax, r10d
test r15b, r15b
jne 0x14003e56b
lea ecx, [rax + rsi]
dec ecx
cmp byte [rbp + 0xffc], 0x10
sete r8b
or r8b, byte [rbp + 0x107f]
mov eax, dword [0x141f32810]
xor edx, edx
div dword [0x141f32814]
add eax, 0xe5ce9e30
or eax, 0x62b6cf34
and eax, 0xe7f7cfbc
cmp eax, 0xcbc502d
je 0x14003e5a9
xor r8b, 1
mov byte [rbp + 0x107c], r8b
nop dword [rax + rax]
mov eax, dword [0x141f32818]
sub eax, dword [0x141f3281c]
imul r8d, eax, 0xd0c2798f
mov eax, esi
xor edx, edx
div r10d
lea r12d, [rsi - 1]
cmp edx, 1
cmovne r12d, ecx
cmp r8d, 0xe5c5a695
je 0x14003e5e0
mov ebx, r12d
cmp byte [rbp + 0x1044], 0
je 0x14003e6eb
mov rdi, qword [rbp + 0x1060]
nop word cs:[rax + rax]
mov eax, dword [0x141f32850]
imul eax, dword [0x141f32854]
xor eax, 0x81202291
or eax, 0x7a1f5566
cmp eax, 0x5316b746
jb 0x14003e630
mov eax, dword [0x141f32858]
sub eax, dword [0x141f3285c]
add eax, 0x8ca0b722
shr eax, 2
imul rax, rax, 0x828cf21
shr rax, 0x39
cmp eax, 0x671c4cd1
ja 0x14003e64e
cmp qword [rbp + 0x1070], rbx
jbe 0x14003f5af
mov eax, dword [0x141f32860]
and eax, dword [0x141f32864]
xor eax, 0x10429422
or eax, 0xc93d6a99
xor eax, 0xc61f021d
cmp eax, 0xefa96f2a
ja 0x14003e681
mov rax, rbx
shl rax, 0xa
add rax, qword [rbp + 0x1048]
nop word cs:[rax + rax]
mov ecx, dword [0x141f32868]
xor ecx, dword [0x141f3286c]
add ecx, 0x7da6139d
and ecx, 0xbbf2b1c2
add ecx, 0xe74e98a1
cmp ecx, 0xfda61bb6
ja 0x14003e6c0
jmp 0x14003e8c7
mov eax, dword [0x141f32820]
xor edx, edx
div dword [0x141f32824]
nop dword [rax]
mov eax, dword [0x141f32828]
sub eax, dword [0x141f3282c]
xor eax, 0x22204008
and eax, 0x26acc149
add eax, 0x5b20ab0a
cmp eax, 0x53c420a0
jb 0x14003e700
mov eax, r9d
and eax, 0x7f
nop dword [rax + rax]
test r15b, r15b
jne 0x14003e730
test eax, eax
je 0x14003e745
mov rdi, qword [rbp + 0x1060]
jmp 0x14003e8ba
mov dword [rbp + 0x1038], eax
mov qword [rbp + 0x1010], r9
mov eax, dword [0x141f32830]
or eax, dword [0x141f32834]
and eax, 0x40f042
cmp eax, 0x7eb3b3dd
je 0x14003ea6c
mov eax, dword [0x141f32838]
and eax, dword [0x141f3283c]
or eax, 0x9568ae46
imul r15d, eax, 0x4893a2a7
or r15d, 0x208046a2
mov rax, qword [rbp + 0x1060]
lea r14, [rax + 1]
mov qword [rbp + 0x7b0], r14
sub rsp, 0x20
lea rcx, [rbp - 0x80]
lea rdx, [rbp + 0x780]
lea rdi, [rbp + 0x380]
mov r8, rdi
xor r9d, r9d
call fcn.140041240
mov r8d, 0x400
lea rcx, [rbp + 0xb80]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp r15d, 0x6f28cc4
jb 0x14003ea6c
mov qword [rbp + 0x1060], r14
mov eax, dword [0x141f32840]
xor eax, dword [0x141f32844]
add eax, 0x3b3652f4
imul rax, rax, 0x7f7b7f8b
shr rax, 0x3e
add eax, 0x3e4a4d93
cmp eax, 0x15fbddf5
jae 0x14003e837
sub rsp, 0x20
lea rcx, [rbp - 0x80]
lea rdx, [rbp + 0xb80]
lea r8, [rbp + 0x380]
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
lea r14, [rbp - 0x80]
lea r13, [rbp + 0xb80]
nop word cs:[rax + rax]
mov r15d, dword [0x141f32848]
xor r15d, dword [0x141f3284c]
xor r15d, 0x10268c1
and r15d, 0x6993e9e1
sub rsp, 0x20
mov rcx, r14
mov rdx, r13
mov r8, rdi
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
cmp r15d, 0xa0297f4a
je 0x14003e850
mov rdi, qword [rbp + 0x1060]
mov r10, qword [rbp + 0x1050]
xor r15d, r15d
mov r11, qword [rbp + 0x1018]
mov r13, qword [rbp + 0x1068]
mov r9, qword [rbp + 0x1010]
mov eax, dword [rbp + 0x1038]
mov eax, eax
lea rax, [rax*8 + 0x380]
add rax, rbp
lea ecx, [r9 + 1]
mov dword [rbp + 0x1010], ecx
mov ecx, dword [0x141f32870]
xor ecx, dword [0x141f32874]
add ecx, 0x316f4d73
and ecx, 0xb38cbe01
add ecx, 0xd3032b13
cmp ecx, 0x4a2181f5
ja 0x14003e8d1
mov r8, qword [rax]
mov edx, r11d
cmp byte [rbp + 0x1000], 0
je 0x14003e96a
mov qword [rbp + 0x1060], rdi
mov ecx, edx
cmp byte [rbp + 0x107f], 0
je 0x14003ea04
cmp byte [rbp + 0x1008], 0
mov r14, qword [rbp + 0x1070]
je 0x14003eabc
dec r9d
nop word cs:[rax + rax]
mov eax, dword [0x141f32898]
xor edx, edx
div dword [0x141f3289c]
or eax, 0x7f5ddfb3
imul rax, rax, 0x23cce829
shr rax, 0x3c
cmp eax, 0xe01c7318
ja 0x14003e940
jmp 0x14003eb04
mov rcx, r8
shr rcx, 0x20
mov r14, r9
nop word cs:[rax + rax]
mov r9d, dword [0x141f32878]
xor r9d, dword [0x141f3287c]
xor r9d, 0x2a08203f
add r9d, 0xaf3429ac
and r9d, 0xc8744a47
mov eax, ecx
xor edx, edx
div r13d
cmp r9d, 0xf0ca606c
je 0x14003e980
nop word cs:[rax + rax]
mov eax, dword [0x141f32880]
sub eax, dword [0x141f32884]
and eax, 0x642fe118
add eax, 0x21be9cbb
shr eax, 2
imul rax, rax, 0x4243fea5
shr rax, 0x3b
cmp eax, 0x8db6cb48
ja 0x14003e9c0
mov r9, r14
mov qword [rbp + 0x1060], rdi
mov ecx, edx
cmp byte [rbp + 0x107f], 0
jne 0x14003e91c
mov r14, qword [rbp + 0x1070]
nop dword [rax + rax]
test r15b, r15b
jne 0x14003ea10
mov rax, qword [rbp + 0xf90]
add eax, r9d
mov rdi, r9
mov edx, dword [0x141f32888]
xor edx, dword [0x141f3288c]
imul r9d, edx, 0x45a3a770
add r9d, 0x952d9f20
test edi, edi
mov edx, dword [rbp + 0xff0]
cmove edx, dword [rbp + 0xf80]
add edx, r10d
cmp r11, rcx
cmove edx, eax
cmp r9d, 0xc7ff6b64
ja 0x14003ea22
mov r9d, edx
mov rax, qword [rbp + 0xf88]
jmp 0x14003eb06
mov rax, qword [rbp + 0x1060]
inc rax
mov qword [rbp + 0x7b0], rax
sub rsp, 0x20
lea rcx, [rbp - 0x80]
lea rdx, [rbp + 0x780]
lea rdi, [rbp + 0x380]
mov r8, rdi
xor r9d, r9d
call fcn.140041240
mov r8d, 0x400
lea rcx, [rbp + 0xb80]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
jmp 0x14003e76e
cmp r11, rcx
jne 0x14003eaca
add r9d, dword [rbp + 0xff4]
jmp 0x14003eb04
cmp r9d, 1
mov rax, qword [rbp + 0xfc8]
mov r9d, eax
sbb r9d, 0
nop dword [rax]
mov eax, dword [0x141f32890]
imul eax, dword [0x141f32894]
and eax, 0x68ff98d
imul eax, eax, 0x2985d264
add eax, 0xc291ca3d
cmp eax, 0x84839b7e
jb 0x14003eae0
xor eax, eax
mov edx, r8d
imul rdx, rdx
shr rdx, 0x20
mov r8d, r9d
imul rdx, r8
shr rdx, 0x20
not rdx
add rax, r8
add rax, rdx
mov rdx, rax
shr rdx, 0x20
je 0x14003eb43
xor edx, edx
div r10
mov rdi, rdx
mov r15d, esi
cmp r14, r15
ja 0x14003eb56
jmp 0x14003f4be
xor edx, edx
div r10d
mov edi, edx
mov r15d, esi
cmp r14, r15
jbe 0x14003f4be
imul rcx, r10
add rdi, rcx
shl r15, 0xa
add r15, qword [rbp + 0x1048]
sub rsp, 0x20
mov r8d, 0x400
lea rcx, [rbp + 0xb80]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141f328a0]
xor edx, edx
div dword [0x141f328a4]
imul eax, eax, 0xd6a99258
add eax, 0x6481647a
cmp eax, 0x30f6f105
jb 0x14003eb90
cmp r14, rbx
jbe 0x14003f539
nop dword [rax]
mov eax, dword [0x141f328a8]
add eax, dword [0x141f328ac]
or eax, 0x2d5621f2
xor eax, 0x9442ae3b
add eax, 0x34aba746
cmp eax, 0x5c996a99
jb 0x14003ebc0
cmp rdi, r14
jae 0x14003f413
mov qword [rbp + 0x1038], rsi
shl rbx, 0xa
mov rcx, qword [rbp + 0x1048]
add rbx, rcx
shl rdi, 0xa
mov eax, dword [0x141f328b0]
imul eax, dword [0x141f328b4]
add rdi, rcx
xor eax, 0x6434c02
or eax, 0xc09c90fd
cmp eax, 0x278cf059
jne 0x14003ec47
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
lea r8, [rbp + 0xb80]
movzx r9d, byte [rbp + 0x107c]
call fcn.140041240
add rsp, 0x20
lea r13, [rbp + 0xb80]
movzx esi, byte [rbp + 0x107c]
nop word cs:[rax + rax]
mov eax, dword [0x141f328b8]
xor eax, dword [0x141f328bc]
imul r14d, eax, 0xabfa5bcf
add r14d, 0x58d4a3c2
sub rsp, 0x20
mov rcx, rbx
mov rdx, rdi
mov r8, r13
mov r9d, esi
call fcn.140041240
add rsp, 0x20
cmp r14d, 0x477eb6dd
ja 0x14003ec60
mov eax, dword [0x141f328c0]
or eax, dword [0x141f328c4]
imul rax, rax, 0x34a868c7
shr rax, 0x3d
or eax, 0x96dff4fe
cmp eax, 0xaaab1560
mov r14, r13
jbe 0x14003ecdb
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r15
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov r13, qword [rbp + 0x1068]
mov ebx, dword [rbp + 0x105c]
mov rsi, qword [rbp + 0x1038]
nop
mov edi, dword [0x141f328c8]
add edi, dword [0x141f328cc]
or edi, 0x12000628
and edi, 0x92442e28
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r15
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp edi, 0x8d438918
je 0x14003ecf0
inc esi
inc r12d
mov ecx, r12d
mov eax, dword [rbp + 0x1010]
mov r9d, eax
cmp eax, ebx
mov r10, qword [rbp + 0x1050]
mov r15d, 0
mov r11, qword [rbp + 0x1018]
jne 0x14003e5e0
inc r11
mov edx, 0xd8c614cb
nop
mov eax, dword [0x141f328d0]
mov ecx, dword [0x141f328d4]
add eax, ecx
add eax, 0x7bd7b5a8
imul rax, rdx
shr rax, 0x3f
cmp eax, 0xcf7c7119
je 0x14003ed60
mov r13, qword [rbp + 0x1048]
mov rdi, qword [rbp + 0xfd8]
mov r15, qword [rbp + 0xfa0]
lea r12, [rbp + 0x7b0]
mov r8, qword [rbp + 0xfd0]
mov esi, dword [rbp + 0xff8]
nop dword [rax + rax]
mov eax, dword [0x141f328d8]
add eax, dword [0x141f328dc]
and eax, 0x761c9b62
add eax, 0x813c572a
xor eax, 0xaef69f35
cmp eax, 0x959920ce
ja 0x14003edb0
cmp r11, qword [rbp + 0x1068]
jne 0x14003e030
jmp 0x14003f000
mov qword [rbp + 0x780], rcx
mov qword [rbp + 0x788], r11
jmp 0x14003e410
mov eax, dword [0x141f327d0]
sub eax, dword [0x141f327d4]
imul eax, eax, 0x64985976
cmp eax, 0xc3af084
mov ebx, dword [rbp + 0x105c]
je 0x14003ee5f
nop word cs:[rax + rax]
mov eax, dword [0x141f327d8]
add eax, dword [0x141f327dc]
imul eax, eax, 0x6356aa00
xor eax, 0x1eba195c
imul eax, eax, 0xb5668d38
mov qword [rbp + 0x7b0], 1
cmp eax, 0x18150bc0
jne 0x14003ee6c
mov qword [rbp + 0x7b0], 1
jmp 0x14003ee30
mov eax, dword [0x141f327e0]
sub eax, dword [0x141f327e4]
xor eax, 0x2b8d99d9
imul rax, rax, 0x5343d5d3
shr rax, 0x3e
or eax, 0xa44f937a
cmp eax, 0xdca4edaa
je 0x14003eedf
nop word cs:[rax + rax]
mov esi, dword [0x141f327e8]
and esi, dword [0x141f327ec]
add esi, 0x3f76ca21
xor esi, 0x7f4e7483
add esi, 0x7a601704
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
mov r8, r14
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
cmp esi, 0x4e397e0e
jae 0x14003eefa
sub rsp, 0x20
mov rcx, r13
mov rdx, r12
mov r8, r14
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
jmp 0x14003eea0
mov eax, dword [0x141f327f0]
xor edx, edx
div dword [0x141f327f4]
xor eax, 0xcdd58a4a
imul eax, eax, 0x2aa0808b
cmp eax, 0x2d4348b4
jne 0x14003ef4b
sub rsp, 0x20
mov r8d, 0x400
lea rsi, [rbp + 0xb80]
mov rcx, rsi
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r13
mov rdx, rsi
mov r8, r14
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
lea rdi, [rbp + 0xb80]
nop word cs:[rax + rax]
mov eax, dword [0x141f327f8]
add eax, dword [0x141f327fc]
or eax, 0xe66c6b02
imul esi, eax, 0x462e9129
add esi, 0xaffe2ea9
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rdi
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r13
mov rdx, rdi
mov r8, r14
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
cmp esi, 0xbf7beb83
ja 0x14003ef60
mov dword [rbp + 0x1044], 0
mov r9d, 2
mov al, 1
mov qword [rbp + 0x1000], rax
mov eax, 1
mov qword [rbp + 0x1060], rax
movzx eax, byte [rbp + 0x107d]
mov qword [rbp + 0x1008], rax
movzx eax, byte [rbp + 0x107e]
mov byte [rbp + 0x107f], al
mov r10, qword [rbp + 0x1050]
jmp 0x14003e3f2
mov eax, dword [0x141f328e0]
mov ecx, dword [0x141f328e4]
add eax, ecx
add eax, 0xf951218f
or eax, 0x3949df91
cmp eax, 0xd21df6a2
je 0x14003f000
mov rax, qword [rbp + 0xfb8]
mov rdx, rax
cmp rax, 4
mov ecx, 0xded48035
jne 0x14003df80
nop dword [rax + rax]
mov eax, dword [0x141f328e8]
xor edx, edx
div dword [0x141f328ec]
xor eax, 0x6b01e6af
imul rax, rax, 0x3a0986d7
shr rax, 0x3d
or eax, 0x76fe23c4
cmp eax, 0xa487d958
je 0x14003f040
mov rax, qword [rbp + 0xfc0]
mov r8, rax
cmp rax, rdi
jne 0x14003df13
lea esi, [r10 - 1]
nop word cs:[rax + rax]
mov eax, dword [0x141f32978]
mov ecx, dword [0x141f3297c]
add eax, ecx
add eax, 0xca9b333d
cmp eax, 0xfbd38e54
ja 0x14003f090
mov r14, qword [rbp + 0x1070]
cmp r14, rsi
mov rbx, qword [rbp + 0xfb0]
mov rdi, qword [rbp + 0x1068]
jbe 0x14003f6e4
mov eax, 0xa8e2d8cf
nop dword [rax]
mov ecx, dword [0x141f32990]
sub ecx, dword [0x141f32994]
and ecx, 0xa3f0a0d5
mov rdx, rcx
imul rdx, rax
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1e
or ecx, 0x82cacd38
cmp ecx, 0x958e7f09
ja 0x14003f0d0
mov rdx, rsi
shl rdx, 0xa
add rdx, r13
sub rsp, 0x20
lea rcx, [rbp + 0xb80]
mov r8d, 0x400
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp edi, 2
mov r11, qword [rbp + 0x1050]
jb 0x14003f260
lea rcx, [r13 + 0x30]
lea r8d, [r11*2 - 1]
mov r9d, 1
nop word [rax + rax]
mov r10d, r8d
shl r10, 0xa
add r10, rcx
mov eax, dword [0x141f329b8]
xor edx, edx
div dword [0x141f329bc]
imul eax, eax, 0x3611b76d
xor eax, 0x25b27b30
add eax, 0xa7201e51
cmp eax, 0xbf2f3dc
jb 0x14003f15a
mov eax, r9d
imul eax, r11d
add eax, esi
cmp r14, rax
jbe 0x14003f679
inc r9
xor eax, eax
nop word cs:[rax + rax]
movups xmm0, xmmword [r10 + rax*8 - 0x30]
movups xmm1, xmmword [r10 + rax*8 - 0x20]
movups xmm2, xmmword [rbp + rax*8 + 0xb80]
xorps xmm2, xmm0
movups xmm0, xmmword [rbp + rax*8 + 0xb90]
xorps xmm0, xmm1
movups xmm1, xmmword [rbp + rax*8 + 0xba0]
movups xmm3, xmmword [rbp + rax*8 + 0xbb0]
movups xmmword [rbp + rax*8 + 0xb80], xmm2
movups xmmword [rbp + rax*8 + 0xb90], xmm0
movups xmm0, xmmword [r10 + rax*8 - 0x10]
xorps xmm0, xmm1
movups xmm1, xmmword [r10 + rax*8]
xorps xmm1, xmm3
movups xmmword [rbp + rax*8 + 0xba0], xmm0
movups xmmword [rbp + rax*8 + 0xbb0], xmm1
add rax, 8
cmp rax, 0x80
jne 0x14003f1a0
nop
mov eax, dword [0x141f329d8]
and eax, dword [0x141f329dc]
imul eax, eax, 0xf49524e0
xor eax, 0xd1f89a48
cmp eax, 0x501f8edf
jb 0x14003f210
nop
mov eax, dword [0x141f329e0]
imul eax, dword [0x141f329e4]
xor eax, 0xd980b10
or eax, 0xe227d086
imul eax, eax, 0xbe376226
cmp eax, 0x5b9ca079
jb 0x14003f230
add r8d, r11d
cmp r9, rdi
jne 0x14003f150
mov r14, qword [rbp + 0xf98]
test r14, r14
je 0x14003f444
mov eax, dword [0x141f32998]
or eax, dword [0x141f3299c]
and eax, 8
cmp eax, 0xcbc4a6cc
jne 0x14003f2a0
sub rsp, 0x20
mov ecx, 8
mov rdx, r14
call fcn.1400c6170
add rsp, 0x20
nop dword [rax + rax]
mov eax, dword [0x141f329a0]
or eax, dword [0x141f329a4]
add eax, 0x68642dcf
imul rdi, rax, 0x4009b4bd
shr rdi, 0x3e
sub rsp, 0x20
mov ecx, 8
mov rdx, r14
call fcn.1400c6170
add rsp, 0x20
cmp edi, 0x7a1056bc
ja 0x14003f2a0
mov rsi, rax
nop dword [rax]
mov eax, dword [str.u_vm_t]
add eax, dword [0x141f329ac]
imul eax, eax, 0xc140c194
add eax, 0x554aa22c
cmp eax, 0xde6a8fcc
ja 0x14003f2e0
test rsi, rsi
je 0x14003d4cb
nop word [rax + rax]
mov eax, dword [0x141f329b0]
add eax, dword [0x141f329b4]
imul eax, eax, 0x466ae2f4
xor eax, 0x61359005
or eax, 0x8e486efa
cmp eax, 0x953216cc
je 0x14003f310
xor eax, eax
test al, al
je 0x14003f9e8
jmp 0x14003fa59
mov eax, dword [0x141f32740]
or eax, dword [0x141f32744]
or eax, 0x160d520
and eax, 0x3168d528
xor eax, 0xbfb6c94
cmp eax, 0x880b64fc
ja 0x14003f350
mov rbx, qword [rbp + 0xfe0]
nop dword [rax]
mov eax, dword [0x141f32748]
and eax, dword [0x141f3274c]
imul eax, eax, 0xe2c2b138
add eax, 0x7cee31f1
or eax, 0x81fc7012
cmp eax, 0x378ccb2a
jb 0x14003f380
cmp ebx, 1
je 0x14003f458
cmp ebx, 2
jne 0x14003f483
sub rsp, 0x20
lea rcx, [rbp - 0x80]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
lea rcx, [rbp + 0x7b8]
sub rsp, 0x20
mov r8d, 0x3c8
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
nop word [rax + rax]
mov eax, dword [0x141f328f0]
or eax, dword [0x141f328f4]
imul eax, eax, 0x336d8872
or eax, 0x6f399495
cmp eax, 0x5e72027e
je 0x14003f3f0
jmp 0x14003f828
ud2
mov esi, 1
xor eax, eax
test al, al
je 0x14003f9e8
jmp 0x14003fa59
mov eax, dword [0x141f328f8]
sub eax, dword [0x141f328fc]
xor eax, 0x241050
or eax, 0xc0100a2a
and eax, 0xc3b53a7e
cmp eax, 0xd7baa3c
jae 0x14003f7b8
jmp 0x14003f7f1
mov eax, 0xd11505ab
nop dword [rax + rax]
mov ecx, dword [0x141f32918]
imul ecx, dword [0x141f3291c]
and ecx, 0xf6e7b59b
imul rcx, rax
shr rcx, 0x3e
xor ecx, 0x4079e616
cmp ecx, 0xe5a8e693
ja 0x14003f490
jmp 0x14003f95b
mov eax, dword [0x141f32940]
add eax, dword [0x141f32944]
and eax, 0x5413012a
cmp eax, 0x63ac9563
jne 0x14003f4e0
ud2
mov eax, dword [0x141f32948]
xor eax, dword [0x141f3294c]
imul eax, eax, 0xde1e1a80
imul rax, rax, 0x40e5c047
shr rax, 0x3d
ud2
mov eax, dword [0x141f32958]
imul eax, dword [0x141f3295c]
and eax, 0x2b72ba12
imul eax, eax, 0xeb8a8e88
cmp eax, 0x11233d76
jne 0x14003f560
ud2
mov eax, dword [0x141f32960]
xor eax, dword [0x141f32964]
or eax, 0x9225bda1
imul rax, rax, 0x37a94979
shr rax, 0x3d
xor eax, 0x836d8761
ud2
mov eax, dword [0x141f32928]
and eax, dword [0x141f3292c]
or eax, 0x4b060c20
imul eax, eax, 0x3c3e5f12
add eax, 0x32db5189
cmp eax, 0x737fe240
jae 0x14003f982
jmp 0x14003f9af
mov eax, dword [0x141f326c8]
imul eax, dword [0x141f326cc]
or eax, 0x19000
and eax, 0x19189
cmp eax, 0xdb8f2629
jbe 0x14003f600
ud2
mov eax, dword [0x141f326d0]
and eax, dword [0x141f326d4]
imul rcx, rax, 0x1104809b
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
or eax, 0xfd3c8bd8
ud2
mov eax, dword [0x141f326f0]
or eax, dword [0x141f326f4]
add eax, 0x2329294a
and eax, 0x243ee843
cmp eax, 0xcffe743c
jne 0x14003f767
jmp 0x14003f782
mov eax, dword [0x141f329c0]
xor eax, dword [0x141f329c4]
imul eax, eax, 0xcca4bcfd
and eax, 0x53fb4225
add eax, 0x6c494590
cmp eax, 0x44909eed
jae 0x14003f6a0
ud2
mov eax, dword [0x141f329c8]
sub eax, dword [0x141f329cc]
imul eax, eax, 0x9d947ae6
ud2
mov eax, dword [0x141f32980]
xor eax, dword [0x141f32984]
xor eax, 0xd1960c1d
imul eax, eax, 0xf5f8f74d
xor eax, 0x25855fb0
cmp eax, 0x791ce8a4
jae 0x14003f710
ud2
mov eax, dword [0x141f32988]
sub eax, dword [0x141f3298c]
or eax, 0xe8e5eba5
imul rax, rax, 0x4112b0cd
shr rax, 0x3e
imul eax, eax, 0x96be556a
ud2
mov eax, dword [0x141f32698]
xor eax, dword [0x141f3269c]
add eax, 0x3fc50cfa
xor eax, 0xefda217a
ud2
ud2
mov eax, dword [0x141f326f8]
or eax, dword [0x141f326fc]
imul eax, eax, 0x5ab6ea50
ud2
ud2
mov esi, dword [0x141f32900]
and esi, dword [0x141f32904]
add esi, 0x699d2e0b
and esi, 0x977d63d4
sub rsp, 0x20
lea rcx, [rbp - 0x80]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp esi, 0x1fcdd24f
jne 0x14003f80c
sub rsp, 0x20
lea rcx, [rbp - 0x80]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x14003f7b8
lea rcx, [rbp + 0x7b8]
sub rsp, 0x20
mov r8d, 0x3c8
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, dword [0x141f32908]
sub eax, dword [str.P3a]
add eax, 0x328e6b4a
or eax, 0x70ab6432
imul rax, rax, 0x52fdf8a9
shr rax, 0x3e
cmp eax, 0x88863aa0
ja 0x14003f8b4
mov eax, dword [0x141f32910]
add eax, dword [0x141f32914]
imul rax, rax, 0x7b65c129
shr rax, 0x3d
imul esi, eax, 0xdb2aad59
sub rsp, 0x20
lea rcx, [rbp + 0x380]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbp + 0x780], xmm0
mov qword [rbp + 0x790], 0
mov qword [rbp + 0x798], r15
mov qword [rbp + 0x7a0], rdi
cmp esi, 0x317939a1
jne 0x14003f8f8
sub rsp, 0x20
lea rcx, [rbp + 0x380]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbp + 0x780], xmm0
mov qword [rbp + 0x790], 0
mov qword [rbp + 0x798], r15
mov qword [rbp + 0x7a0], rdi
jmp 0x14003f850
mov qword [rbp + 0x7a8], rbx
mov qword [rbp + 0x7b0], 1
sub rsp, 0x20
lea rsi, [rbp - 0x80]
lea rdx, [rbp + 0x780]
lea rdi, [rbp + 0x380]
mov rcx, rsi
mov r8, rdi
xor r9d, r9d
call fcn.140041240
lea rbx, [rbp + 0xb80]
mov r8d, 0x400
mov rcx, rbx
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
xor r9d, r9d
call fcn.140041240
add rsp, 0x20
ud2
mov eax, dword [0x141f32930]
or eax, dword [0x141f32934]
and eax, 0x1a44b3aa
add eax, 0xdb8cf426
mov ecx, 0xa16bd87d
imul rcx, rax
shr rcx, 0x3e
ud2
ud2
mov eax, dword [0x141f329e8]
xor edx, edx
div dword [0x141f329ec]
imul eax, eax, 0x2217dd74
add eax, 0x5110780b
imul rdi, rax, 0x1bfa2a6b
shr rdi, 0x3c
mov qword [rbx], r14
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], r14
sub rsp, 0x20
lea r8, [rbp + 0xb80]
mov r9d, 0x400
mov rcx, rsi
mov rdx, r14
call fcn.140040b40
add rsp, 0x20
mov rcx, qword [0x141f49060]
sub rsp, 0x20
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
cmp edi, 0x49ff2d2b
jbe 0x14003faa3
mov qword [rbx], r14
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], r14
sub rsp, 0x20
lea r8, [rbp + 0xb80]
mov r9d, 0x400
mov rcx, rsi
mov rdx, r14
call fcn.140040b40
add rsp, 0x20
mov rcx, qword [0x141f49060]
sub rsp, 0x20
xor edx, edx
mov r8, r13
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x14003f9e8
movaps xmm6, xmmword [rbp + 0x1080]
lea rsp, [rbp + 0x1098]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret