Function at 0x140039580
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, 0x1128
call fcn.1400ef3b0
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1090], xmm6
mov rsi, rdx
xor eax, eax
test al, al
jne 0x1400395f2
mov eax, dword [0x141dc5320]
imul eax, dword [0x141dc5324]
imul edx, eax, 0x3e618f60
add edx, 0xa20a7202
mov eax, 0x10
call fcn.1400ef3b0
sub rsp, rax
mov r9, rsp
mov eax, 0x10
call fcn.1400ef3b0
sub rsp, rax
mov r10, rsp
cmp edx, 0x7152da78
jae 0x14003960e
mov eax, 0x10
call fcn.1400ef3b0
sub rsp, rax
mov eax, 0x10
call fcn.1400ef3b0
sub rsp, rax
jmp 0x1400395b1
mov eax, 0xe0
call fcn.1400ef3b0
sub rsp, rax
mov rbx, rsp
mov eax, 0x50
call fcn.1400ef3b0
sub rsp, rax
mov r14, rsp
mov r12d, dword [rsi + 0x44]
mov edx, dword [rsi + 0x58]
mov r8, rdx
imul r8, r12
mov rax, r8
shr rax, 0x36
jne 0x1400396b8
mov r15, r8
shl r15, 0xa
movabs rax, 0x7ffffffffffffff9
cmp r15, rax
jae 0x1400396b8
test r15, r15
mov qword [rbp + 0x1070], rdx
mov qword [rbp + 0xfb8], rcx
mov qword [rbp + 0x1080], r8
mov qword [rbp + 0x1050], r9
mov qword [rbp + 0xff0], r10
je 0x1400396ae
mov eax, dword [0x141dc5338]
sub eax, dword [0x141dc533c]
or eax, 0x2100
and eax, 0x4001e100
add eax, 0x13274467
cmp eax, 0xb3434933
jbe 0x1400399c7
jmp 0x1400399f2
mov edi, 8
xor r9d, r9d
jmp 0x140039711
mov eax, dword [0x141dc5328]
imul eax, dword [0x141dc532c]
or eax, 0x7d3a29bc
imul rax, rax, 0x569933eb
shr rax, 0x3d
xor eax, 0xcf8f6b7b
cmp eax, 0xb101192a
jb 0x14003970b
mov eax, dword [0x141dc5330]
xor eax, dword [0x141dc5334]
imul rax, rax, 0x1fa18ddd
shr rax, 0x3b
xor eax, 0x85b2346a
add eax, 0x8cf814c1
ud2
ud2
ud2
mov eax, dword [0x141dc5368]
xor edx, edx
div dword [0x141dc536c]
nop
mov eax, dword [0x141dc5370]
or eax, dword [0x141dc5374]
add eax, 0x9e141d9e
imul rcx, rax, 0x70cee65
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
or eax, 0x9b1fbf4c
cmp eax, 0x7b549d00
jb 0x140039720
cmp r8, 2
mov qword [rbp + 0x1058], r12
mov qword [rbp + 0xff8], r9
jb 0x140039790
mov eax, dword [0x141dc5378]
sub eax, dword [0x141dc537c]
add eax, 0x762a0e4f
and eax, 0x71ac938e
xor eax, 0xb0981c9b
cmp eax, 0x24af5c78
jae 0x140039842
jmp 0x14003988c
mov eax, dword [0x141dc5390]
and eax, dword [0x141dc5394]
shr eax, 1
imul rax, rax, 0x411efa1f
shr rax, 0x3b
or eax, 0xbdcbbeb0
xor eax, 0x90ea6b59
cmp eax, 0x463ccbb9
ja 0x140039790
mov r13, rdi
test r8, r8
mov r15d, 1
jne 0x1400398df
mov rcx, qword [rbp + 0xff8]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5398]
and eax, dword [0x141dc539c]
and eax, 0x57180896
add eax, 0x3ea65c14
or eax, 0x76e9a800
cmp eax, 0x74707d64
jb 0x1400397e0
test rcx, rcx
je 0x140039834
mov rcx, qword [0x141ddb9a0]
sub rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1080], rax
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov edi, 8
jmp 0x140039965
xor eax, eax
mov qword [rbp + 0x1080], rax
jmp 0x140039965
mov eax, dword [str.ySQ]
and eax, dword [0x141dc5384]
or eax, 0x146d2860
mov ecx, 0xe027a4c5
imul rcx, rax
shr rcx, 0x3e
imul r12d, ecx, 0x905f82f0
lea r13, [r15 - 0x400]
sub rsp, 0x20
mov rcx, rdi
xor edx, edx
mov r8, r13
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp r12d, 0x73322b54
jne 0x1400398a7
lea r8, [r15 - 0x400]
sub rsp, 0x20
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x140039842
add r13, rdi
mov eax, 0xe04eea79
nop
mov ecx, dword [0x141dc5388]
or ecx, dword [0x141dc538c]
and ecx, 0x1082e5
or ecx, 0xabea690a
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0x98d7606f
je 0x1400398b0
mov r15, qword [rbp + 0x1080]
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp qword [rbp + 0xff8], r15
mov qword [rbp + 0x1080], r15
jbe 0x140039965
mov r9, r15
nop word [rax + rax]
mov eax, dword [0x141dc53a0]
add eax, dword [0x141dc53a4]
imul rcx, rax, 0x7f7ee8bb
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
and eax, 2
or eax, 0x9eae2474
cmp eax, 0x207bf17f
je 0x140039910
shl r9, 0xa
mov rcx, qword [0x141ddb9a0]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapReAlloc]
add rsp, 0x20
mov rdi, rax
test rax, rax
je 0x1400399a6
mov eax, dword [0x141dc53b8]
or eax, dword [0x141dc53bc]
add eax, 0xe331aead
imul rcx, rax, 0x3c8d4223
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
or eax, 0x6035d118
cmp eax, 0x68cbcb26
mov r12, qword [rbp + 0xff0]
jbe 0x140039b09
jmp 0x140039d24
mov eax, dword [0x141dc53a8]
sub eax, dword [0x141dc53ac]
and eax, 0xfe7f591b
cmp eax, 0xf0239fc6
jne 0x140039acd
jmp 0x140039af1
mov eax, dword [0x141dc5340]
imul eax, dword [0x141dc5344]
xor eax, 0x88843d22
and eax, 0x88f63faa
imul eax, eax, 0x7cd64626
movzx ecx, byte [0x141ddb9b8]
cmp eax, 0x57e72174
jae 0x1400399fb
movzx eax, byte [0x141ddb9b8]
jmp 0x1400399c7
mov eax, dword [0x141dc5348]
or eax, dword [0x141dc534c]
imul rax, rax, 0x40d5f213
shr rax, 0x39
imul eax, eax, 0xa2adeedf
add eax, 0x2fb140da
cmp eax, 0xe54609c4
ja 0x140039a54
mov r13d, dword [0x141dc5350]
or r13d, dword [0x141dc5354]
add r13d, 0x5b1617
sub rsp, 0x20
xor ecx, ecx
mov rdx, r15
call fcn.1400bf820
add rsp, 0x20
cmp r13d, 0x4ed133b0
jae 0x140039a68
sub rsp, 0x20
xor ecx, ecx
mov rdx, r15
call fcn.1400bf820
add rsp, 0x20
jmp 0x140039a24
mov rdi, rax
nop dword [rax + rax]
mov eax, dword [0x141dc5358]
or eax, dword [str._dB_BB]
xor eax, 0x1a5664b5
imul eax, eax, 0xea70b8a9
or eax, 0x791e5273
cmp eax, 0x159d24e2
jb 0x140039a70
mov r8, qword [rbp + 0x1080]
mov r9, r8
test rdi, rdi
jne 0x140039711
ud2
mov eax, dword [0x141dc53b0]
xor eax, dword [0x141dc53b4]
and eax, 0x449832e4
add eax, 0xda6b6491
or eax, 0xa9f64dda
ud2
ud2
mov r15d, dword [0x141dc53c0]
and r15d, dword [0x141dc53c4]
and r15d, 0x220101a6
add r15d, 0x4c95e4aa
mov rax, qword [rbp + 0x1058]
mov dword [r12], eax
mov eax, dword [rsi + 0x40]
mov rcx, qword [rbp + 0x1050]
mov qword [rbp + 0xfa0], rax
mov dword [rcx], eax
mov eax, dword [rsi + 0x48]
mov dword [rbp + 0x104c], eax
mov eax, dword [rsi + 0x4c]
mov qword [rbp + 0xfe8], rax
mov dword [rbp + 0x1048], eax
movzx eax, byte [rsi + 0x50]
mov dword [rbp + 0xfe0], eax
mov dword [rbp + 0x1044], eax
mov qword [rbx], r12
mov qword [rbx + 8], 4
mov qword [rbx + 0x10], rcx
mov qword [rbx + 0x18], 4
lea rax, [rbp + 0x104c]
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], 4
lea rax, [rbp + 0x1048]
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x38], 4
lea rax, [rbp + 0x1044]
mov qword [rbx + 0x40], rax
mov qword [rbx + 0x48], 4
lea rax, [rbp + 0x1040]
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], 4
lea rax, [rbp + 0x103c]
mov qword [rbx + 0x60], rax
mov rax, qword [rsi]
mov qword [rbx + 0x68], 4
mov qword [rbx + 0x70], rax
mov rax, qword [rsi + 8]
mov dword [rbp + 0x103c], eax
mov qword [rbx + 0x78], rax
lea rax, [rbp + 0x380]
mov qword [rbx + 0x80], rax
mov rax, qword [rsi + 0x10]
mov qword [rbx + 0x88], 4
mov qword [rbx + 0x90], rax
mov rax, qword [rsi + 0x18]
mov dword [rbp + 0x380], eax
mov qword [rbx + 0x98], rax
lea rax, [rbp + 0xb80]
mov qword [rbx + 0xa0], rax
mov rax, qword [rsi + 0x30]
mov qword [rbx + 0xa8], 4
mov qword [rbx + 0xb0], rax
mov rax, qword [rsi + 0x38]
mov dword [rbp + 0xb80], eax
mov qword [rbx + 0xb8], rax
lea rax, [rbp - 0x80]
mov qword [rbx + 0xc0], rax
mov rax, qword [rsi + 0x20]
mov qword [rbx + 0xc8], 4
mov qword [rbx + 0xd0], rax
mov rax, qword [rsi + 0x28]
mov dword [rbp - 0x80], eax
mov qword [rbx + 0xd8], rax
movzx r13d, byte [rsi + 0x51]
mov dword [rbp + 0x1040], r13d
xorps xmm0, xmm0
movaps xmmword [rbp + 0x7b0], xmm0
movaps xmmword [rbp + 0x7a0], xmm0
movaps xmmword [rbp + 0x790], xmm0
movaps xmmword [rbp + 0x780], xmm0
mov qword [rbp + 0x7c0], 0
sub rsp, 0x20
lea rcx, [rbp + 0x780]
mov edx, 0x40
mov r9d, 0xe
mov r8, rbx
call fcn.14003bb20
add rsp, 0x20
movaps xmm0, xmmword [rbp + 0x780]
movaps xmm1, xmmword [rbp + 0x790]
movaps xmm2, xmmword [rbp + 0x7a0]
movaps xmm3, xmmword [rbp + 0x7b0]
movups xmmword [r14 + 0x30], xmm3
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
cmp r15d, 0xdf1b235
jae 0x140039f05
mov eax, dword [rsi + 0x40]
mov rcx, qword [rbp + 0x1050]
mov dword [rcx], eax
mov eax, dword [rsi + 0x48]
mov dword [rbp + 0x104c], eax
mov eax, dword [rsi + 0x4c]
mov dword [rbp + 0x1048], eax
movzx eax, byte [rsi + 0x50]
mov dword [rbp + 0x1044], eax
movzx eax, byte [rsi + 0x51]
mov dword [rbp + 0x1040], eax
mov qword [rbx], r12
mov qword [rbx + 8], 4
mov qword [rbx + 0x10], rcx
mov qword [rbx + 0x18], 4
lea rax, [rbp + 0x104c]
mov qword [rbx + 0x20], rax
mov qword [rbx + 0x28], 4
lea rax, [rbp + 0x1048]
mov qword [rbx + 0x30], rax
mov qword [rbx + 0x38], 4
lea rax, [rbp + 0x1044]
mov qword [rbx + 0x40], rax
mov qword [rbx + 0x48], 4
lea rax, [rbp + 0x1040]
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], 4
lea rax, [rbp + 0x103c]
mov qword [rbx + 0x60], rax
mov rax, qword [rsi]
mov qword [rbx + 0x68], 4
mov qword [rbx + 0x70], rax
mov rax, qword [rsi + 8]
mov dword [rbp + 0x103c], eax
mov qword [rbx + 0x78], rax
lea rax, [rbp + 0x380]
mov qword [rbx + 0x80], rax
mov rax, qword [rsi + 0x10]
mov qword [rbx + 0x88], 4
mov qword [rbx + 0x90], rax
mov rax, qword [rsi + 0x18]
mov dword [rbp + 0x380], eax
mov qword [rbx + 0x98], rax
lea rax, [rbp + 0xb80]
mov qword [rbx + 0xa0], rax
mov rax, qword [rsi + 0x30]
mov qword [rbx + 0xa8], 4
mov qword [rbx + 0xb0], rax
mov rax, qword [rsi + 0x38]
mov dword [rbp + 0xb80], eax
mov qword [rbx + 0xb8], rax
lea rax, [rbp - 0x80]
mov qword [rbx + 0xc0], rax
mov rax, qword [rsi + 0x20]
mov qword [rbx + 0xc8], 4
mov qword [rbx + 0xd0], rax
mov rax, qword [rsi + 0x28]
mov dword [rbp - 0x80], eax
mov qword [rbx + 0xd8], rax
mov rax, qword [rbp + 0x1058]
mov dword [r12], eax
xorps xmm0, xmm0
movaps xmmword [rbp + 0x7b0], xmm0
movaps xmmword [rbp + 0x7a0], xmm0
movaps xmmword [rbp + 0x790], xmm0
movaps xmmword [rbp + 0x780], xmm0
mov qword [rbp + 0x7c0], 0
sub rsp, 0x20
lea rcx, [rbp + 0x780]
mov edx, 0x40
mov r9d, 0xe
mov r8, rbx
call fcn.14003bb20
add rsp, 0x20
movaps xmm0, xmmword [rbp + 0x780]
movaps xmm1, xmmword [rbp + 0x790]
movaps xmm2, xmmword [rbp + 0x7a0]
movaps xmm3, xmmword [rbp + 0x7b0]
movups xmmword [r14 + 0x30], xmm3
movups xmmword [r14 + 0x20], xmm2
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
jmp 0x140039b09
cmp dword [rbp + 0x1058], 0
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
mov qword [rbp + 0x1028], r13
je 0x14003a133
nop word [rax + rax]
mov eax, dword [0x141dc53c8]
or eax, dword [0x141dc53cc]
imul eax, eax, 0x865ed488
cmp eax, 0x3007512a
je 0x140039f30
nop dword [rax]
mov eax, dword [0x141dc53d0]
xor edx, edx
div dword [0x141dc53d4]
and eax, 0x495004
or eax, 0xf7a62f69
imul eax, eax, 0xc825147a
cmp eax, 0x6f5bc466
je 0x140039f50
nop word cs:[rax + rax]
mov eax, dword [0x141dc53d8]
add eax, dword [0x141dc53dc]
imul eax, eax, 0x50145e0c
and eax, 0xe2aa0000
cmp eax, 0x2555aeed
jb 0x140039f80
xor r15d, r15d
xor r12d, r12d
nop word cs:[rax + rax]
mov eax, dword [0x141dc53e0]
or eax, dword [0x141dc53e4]
imul rax, rax, 0x6358f2c1
shr rax, 0x3e
cmp eax, 0xc7c7965f
jbe 0x140039fe0
mov dword [r14 + 0x40], 0
mov dword [r14 + 0x44], r12d
nop word [rax + rax]
mov eax, dword [0x141dc53e8]
xor eax, dword [0x141dc53ec]
and eax, 0x4b281408
xor eax, 0x18300000
or eax, 0x24c6e8f7
mov dword [r14 + 0x40], 0
mov dword [r14 + 0x44], r12d
cmp eax, 0x8d790baa
je 0x140039fe0
mov rbx, r12
imul rbx, r10
cmp rbx, r11
jae 0x14003970f
mov r13, r11
mov rcx, rbx
shl rcx, 0xa
add rcx, rdi
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov r8, r14
call fcn.14003c940
add rsp, 0x20
mov dword [r14 + 0x40], 1
inc rbx
cmp rbx, r13
jae 0x14003ba3d
inc r12
mov eax, dword [0x141dc53f8]
add eax, dword [0x141dc53fc]
or eax, 0x67c50ca1
cmp eax, 0xfba19cb1
je 0x14003a05d
shl rbx, 0xa
add rbx, rdi
mov eax, dword [0x141dc5400]
add eax, dword [0x141dc5404]
imul eax, eax, 0x8d272d1a
xor eax, 0x140604a8
and eax, 0x5cfe84ac
cmp eax, 0x6c15a26b
je 0x14003a110
nop
mov eax, dword [0x141dc5408]
xor eax, dword [0x141dc540c]
and eax, 0x546d2f1d
imul r13d, eax, 0xcf92b7c5
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov rcx, rbx
mov r8, r14
call fcn.14003c940
add rsp, 0x20
cmp r13d, 0x10049b6e
je 0x14003a110
nop
test r15b, r15b
jne 0x14003a0e0
cmp r12, qword [rbp + 0x1058]
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
mov r13, qword [rbp + 0x1028]
jne 0x140039fb0
jmp 0x14003a133
sub rsp, 0x20
mov edx, 0x400
mov r9d, 0x48
mov rcx, rbx
mov r8, r14
call fcn.14003c940
add rsp, 0x20
jmp 0x14003a0a0
mov r15, qword [rbp + 0xfe8]
test r15, r15
mov r12, qword [rbp + 0x1058]
je 0x14003b2be
nop word [rax + rax]
mov eax, dword [0x141dc5410]
imul eax, dword [0x141dc5414]
imul eax, eax, 0xbf7059f5
and eax, 0xe624078b
add eax, 0xba40199d
cmp eax, 0x95d22c54
jb 0x14003a150
test r12d, r12d
je 0x14003b2be
mov edx, dword [rsi + 0x5c]
mov r8d, dword [rsi + 0x60]
mov eax, r8d
not eax
mov qword [rbp + 0xf88], rax
add eax, r10d
mov qword [rbp + 0xf98], rax
mov r14d, r8d
neg r14d
mov eax, dword [0x141dc5418]
or eax, dword [0x141dc541c]
imul eax, eax, 0x14a36446
or eax, 0xe2a48f15
xor eax, 0x50a7fd93
cmp eax, 0xe2fba22b
ja 0x14003a1a0
nop word cs:[rax + rax]
mov eax, dword [0x141dc5420]
or eax, dword [0x141dc5424]
imul eax, eax, 0x1bddd5a7
or eax, 0x9510a9c2
imul rax, rax, 0x3d6b3be1
shr rax, 0x3d
cmp eax, 0xaae0edd4
je 0x14003a1d0
test r10, r10
mov qword [rbp + 0xfd0], rdx
je 0x14003b63d
mov dword [rbp + 0x1068], r8d
lea rsi, [rbp + 0x780]
xor eax, eax
mov qword [rbp + 0x1030], rax
mov dword [rbp + 0x1064], r14d
mov rcx, qword [rbp + 0x1030]
mov eax, dword [0x141dc5428]
or eax, dword [0x141dc542c]
imul eax, eax, 0x1c57e961
and eax, 0x8bfe2cdb
test rcx, rcx
sete byte [rbp + 0x108e]
cmp eax, 0xd4422add
je 0x14003a22e
lea rax, [rcx + 1]
mov qword [rbp + 0xfc0], rax
xor eax, eax
mov qword [rbp + 0x1018], rax
mov r8, qword [rbp + 0x1030]
mov r10, qword [rbp + 0x1018]
nop dword [rax + rax]
mov eax, dword [0x141dc5430]
add eax, dword [0x141dc5434]
and eax, 0x79efd035
xor eax, 0x13a2bfd7
imul eax, eax, 0x8bcdc4f4
lea r9, [r10 + 1]
test r10, r10
sete r11b
mov rbx, r10
or rbx, r8
xor r13d, r13d
test ebx, ebx
sete dl
mov ecx, dword [rbp + 0x1068]
mov r15d, ecx
imul r15d, r9d
cmp r10, 3
mov ecx, 0
cmovne rcx, r15
cmp eax, 0xada98121
ja 0x14003a280
mov qword [rbp + 0xf90], rcx
mov byte [rbp + 0x108d], r11b
mov qword [rbp + 0xfb0], r9
mov r13b, dl
add r13d, r13d
mov dword [rbp + 0xfe4], r13d
mov eax, dword [rbp + 0x1068]
mov ecx, eax
imul ecx, r10d
mov rax, rcx
mov qword [rbp + 0xfc8], rcx
lea eax, [rcx - 1]
mov dword [rbp + 0xfdc], eax
xor r13d, r13d
mov r15, qword [rbp + 0xfe8]
mov qword [rbp + 0xfa8], rbx
mov byte [rbp + 0x107f], dl
jmp 0x14003a343
inc r13
cmp r13, r12
mov r15, qword [rbp + 0xfe8]
je 0x14003b240
mov eax, dword [0x141dc5438]
add eax, dword [0x141dc543c]
imul eax, eax, 0x3cf5c14c
add eax, 0xa65dbd2a
or eax, 0xd1de5491
cmp eax, 0xfaad831e
mov rax, qword [rbp + 0x1028]
xor ecx, ecx
nop dword [rax]
test cl, cl
jne 0x14003a370
cmp eax, 1
mov rdx, qword [rbp + 0x1030]
mov ebx, dword [rbp + 0xfe4]
mov qword [rbp + 0x1000], r13
je 0x14003a450
cmp eax, 2
jne 0x14003a3ad
nop word cs:[rax + rax]
test cl, cl
jne 0x14003a3a0
test rdx, rdx
je 0x14003a4a5
sub rsp, 0x20
mov r8d, 0x400
lea rcx, [rbp + 0x380]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x400
lea rcx, [rbp + 0xb80]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x400
lea rcx, [rbp - 0x80]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r11, qword [rbp + 0x1080]
mov r10, qword [rbp + 0x1070]
add rsp, 0x20
mov al, 1
mov dword [rbp + 0x106c], eax
xor eax, eax
mov qword [rbp + 0x1020], rax
movzx edx, byte [rbp + 0x107f]
mov eax, edx
mov qword [rbp + 0x1008], rax
movzx eax, byte [rbp + 0x108d]
mov qword [rbp + 0x1010], rax
movzx eax, byte [rbp + 0x108e]
mov byte [rbp + 0x108f], al
mov r15d, ebx
cmp r15d, dword [rbp + 0x1068]
jae 0x14003a330
jmp 0x14003a980
sub rsp, 0x20
mov r8d, 0x400
lea rcx, [rbp + 0x380]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x3d0
lea rcx, [rbp + 0xbb0]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, dword [0x141dc5448]
or eax, dword [0x141dc544c]
add eax, 0x9fb5ae
cmp eax, 0x27a8526d
lea r14, [rbp - 0x80]
jae 0x14003a5b0
jmp 0x14003a670
test cl, cl
lea r13, [rbp + 0x380]
jne 0x14003a4f6
mov eax, dword [0x141dc5440]
imul eax, dword [0x141dc5444]
imul ebx, eax, 0x60b22e9
mov eax, 0xca4f5fcb
imul rbx, rax
shr rbx, 0x3f
or ebx, 0xb3dc9fde
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp ebx, 0xf8442992
jne 0x14003a510
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r13
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x14003a4b0
sub rsp, 0x20
xor eax, eax
mov qword [rbp + 0x1008], rax
mov r8d, 0x400
lea rcx, [rbp + 0xb80]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov r8d, 0x400
lea rcx, [rbp - 0x80]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp qword [rbp + 0x1018], 2
mov rcx, qword [rbp + 0x1028]
mov r13, qword [rbp + 0x1000]
jb 0x14003a624
mov byte [rbp + 0x108f], 1
xor eax, eax
mov qword [rbp + 0x1020], rax
xor eax, eax
mov qword [rbp + 0x1010], rax
mov al, 1
mov dword [rbp + 0x106c], eax
xor r15d, r15d
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
cmp r15d, dword [rbp + 0x1068]
jae 0x14003a330
jmp 0x14003a980
mov eax, dword [0x141dc5450]
xor edx, edx
div dword [0x141dc5454]
mov ebx, eax
add ebx, 0xc130776a
xor ebx, 0xe126794
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp ebx, 0xd58ec670
ja 0x14003a670
mov rcx, qword [rbp + 0x1028]
mov r14d, dword [rbp + 0x1064]
nop
mov eax, dword [0x141dc5458]
xor edx, edx
div dword [0x141dc545c]
or eax, 0x4041d471
add eax, 0x99408106
xor eax, 0x4101e678
cmp eax, 0xa33152f8
ja 0x14003a600
mov eax, dword [0x141dc5460]
or eax, dword [0x141dc5464]
mov rdx, qword [rbp + 0x1030]
mov qword [rbp + 0xb80], rdx
xor eax, 0x390d2eb0
imul eax, eax, 0x3ea9cb1d
cmp eax, 0x4e7f1973
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
mov r8, qword [rbp + 0xfd0]
mov r9, qword [rbp + 0x1018]
jne 0x14003a690
jmp 0x14003a6da
sub rsp, 0x20
mov r8d, 0x400
mov rcx, r14
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
jmp 0x14003a5b0
mov eax, dword [0x141dc5468]
xor edx, edx
div dword [0x141dc546c]
mov edx, 0x9a8b002d
imul rax, rdx
shr rax, 0x3f
or eax, 0xff753bae
mov qword [rbp + 0xb88], r13
mov qword [rbp + 0xb90], r9
mov qword [rbp + 0xb98], r8
mov qword [rbp + 0xba0], r15
mov qword [rbp + 0xba8], rcx
cmp eax, 0x11ccda70
jae 0x14003a700
mov qword [rbp + 0xb88], r13
mov qword [rbp + 0xb90], r9
mov qword [rbp + 0xb98], r8
mov qword [rbp + 0xba0], r15
mov qword [rbp + 0xba8], rcx
jmp 0x14003a690
mov ecx, 0xbfe99dc3
nop word cs:[rax + rax]
mov eax, dword [0x141dc5470]
xor edx, edx
div dword [0x141dc5474]
imul rax, rcx
shr rax, 0x3f
add eax, 0x130cd961
or eax, 0x474411f8
cmp eax, 0x7bbcfe6f
je 0x14003a710
mov rbx, qword [rbp + 0xfa8]
test ebx, ebx
je 0x14003a78e
xor eax, eax
mov qword [rbp + 0x1020], rax
xor eax, eax
mov qword [rbp + 0x1008], rax
movzx eax, byte [rbp + 0x108d]
mov qword [rbp + 0x1010], rax
movzx eax, byte [rbp + 0x108e]
mov byte [rbp + 0x108f], al
mov dword [rbp + 0x106c], 0
xor r15d, r15d
cmp r15d, dword [rbp + 0x1068]
jae 0x14003a330
jmp 0x14003a980
mov eax, dword [0x141dc5478]
and eax, dword [0x141dc547c]
xor eax, 0x4afc19e1
imul eax, eax, 0x81460e38
mov ecx, 0x8a4a124f
imul rax, rcx
shr rax, 0x3e
cmp eax, 0x3948ee7a
lea r15, [rbp + 0x380]
lea r14, [rbp - 0x80]
lea r13, [rbp + 0xb80]
ja 0x14003a815
nop dword [rax + rax]
mov ebx, dword [0x141dc5480]
imul ebx, dword [0x141dc5484]
or ebx, 0x4c0124e9
and ebx, 0x4c41b4eb
mov qword [rbp + 0xbb0], 1
sub rsp, 0x20
mov rcx, r15
mov rdx, r13
mov r8, r14
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
cmp ebx, 0x17d3cd0
jae 0x14003a83b
mov qword [rbp + 0xbb0], 1
sub rsp, 0x20
mov rcx, r15
mov rdx, r13
mov r8, r14
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
jmp 0x14003a7d0
mov eax, dword [0x141dc5488]
and eax, dword [0x141dc548c]
imul rax, rax, 0xbfd0677
shr rax, 0x3a
or eax, 0x33bddfe0
imul eax, eax, 0x2b89d6ef
cmp eax, 0x1576b37f
jne 0x14003a87e
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
lea rdx, [rbp - 0x80]
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
xor ebx, ebx
lea r13, [rbp - 0x80]
mov r14d, dword [rbp + 0x1064]
nop dword [rax + rax]
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
test bl, bl
jne 0x14003a890
mov eax, dword [0x141dc5490]
sub eax, dword [0x141dc5494]
imul eax, eax, 0xcb2bed24
add eax, 0x2a2079e8
cmp eax, 0xb84f7191
jb 0x14003b21d
nop
mov eax, dword [str.N0Su]
xor edx, edx
div dword [0x141dc549c]
mov ebx, eax
or ebx, 0x715d66d8
and ebx, 0x735ffedd
sub rsp, 0x20
mov rcx, r15
mov rdx, rsi
mov r8, r13
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
cmp ebx, 0x4dd79226
je 0x14003b21d
mov dword [rbp + 0x106c], 0
mov r15d, 2
mov al, 1
mov qword [rbp + 0x1008], rax
mov eax, 1
mov qword [rbp + 0x1020], rax
movzx eax, byte [rbp + 0x108d]
mov qword [rbp + 0x1010], rax
movzx eax, byte [rbp + 0x108e]
mov byte [rbp + 0x108f], al
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
mov r13, qword [rbp + 0x1000]
cmp r15d, dword [rbp + 0x1068]
jae 0x14003a330
nop word cs:[rax + rax]
mov ecx, r10d
imul ecx, r13d
mov eax, dword [0x141dc54a0]
xor edx, edx
div dword [0x141dc54a4]
mov eax, dword [0x141dc54a8]
sub eax, dword [0x141dc54ac]
xor eax, 0xdaf7b4ab
imul r9d, eax, 0x8c875590
mov rax, qword [rbp + 0xfc8]
lea r8d, [rcx + rax]
lea eax, [r8 + r15]
mov qword [rbp + 0x1050], rax
xor edx, edx
div r10d
test edx, edx
mov eax, 0
cmove eax, r10d
cmp r9d, 0xa0cfb575
ja 0x14003a995
lea r9d, [r15 + r8]
dec r9d
mov edx, dword [rbp + 0xfe0]
cmp dl, 0x10
setne r8b
mov ecx, dword [0x141dc54b0]
or ecx, dword [0x141dc54b4]
imul ecx, ecx, 0x21eb096f
add ecx, 0x45ce3649
and ecx, 0xf22779ca
cmp ecx, 0x2d2e0785
jb 0x14003a9e9
add r9d, eax
movzx eax, byte [rbp + 0x108f]
xor al, 1
and r8b, al
mov byte [rbp + 0x107e], r8b
mov r8d, r9d
nop
mov ecx, r8d
mov r8, qword [rbp + 0x1050]
mov eax, r8d
xor edx, edx
div r10d
dec r8d
cmp edx, 1
cmovne r8d, ecx
mov ecx, r8d
cmp byte [rbp + 0x106c], 0
mov dword [rbp + 0xff8], r8d
mov qword [rbp + 0xff0], rcx
je 0x14003ab00
cmp r11, rcx
jbe 0x14003b5aa
nop word cs:[rax + rax]
mov eax, dword [0x141dc54e0]
add eax, dword [0x141dc54e4]
or eax, 0x13225998
add eax, 0x58f68e3f
imul rax, rax, 0x4132a09b
shr rax, 0x3d
cmp eax, 0xe7ac6c48
je 0x14003aa80
nop dword [rax + rax]
mov eax, dword [0x141dc54e8]
xor eax, dword [0x141dc54ec]
or eax, 0xfbafaea7
imul rax, rax, 0x3382d985
shr rax, 0x39
cmp eax, 0x285a4e10
je 0x14003aab0
mov rax, rcx
shl rax, 0xa
add rax, rdi
mov r8, qword [rax]
mov edx, r13d
cmp byte [rbp + 0x1008], 0
je 0x14003ac8b
jmp 0x14003acda
mov ebx, r15d
and ebx, 0x7f
jne 0x14003ac50
mov eax, dword [0x141dc54b8]
xor eax, dword [0x141dc54bc]
add eax, 0xd32e78c2
or eax, 0x87350991
add eax, 0x29c9159f
cmp eax, 0xf6f7d496
mov rcx, qword [rbp + 0x1020]
jbe 0x14003ab40
lea rax, [rcx + 1]
mov qword [rbp + 0xbb0], rax
lea r14, [rbp - 0x80]
lea rdx, [rbp + 0xb80]
nop dword [rax + rax]
mov eax, dword [0x141dc54c0]
xor eax, dword [0x141dc54c4]
imul eax, eax, 0x7662568c
xor eax, 0x27028020
or eax, 0x587c6757
lea r13, [rcx + 1]
mov qword [rbp + 0xbb0], r13
cmp eax, 0xb0386446
ja 0x14003ab50
sub rsp, 0x20
lea rcx, [rbp + 0x380]
mov r8, r14
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
mov eax, dword [0x141dc54c8]
add eax, dword [0x141dc54cc]
or eax, 0x980c8928
cmp eax, 0x9674255
je 0x14003abf5
mov r12d, dword [0x141dc54d0]
and r12d, dword [0x141dc54d4]
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x380]
mov rdx, rsi
mov r8, r14
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
cmp r12d, 0xdb5efec6
jne 0x14003ac25
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x380]
mov rdx, rsi
mov r8, r14
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
jmp 0x14003abb0
mov qword [rbp + 0x1020], r13
mov r12, qword [rbp + 0x1058]
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
mov r14d, dword [rbp + 0x1064]
mov r13, qword [rbp + 0x1000]
nop
mov eax, dword [0x141dc54d8]
imul eax, dword [0x141dc54dc]
and eax, 0xe65ff3d6
imul eax, eax, 0x43d3f1e
cmp eax, 0x964b6049
je 0x14003ac50
mov eax, ebx
lea rax, [rax*8 - 0x80]
add rax, rbp
mov r8, qword [rax]
mov edx, r13d
cmp byte [rbp + 0x1008], 0
jne 0x14003acda
mov rcx, r8
shr rcx, 0x20
mov eax, dword [0x141dc54f0]
and eax, dword [0x141dc54f4]
imul eax, eax, 0xe3ae70e
cmp eax, 0x5abc3e3
je 0x14003ac92
nop dword [rax + rax]
mov eax, dword [0x141dc54f8]
or eax, dword [0x141dc54fc]
imul r9d, eax, 0x38ff2dc4
or r9d, 0xcfe7b7fd
mov eax, ecx
xor edx, edx
div r12d
cmp r9d, 0xc414ef8
je 0x14003acb0
lea eax, [r15 + 1]
mov dword [rbp + 0xfd8], eax
mov eax, dword [0x141dc5500]
or eax, dword [0x141dc5504]
add eax, 0x344899ca
and eax, 0x9937990b
imul eax, eax, 0xcd92f42d
cmp eax, 0xf54eb07a
je 0x14003ace4
mov ebx, edx
cmp byte [rbp + 0x108f], 0
mov r9, qword [rbp + 0xf88]
mov ecx, 0x9771be71
mov r12d, 0xf8c05509
je 0x14003ad70
cmp byte [rbp + 0x1010], 0
je 0x14003ae10
dec r15d
nop word cs:[rax + rax]
mov eax, dword [0x141dc5540]
xor edx, edx
div dword [0x141dc5544]
imul eax, eax, 0x2dd7c25c
add eax, 0x46623a08
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x8bb3d9e0
ja 0x14003ad40
jmp 0x14003ae7e
mov eax, dword [0x141dc5508]
xor edx, edx
div dword [str.xk_r]
imul eax, eax, 0xb811020a
add eax, 0xda64f070
cmp eax, 0x36c79cb3
ja 0x14003ad70
mov rax, qword [rbp + 0xf98]
add eax, r15d
nop word [rax + rax]
mov ecx, dword [0x141dc5510]
or ecx, dword [0x141dc5514]
add ecx, 0x1f2f31e3
imul rcx, r12
shr rcx, 0x3e
add ecx, 0x8adacd22
test r15d, r15d
mov edx, r14d
cmove edx, r9d
cmp ecx, 0x1797ccfc
jb 0x14003ada0
mov ecx, dword [0x141dc5518]
sub ecx, dword [0x141dc551c]
add ecx, 0x991c4dfa
or ecx, 0x340288aa
imul r9d, ecx, 0x4419fa23
lea ecx, [rdx + r10]
cmp r13, rbx
cmove ecx, eax
cmp r9d, 0xed89cac0
jae 0x14003add2
mov rax, qword [rbp + 0xf90]
jmp 0x14003aef5
cmp r13, rbx
jne 0x14003ae90
nop word cs:[rax + rax]
mov eax, dword [0x141dc5530]
imul eax, dword [0x141dc5534]
or eax, 0x96b74215
imul eax, eax, 0xb692ec96
imul rcx, rax, 0x31b7e96d
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1a
cmp eax, 0xa911ab80
ja 0x14003ae20
add r15d, dword [rbp + 0xfdc]
nop word [rax + rax]
mov eax, dword [0x141dc5538]
imul eax, dword [0x141dc553c]
and eax, 0xa8230874
add eax, 0x583cd0e2
cmp eax, 0x366f1ae4
jb 0x14003ae60
mov ecx, r15d
jmp 0x14003aef3
mov eax, dword [0x141dc5520]
imul eax, dword [0x141dc5524]
and eax, 0x104f4709
add eax, 0xa392b1ca
or eax, 0x80bf8510
cmp r15d, 1
mov ecx, 0
sbb ecx, ecx
cmp eax, 0x89638f66
je 0x14003ae90
add ecx, dword [rbp + 0xfc8]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5528]
sub eax, dword [0x141dc552c]
add eax, 0xb6a60e07
and eax, 0xc864a8ae
imul eax, eax, 0xc38fef37
cmp eax, 0x45bfd7bd
je 0x14003aed0
xor eax, eax
mov edx, r8d
imul rdx, rdx
shr rdx, 0x20
mov ecx, ecx
imul rdx, rcx
shr rdx, 0x20
not rdx
add rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 0x20
je 0x14003af40
xor edx, edx
div r10
mov r13, rdx
mov r12d, dword [rbp + 0x1050]
cmp r11, r12
ja 0x14003af58
jmp 0x14003b9c8
xor edx, edx
div r10d
mov r13d, edx
mov r12d, dword [rbp + 0x1050]
cmp r11, r12
jbe 0x14003b9c8
mov eax, dword [0x141dc5548]
xor eax, dword [0x141dc554c]
and eax, 0x233200a2
add eax, 0x8b752c8c
cmp eax, 0x97836817
jae 0x14003af9c
mov rdx, r12
shl rdx, 0xa
add rdx, rdi
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r10, qword [rbp + 0x1070]
add rsp, 0x20
imul rbx, r10
add r13, rbx
nop word cs:[rax + rax]
mov eax, dword [0x141dc5550]
add eax, dword [0x141dc5554]
imul eax, eax, 0xabf5b84d
imul rax, rax, 0x8ae43d
shr rax, 0x37
imul ebx, eax, 0xcbbfdaab
mov r15, r12
shl r15, 0xa
add r15, rdi
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp ebx, 0x655f3637
ja 0x14003afb0
mov rcx, qword [rbp + 0x1080]
xor r8d, r8d
nop dword [rax + rax]
mov eax, dword [0x141dc5558]
xor edx, edx
div dword [0x141dc555c]
or eax, 0xfd4d9aff
imul rax, rax, 0x1ec42de1
shr rax, 0x3c
cmp eax, 0xb3911cc4
je 0x14003b010
cmp rcx, qword [rbp + 0xff0]
jbe 0x14003ba11
mov eax, dword [0x141dc5560]
xor edx, edx
div dword [0x141dc5564]
mov eax, dword [0x141dc5568]
and eax, dword [0x141dc556c]
imul rax, rax, 0x7ed03fd7
shr rax, 0x3e
imul eax, eax, 0xe48c97e8
or eax, 0x22800d04
cmp eax, 0x64edc57a
ja 0x14003b050
nop dword [rax]
mov eax, dword [0x141dc5570]
and eax, dword [0x141dc5574]
xor eax, 0xa200700
or eax, 0xb5d168fb
cmp eax, 0xee57009a
je 0x14003b080
cmp r13, rcx
jae 0x14003970f
test r8b, r8b
movzx r14d, byte [rbp + 0x107e]
mov r12, qword [rbp + 0xff0]
jne 0x14003b1e0
nop
mov ebx, dword [0x141dc5578]
and ebx, dword [0x141dc557c]
xor ebx, 0x3001272
and ebx, 0xeb241677
add ebx, 0x3d764c39
mov rcx, r12
shl rcx, 0xa
add rcx, rdi
mov rdx, r13
shl rdx, 0xa
add rdx, rdi
sub rsp, 0x20
mov r8, rsi
mov r9d, r14d
call fcn.14003cea0
mov r8d, 0x400
mov rcx, r15
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp ebx, 0xf6f8fb68
ja 0x14003b1e0
mov rax, qword [rbp + 0x1050]
inc eax
mov qword [rbp + 0x1050], rax
mov eax, dword [0x141dc5580]
xor eax, dword [0x141dc5584]
imul eax, eax, 0x52b3dcd6
mov ecx, 0x9c7f2f03
imul rax, rcx
shr rax, 0x3f
cmp eax, 0xd08c89b7
mov eax, dword [0x141dc5588]
add eax, dword [0x141dc558c]
xor eax, 0x4c08245
or eax, 0x120d3d18
add eax, 0x26bef25d
cmp eax, 0x19fba387
jb 0x14003b156
mov r8d, dword [rbp + 0xff8]
inc r8d
mov r10, qword [rbp + 0x1070]
mov ecx, dword [rbp + 0x1068]
mov r13, qword [rbp + 0x1000]
mov r14d, dword [rbp + 0x1064]
mov eax, dword [0x141dc5590]
add eax, dword [0x141dc5594]
cmp eax, 0x7cf3195e
je 0x14003b19d
mov eax, dword [rbp + 0xfd8]
mov r15d, eax
cmp eax, ecx
mov r11, qword [rbp + 0x1080]
mov r12, qword [rbp + 0x1058]
jne 0x14003aa30
jmp 0x14003a330
mov rcx, r12
shl rcx, 0xa
add rcx, rdi
mov rdx, r13
shl rdx, 0xa
add rdx, rdi
sub rsp, 0x20
mov r8, rsi
mov r9d, r14d
call fcn.14003cea0
mov r8d, 0x400
mov rcx, r15
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
jmp 0x14003b0c0
sub rsp, 0x20
mov rcx, r15
mov rdx, rsi
mov r8, r13
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
jmp 0x14003a8d0
mov eax, dword [0x141dc5598]
or eax, dword [0x141dc559c]
xor eax, 0x29066004
or eax, 0x52f99c63
add eax, 0xc46dbbb8
cmp eax, 0x29c9adfb
jb 0x14003b240
nop word cs:[rax + rax]
mov eax, dword [0x141dc55a0]
imul eax, dword [0x141dc55a4]
and eax, 0xb3000318
cmp eax, 0x1af5149d
je 0x14003b270
mov rax, qword [rbp + 0xfb0]
mov rcx, rax
mov qword [rbp + 0x1018], rax
cmp rax, 4
jne 0x14003a26a
mov rcx, qword [rbp + 0xfc0]
mov rax, rcx
mov qword [rbp + 0x1030], rcx
cmp rcx, r15
jne 0x14003a227
xor eax, eax
test al, al
jne 0x14003b2c0
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x14003b2d0
lea r14d, [r10 - 1]
cmp r11, r14
jbe 0x14003970f
mov rsi, r14
shl rsi, 0xa
add rsi, rdi
mov eax, dword [0x141dc5620]
or eax, dword [0x141dc5624]
and eax, 0xdfd8bbc2
imul eax, eax, 0x87c7330c
add eax, 0xfa7087fc
cmp eax, 0x667d3e14
jae 0x14003b32b
sub rsp, 0x20
lea rcx, [rbp + 0x780]
mov r8d, 0x400
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
lea rbx, [rbp + 0x780]
nop word cs:[rax + rax]
mov r15d, dword [0x141dc5628]
and r15d, dword [0x141dc562c]
add r15d, 0xa1ae1922
and r15d, 0x1842963
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rbx
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp r15d, 0x3b74c77c
ja 0x14003b340
nop
mov eax, dword [0x141dc5630]
sub eax, dword [0x141dc5634]
imul eax, eax, 0xeb68da5b
xor eax, 0x4804040
or eax, 0xe05bbe37
cmp eax, 0x98af8b22
jb 0x14003b380
cmp r12d, 2
mov r10, qword [rbp + 0x1070]
mov r11, qword [rbp + 0x1080]
jb 0x14003b510
lea rcx, [rdi + 0x30]
lea r8d, [r10*2 - 1]
mov r9d, 1
nop dword [rax]
mov eax, r8d
shl rax, 0xa
add rax, rcx
mov edx, dword [0x141dc5650]
or edx, dword [0x141dc5654]
xor edx, 0x246e963d
add edx, 0xf8e9e07a
xor edx, 0x978a6a66
cmp edx, 0xcbe411ed
ja 0x14003b3da
mov edx, r9d
imul edx, r10d
add edx, r14d
cmp r11, rdx
jbe 0x14003ba88
inc r9
mov edx, dword [0x141dc5670]
or edx, dword [0x141dc5674]
or edx, 0xffff7fc7
cmp edx, 0x34925011
je 0x14003b416
xor edx, edx
nop word cs:[rax + rax]
movups xmm0, xmmword [rax + rdx*8 - 0x30]
movups xmm1, xmmword [rax + rdx*8 - 0x20]
movups xmm2, xmmword [rbp + rdx*8 + 0x780]
xorps xmm2, xmm0
movups xmm0, xmmword [rbp + rdx*8 + 0x790]
xorps xmm0, xmm1
movups xmm1, xmmword [rbp + rdx*8 + 0x7a0]
movups xmm3, xmmword [rbp + rdx*8 + 0x7b0]
movups xmmword [rbp + rdx*8 + 0x780], xmm2
movups xmmword [rbp + rdx*8 + 0x790], xmm0
movups xmm0, xmmword [rax + rdx*8 - 0x10]
xorps xmm0, xmm1
movups xmm1, xmmword [rax + rdx*8]
xorps xmm1, xmm3
movups xmmword [rbp + rdx*8 + 0x7a0], xmm0
movups xmmword [rbp + rdx*8 + 0x7b0], xmm1
add rdx, 8
cmp rdx, 0x80
jne 0x14003b440
mov eax, dword [0x141dc5678]
xor edx, edx
div dword [0x141dc567c]
or eax, 0x800c794f
imul eax, eax, 0xd47004fa
add eax, 0x7f296438
cmp eax, 0xbd1d8d28
ja 0x14003b4ac
nop word cs:[rax + rax]
mov eax, dword [0x141dc5680]
or eax, dword [0x141dc5684]
imul eax, eax, 0x2a9beddf
or eax, 0x31388820
and eax, 0x3d7fc824
cmp eax, 0x34343343
jb 0x14003b4e0
add r8d, r10d
cmp r9, r12
jne 0x14003b3d0
nop
mov eax, dword [0x141dc5638]
add eax, dword [0x141dc563c]
cmp eax, 0x85f426a6
je 0x14003b510
mov rsi, qword [rbp + 0xfa0]
nop word [rax + rax]
mov eax, dword [0x141dc5640]
or eax, dword [0x141dc5644]
xor eax, 0x224021c0
or eax, 0x84b75c17
cmp eax, 0xb7b867b8
ja 0x14003b530
test rsi, rsi
je 0x14003b5d4
sub rsp, 0x20
mov ecx, 8
mov rdx, rsi
call fcn.1400bf820
add rsp, 0x20
test rax, rax
je 0x14003970f
mov rcx, rax
nop word [rax + rax]
mov eax, dword [0x141dc5648]
or eax, dword [0x141dc564c]
add eax, 0xd2e66bdb
or eax, 0x7440f546
imul rax, rax, 0x254b43b7
shr rax, 0x3c
cmp eax, 0x69b9bea2
ja 0x14003b580
jmp 0x14003b5d9
ud2
mov ecx, 1
mov rax, qword [rbp + 0xfb8]
mov qword [rax], rsi
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rsi
sub rsp, 0x20
lea r8, [rbp + 0x780]
mov r9d, 0x400
mov rdx, rsi
call fcn.14003c940
add rsp, 0x20
mov rcx, qword [0x141ddb9a0]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
movaps xmm6, xmmword [rbp + 0x1090]
lea rsp, [rbp + 0x10a8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
cmp r13d, 1
je 0x14003b6f9
cmp r13d, 2
jne 0x14003b6c0
sub rsp, 0x20
lea rcx, [rbp + 0x380]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
lea rcx, [rbp + 0xbb8]
sub rsp, 0x20
mov r8d, 0x3c8
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141dc55a8]
or eax, dword [0x141dc55ac]
imul eax, eax, 0xb2a3d9f0
add eax, 0xcf369de8
cmp eax, 0x696c9011
jae 0x14003b690
jmp 0x14003b7d7
mov eax, dword [0x141dc55e8]
xor eax, dword [0x141dc55ec]
imul rcx, rax, 0x31e83fcd
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
and eax, 2
cmp eax, 0xf89c450e
ja 0x14003b6c0
xor eax, eax
nop dword [rax]
test al, al
jne 0x14003b6f0
jmp 0x14003b995
mov eax, dword [0x141dc55b0]
sub eax, dword [0x141dc55b4]
or eax, 0xee7efb1e
and eax, 0xee7efb7e
cmp eax, 0x69e12e55
jae 0x14003b732
sub rsp, 0x20
lea rcx, [rbp + 0x380]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
lea rdi, [rbp + 0x380]
lea rsi, [rbp + 0xbb8]
mov ebx, dword [0x141dc55b8]
imul ebx, dword [0x141dc55bc]
or ebx, 0x1310a05
and ebx, 0x91318a55
add ebx, 0x78ff0664
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp ebx, 0x102a6fe3
jb 0x14003b740
xor eax, eax
test al, al
je 0x14003b7a0
sub rsp, 0x20
mov r8d, 0x3c8
mov rcx, rsi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
nop dword [rax]
mov eax, dword [0x141dc55c0]
sub eax, dword [0x141dc55c4]
and eax, 0x86200040
imul edi, eax, 0x70175100
sub rsp, 0x20
mov r8d, 0x3c8
mov rcx, rsi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
cmp edi, 0xeffc3414
je 0x14003b7a0
mov eax, dword [0x141dc55c8]
imul eax, dword [0x141dc55cc]
or eax, 0x3a8fb14d
add eax, 0x121273d3
or eax, 0x82e2b691
cmp eax, 0x44a7fd91
jne 0x14003b828
sub rsp, 0x20
lea rcx, [rbp - 0x80]
mov r8d, 0x400
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xorps xmm0, xmm0
movaps xmmword [rbp + 0xb80], xmm0
mov qword [rbp + 0xb90], 0
lea rsi, [rbp - 0x80]
xorps xmm6, xmm6
nop
mov eax, dword [0x141dc55d0]
xor edx, edx
div dword [0x141dc55d4]
xor eax, 0x419bfbb2
imul rdi, rax, 0x351ecb39
shr rdi, 0x39
add edi, 0xa374761e
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
movaps xmmword [rbp + 0xb80], xmm6
mov qword [rbp + 0xb90], 0
cmp edi, 0x5982c83e
jb 0x14003b830
mov rax, qword [rbp + 0xfd0]
mov qword [rbp + 0xb98], rax
mov qword [rbp + 0xba0], r15
mov rax, qword [rbp + 0x1028]
mov qword [rbp + 0xba8], rax
mov qword [rbp + 0xbb0], 1
sub rsp, 0x20
lea rcx, [rbp + 0x380]
lea rdx, [rbp + 0xb80]
lea r8, [rbp - 0x80]
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
mov eax, dword [0x141dc55d8]
sub eax, dword [0x141dc55dc]
and eax, 0x876aa9bb
xor eax, 0x95622011
cmp eax, 0x8588cec1
jae 0x14003b92c
sub rsp, 0x20
lea rsi, [rbp + 0x780]
lea rdi, [rbp - 0x80]
mov r8d, 0x400
mov rcx, rsi
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbp + 0x380]
mov rdx, rsi
mov r8, rdi
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
lea rsi, [rbp + 0x780]
lea rdi, [rbp - 0x80]
lea rbx, [rbp + 0x380]
nop
mov eax, dword [0x141dc55e0]
sub eax, dword [0x141dc55e4]
or eax, 0xacd89190
imul eax, eax, 0x8233c3b7
imul r14, rax, 0x74c723bd
shr r14, 0x3d
sub rsp, 0x20
mov r8d, 0x400
mov rcx, rsi
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
xor r9d, r9d
call fcn.14003cea0
add rsp, 0x20
cmp r14d, 0x8525632
je 0x14003b940
ud2
mov eax, dword [0x141dc5600]
or eax, dword [0x141dc5604]
add eax, 0x63d1524c
or eax, 0x92590dcf
xor eax, 0xcf76a876
cmp eax, 0xfb8425ea
jbe 0x14003b9f0
ud2
mov eax, dword [0x141dc5608]
imul eax, dword [0x141dc560c]
imul eax, eax, 0x70b90185
ud2
mov eax, dword [0x141dc5610]
add eax, dword [0x141dc5614]
or eax, 0xffe7ffbf
imul rax, rax, 0x4a55e17
shr rax, 0x3a
cmp eax, 0xe6b9d5df
jne 0x14003baf2
jmp 0x14003bb15
xor eax, eax
test al, al
je 0x14003ba50
ud2
mov eax, dword [0x141dc53f0]
or eax, dword [0x141dc53f4]
xor eax, 0xe3cf5792
imul rcx, rax, 0x34f82a91
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
xor eax, 0xc423793f
ud2
mov eax, dword [0x141dc5658]
or eax, dword [0x141dc565c]
add eax, 0x9f2f544b
xor eax, 0x82420953
cmp eax, 0xfda125ea
ja 0x14003baca
mov eax, dword [0x141dc5660]
xor eax, dword [0x141dc5664]
and eax, 0xc7e99eb8
imul eax, eax, 0xbf9e5c07
add eax, 0xec28fcb6
ud2
ud2
mov eax, dword [0x141dc5618]
xor eax, dword [0x141dc561c]
or eax, 0xb0f6ff73
add eax, 0x322bcc13
ud2
ud2