Function at 0x140042570
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3a8
mov qword [rsp + 0x28], r9
mov r14, qword [rdx]
test r14, r14
je 0x140042896
mov rax, r14
shr rax, 0x3d
jne 0x140042896
mov r15, r8
movsx r11, word [rdx + 0x18]
mov rsi, r14
shr rsi, 0x20
mov rax, r14
shl rax, 0x20
lea r10d, [r11 - 0x20]
test rsi, rsi
cmovne rax, r14
cmovne r10d, r11d
mov rdi, rax
shr rdi, 0x30
mov r8, rax
shl r8, 0x10
lea r9d, [r10 - 0x10]
test rdi, rdi
cmovne r8, rax
cmovne r9d, r10d
mov rax, r8
shr rax, 0x38
mov r10, r8
shl r10, 8
lea edi, [r9 - 8]
test rax, rax
cmovne r10, r8
cmovne edi, r9d
mov rax, r10
shr rax, 0x3c
mov r8, r10
shl r8, 4
lea r9d, [rdi - 4]
test rax, rax
cmovne r8, r10
cmovne r9d, edi
mov r10, r8
shr r10, 0x3e
lea rax, [r8*4]
test r10, r10
cmovne rax, r8
lea edi, [r9 - 2]
cmovne edi, r9d
xor r8d, r8d
test rax, rax
setns r8b
sub edi, r8d
mov r8d, 0xffffffa0
sub r8d, edi
movsx r8d, r8w
lea r8d, [r8 + r8*4]
shl r8d, 4
add r8d, 0x153b0
movsxd r8, r8d
imul r8, r8, 0x7b4dc993
mov r9, r8
shr r9, 0x3f
sar r8, 0x2a
add r8d, r9d
cmp r8d, 0x51
jae 0x140042896
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x58], rcx
test rax, rax
setns cl
shl rax, cl
mov r12d, r8d
shl r12, 4
lea r13, [0x1402839e8]
mov r8, qword [r12 + r13]
mov rcx, rax
shr rcx, 0x20
mov eax, eax
mov r9d, r8d
shr r8, 0x20
mov r10, r8
imul r10, rcx
imul r8, rax
imul rcx, r9
imul r9, rax
shr r9, 0x20
mov r11d, ecx
add r11, r9
mov eax, r8d
add rax, r11
sub rax, 0xffffffff80000000
shr rcx, 0x20
add rcx, r10
shr r8, 0x20
add r8, rcx
shr rax, 0x20
add di, word [r12 + r13 + 8]
add rax, r8
mov ecx, 0xffffffc0
sub ecx, edi
movzx r10d, cx
mov r9d, r10d
and r9d, 0x3f
mov rdx, rax
mov ecx, r9d
shr rdx, cl
mov r8d, 1
shl r8, cl
mov qword [rsp + 0x20], r8
lea rdi, [r8 - 1]
mov rbx, rax
and rbx, rdi
je 0x140042a94
movzx ebp, word [r12 + r13 + 0xa]
cmp edx, 0x2710
jae 0x140042769
cmp edx, 0x64
jae 0x14004278f
xor ecx, ecx
cmp edx, 0xa
setae cl
lea r13d, [rcx + rcx*8]
inc r13d
jmp 0x1400427ef
cmp edx, 0xf4240
jae 0x1400427ad
cmp edx, 0x186a0
setb cl
mov r8d, 0x2710
mov r13d, 0x186a0
cmovb r13d, r8d
xor cl, 5
jmp 0x1400427ef
cmp edx, 0x3e8
setb cl
mov r8d, 0x64
mov r13d, 0x3e8
cmovb r13d, r8d
xor cl, 3
jmp 0x1400427ef
cmp edx, 0x5f5e100
jae 0x1400427d3
cmp edx, 0x989680
setb cl
mov r8d, 0xf4240
mov r13d, 0x989680
cmovb r13d, r8d
xor cl, 7
jmp 0x1400427ef
cmp edx, 0x3b9aca00
setb cl
mov r8d, 0x5f5e100
mov r13d, 0x3b9aca00
cmovb r13d, r8d
xor cl, 9
movzx ecx, cl
mov r8d, ecx
sub r8d, ebp
mov qword [rsp + 0x40], r8
inc r8d
movzx r11d, word [rsp + 0x410]
cmp r8w, r11w
jle 0x140042898
movsx rax, r8w
mov dword [rsp + 0x34], r8d
sub r8d, r11d
movsx r11, r11w
sub rax, r11
mov r11, qword [rsp + 0x28]
cmp rax, r11
movsx r12, r8w
cmovae r12, r11
neg rcx
mov r8, r11
neg r8
mov ebp, 1
mov r11d, 0xcccccccd
nop word [rax + rax]
lea rsi, [r8 + rbp]
mov eax, edx
xor edx, edx
div r13d
cmp rsi, 1
je 0x140042896
add al, 0x30
mov byte [r15 + rbp - 1], al
cmp r12, rbp
je 0x140042936
lea rax, [rcx + rbp]
cmp rax, 1
je 0x1400429ea
mov eax, r13d
imul rax, r11
shr rax, 0x23
inc rbp
cmp r13d, 0xa
mov r13d, eax
jae 0x140042850
ud2
movabs rcx, 0xcccccccccccccccd
mul rcx
mov eax, r13d
mov ecx, r9d
shl rax, cl
mov rcx, rax
sub rcx, qword [rsp + 0x20]
jbe 0x140042a94
cmp rcx, qword [rsp + 0x20]
jbe 0x140042a94
shr rdx, 3
mov rcx, rax
sub rcx, rdx
cmp rcx, rdx
jbe 0x1400428f7
mov r11d, r8d
mov r8, rax
sub r8, rdx
sub r8, rdx
mov r10d, 2
mov ecx, r9d
shl r10, cl
cmp r8, r10
jae 0x1400438de
sub rdx, qword [rsp + 0x20]
jbe 0x140042a94
sub rax, rdx
cmp rax, rdx
ja 0x140042a94
mov rax, qword [rsp + 0x40]
lea ecx, [rax + 2]
movzx eax, word [rsp + 0x410]
cmp cx, ax
jle 0x1400438f2
mov byte [r15], 0x31
mov r12d, 1
jmp 0x140043980
mov eax, edx
mov ecx, r9d
shl rax, cl
mov edx, r13d
shl rdx, cl
mov rcx, rdx
sub rcx, qword [rsp + 0x20]
jbe 0x140042a94
cmp rcx, qword [rsp + 0x20]
jbe 0x140042a94
add rax, rbx
mov rcx, rdx
sub rcx, rax
cmp rcx, rax
jbe 0x140042989
mov r8, rdx
sub r8, rax
sub r8, rax
mov r10d, 2
mov ecx, r9d
shl r10, cl
cmp r8, r10
jae 0x1400438e9
sub rax, qword [rsp + 0x20]
jbe 0x140042a94
sub rdx, rax
cmp rdx, rax
ja 0x140042a94
mov r8, 0xffffffffffffffff
mov rax, r12
nop word [rax + rax]
test rax, rax
je 0x14004392d
mov rcx, rax
dec rax
inc r8
cmp byte [r15 + rcx - 1], 0x39
je 0x1400429b0
inc byte [r15 + rax]
cmp rcx, r12
jae 0x140043927
add rcx, r15
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [rsp + 0x34]
jmp 0x140043975
dec r10d
and r10d, 0x3f
mov edx, 1
nop word cs:[rax + rax]
mov rax, rdx
mov ecx, r10d
shr rdx, cl
test rdx, rdx
jne 0x140042a94
cmp rbp, qword [rsp + 0x28]
jae 0x140042896
add rbx, rbx
lea r8, [rbx + rbx*4]
mov rbx, r8
and rbx, rdi
lea rcx, [rax + rax]
lea rdx, [rcx + rcx*4]
mov ecx, r9d
shr r8, cl
add r8b, 0x30
mov byte [r15 + rbp], r8b
inc rbp
cmp r12, rbp
jne 0x140042a00
mov rcx, qword [rsp + 0x20]
sub rcx, rdx
jbe 0x140042a94
cmp rcx, rdx
jbe 0x140042a94
mov r8, qword [rsp + 0x20]
mov rcx, r8
sub rcx, rbx
cmp rcx, rbx
jbe 0x140042a7e
sub r8, rbx
sub r8, rbx
shl rax, 2
lea rax, [rax + rax*4]
cmp r8, rax
jae 0x1400438e9
sub rbx, rdx
jbe 0x140042a94
mov rax, qword [rsp + 0x20]
sub rax, rbx
cmp rax, rbx
jbe 0x1400438fa
mov rcx, qword [rsp + 0x50]
mov rax, qword [rcx + 8]
test rax, rax
je 0x140042896
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x140042896
add rcx, r14
mov r8, qword [rsp + 0x48]
jb 0x140042896
cmp r14, rax
movzx esi, word [rsp + 0x410]
jb 0x140042896
movzx edx, r8w
mov rax, r14
dec rax
je 0x140042ae8
bsr rax, rax
xor rax, 0x3f
jmp 0x140042aed
mov eax, 0x40
mov rcx, r8
sub rcx, rax
imul rax, rcx, 0x4d104d42
movabs r12, 0x1344135080
add r12, rax
shr r12, 0x20
xor eax, eax
xor ecx, ecx
mov r9, qword [rsp + 0x38]
test r9, r9
cmove r9d, eax
setne cl
inc rcx
mov qword [rsp + 0x100], rcx
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x64], r9d
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
movups xmmword [rsp + 0x98], xmm0
movups xmmword [rsp + 0xa8], xmm0
movups xmmword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], 0
movups xmmword [rsp + 0x198], xmm0
movups xmmword [rsp + 0x18c], xmm0
movups xmmword [rsp + 0x17c], xmm0
movups xmmword [rsp + 0x16c], xmm0
movups xmmword [rsp + 0x15c], xmm0
movups xmmword [rsp + 0x14c], xmm0
movups xmmword [rsp + 0x13c], xmm0
movups xmmword [rsp + 0x12c], xmm0
movups xmmword [rsp + 0x11c], xmm0
movups xmmword [rsp + 0x10c], xmm0
mov qword [rsp + 0x1a8], 1
mov dword [rsp + 0x108], 1
test r8w, r8w
js 0x140042c0f
lea rcx, [rsp + 0x60]
call fcn.14003c000
test r12w, r12w
js 0x140042c28
movzx edx, r12w
lea rcx, [rsp + 0x108]
jmp 0x140042c36
neg edx
movsx rdx, dx
lea rcx, [rsp + 0x108]
call fcn.14003c000
test r12w, r12w
jns 0x140042c01
mov eax, r12d
neg eax
movsx rdx, ax
lea rcx, [rsp + 0x60]
call fcn.140043ec0
mov r13, qword [rsp + 0x1a8]
lea rcx, [rsp + 0x1b0]
lea rbx, [rsp + 0x108]
mov r8d, 0xa0
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x250], r13
movabs r8, 0x44b82fa09b5a53
mov r9, r13
mov rcx, qword [rsp + 0x28]
cmp r9, 0x29
jae 0x140042896
nop word cs:[rax + rax]
test r9, r9
je 0x140042cd5
shl r9, 2
xor r10d, r10d
nop dword [rax]
mov eax, dword [rsp + r9 + 0x1ac]
shl r10, 0x20
or r10, rax
mov rax, r10
shr rax, 9
mul r8
shr rdx, 0xb
imul rax, rdx, 0x3b9aca00
sub r10, rax
mov dword [rsp + r9 + 0x1ac], edx
add r9, 0xfffffffffffffffc
jne 0x140042ca0
add rcx, 0xfffffffffffffff7
cmp rcx, 9
jbe 0x140042cf2
mov r9, qword [rsp + 0x250]
cmp r9, 0x29
jb 0x140042c90
jmp 0x140042896
lea rax, [0x140283f34]
mov r8d, dword [rax + rcx*4]
test r8, r8
je 0x140042896
mov r9, qword [rsp + 0x250]
cmp r9, 0x29
jae 0x140042896
test r9, r9
je 0x140042d82
shl r9, 2
xor eax, eax
jmp 0x140042d47
xor edx, edx
div r8d
mov ecx, eax
mov eax, edx
mov dword [rsp + r9 + 0x1ac], ecx
add r9, 0xfffffffffffffffc
je 0x140042d78
mov ecx, dword [rsp + r9 + 0x1ac]
shl rax, 0x20
or rax, rcx
mov rcx, rax
shr rcx, 0x20
je 0x140042d30
xor edx, edx
div r8
mov rcx, rax
mov rax, rdx
mov dword [rsp + r9 + 0x1ac], ecx
add r9, 0xfffffffffffffffc
jne 0x140042d47
mov rax, qword [rsp + 0x250]
jmp 0x140042d84
xor eax, eax
mov r14, qword [rsp + 0x100]
cmp rax, r14
cmovbe rax, r14
cmp rax, 0x29
jae 0x140042896
test rax, rax
je 0x140042e39
cmp rax, 1
jne 0x140042db2
xor ecx, ecx
xor edx, edx
jmp 0x140042df5
mov r8, rax
and r8, 0xfffffffffffffffe
xor edx, edx
xor ecx, ecx
nop dword [rax]
movzx edx, dl
bt edx, 0
mov edx, dword [rsp + rcx*4 + 0x60]
mov r9d, dword [rsp + rcx*4 + 0x64]
adc dword [rsp + rcx*4 + 0x1b0], edx
adc dword [rsp + rcx*4 + 0x1b4], r9d
lea rcx, [rcx + 2]
setb dl
cmp r8, rcx
jne 0x140042dc0
test al, 1
jne 0x140042df5
test dl, dl
je 0x140042e39
jmp 0x140042e21
mov r8d, dword [rsp + rcx*4 + 0x1b0]
mov r9d, dword [rsp + rcx*4 + 0x60]
lea r10d, [r8 + r9]
movzx r11d, dl
add r11d, r10d
setb dl
mov dword [rsp + rcx*4 + 0x1b0], r11d
add r8d, r9d
jb 0x140042e21
test dl, dl
je 0x140042e39
cmp rax, 0x27
ja 0x140042896
mov dword [rsp + rax*4 + 0x1b0], 1
inc rax
mov qword [rsp + 0x250], rax
cmp rax, r13
cmovbe rax, r13
cmp rax, 0x29
jae 0x140042896
shl rax, 2
mov ecx, 0xff
nop dword [rax + rax]
test rax, rax
je 0x140042e9c
mov r8d, dword [rsp + rax + 0x104]
xor edx, edx
cmp r8d, dword [rsp + rax + 0x1ac]
setne dl
cmova edx, ecx
add rax, 0xfffffffffffffffc
test dl, dl
je 0x140042e60
cmp dl, 1
ja 0x140042eb2
inc r12d
cmp r12w, si
jl 0x140043711
jmp 0x140042f2d
add rax, rsp
add rax, 0x108
cmp rax, rbx
setne dl
neg dl
cmp dl, 1
jbe 0x140042e8a
cmp r14, 0x29
jae 0x140042896
test r14, r14
je 0x140042f18
lea rcx, [r14*4]
xor edx, edx
xor eax, eax
nop dword [rax]
mov r8d, dword [rsp + rdx + 0x60]
lea r8, [r8 + r8*4]
lea rax, [rax + r8*2]
mov dword [rsp + rdx + 0x60], eax
shr rax, 0x20
add rdx, 4
cmp rcx, rdx
jne 0x140042ed0
test rax, rax
je 0x140042f05
cmp r14, 0x27
ja 0x140042896
mov dword [rsp + r14*4 + 0x60], eax
inc r14
mov qword [rsp + 0x100], r14
cmp r12w, si
jge 0x140042f2d
jmp 0x140043711
xor r14d, r14d
mov qword [rsp + 0x100], r14
cmp r12w, si
jl 0x140043711
movsx rax, r12w
mov ecx, r12d
sub ecx, esi
movsx rdx, si
sub rax, rdx
mov rdx, qword [rsp + 0x28]
cmp rax, rdx
movsx rbp, cx
cmovae rbp, rdx
test rbp, rbp
je 0x140043711
lea rcx, [rsp + 0x258]
lea rdx, [rsp + 0x108]
mov r8d, 0xa0
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x2f8], r13
test r13, r13
je 0x140042896
lea rsi, [r13 - 1]
mov rax, r13
nop dword [rax]
cmp r13, 0x29
jae 0x140042896
dec rax
jne 0x140042f90
mov eax, dword [rsp + r13*4 + 0x254]
mov r9, r13
test eax, eax
jns 0x140042fc9
cmp r13, 0x27
ja 0x140042896
mov ecx, eax
shr ecx, 0x1f
mov dword [rsp + r13*4 + 0x258], ecx
lea r9, [r13 + 1]
cmp r13, 2
jb 0x140043001
mov rcx, r13
nop word cs:[rax + rax]
mov edx, dword [rsp + rcx*4 + 0x250]
shld eax, edx, 1
mov dword [rsp + rcx*4 + 0x254], eax
lea r8, [rcx - 1]
mov eax, edx
mov rcx, r8
cmp r8, 1
ja 0x140042fe0
shl dword [rsp + 0x258], 1
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x2f8], r9
lea rcx, [rsp + 0x300]
lea rdx, [rsp + 0x108]
mov r8d, 0xa0
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x3a0], r13
mov rax, r13
nop dword [rax + rax]
cmp rsi, 0x28
jae 0x140042896
dec rax
jne 0x140043040
mov eax, dword [rsp + r13*4 + 0x2fc]
mov r9, r13
cmp eax, 0x3fffffff
jbe 0x14004307c
cmp r13, 0x27
ja 0x140042896
mov ecx, eax
shr ecx, 0x1e
mov dword [rsp + r13*4 + 0x300], ecx
lea r9, [r13 + 1]
cmp r13, 2
jb 0x1400430b1
mov rcx, r13
nop word cs:[rax + rax]
mov edx, dword [rsp + rcx*4 + 0x2f8]
shld eax, edx, 2
mov dword [rsp + rcx*4 + 0x2fc], eax
lea r8, [rcx - 1]
mov eax, edx
mov rcx, r8
cmp r8, 1
ja 0x140043090
shl dword [rsp + 0x300], 2
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x3a0], r9
lea rcx, [rsp + 0x1b0]
lea rdx, [rsp + 0x108]
mov r8d, 0xa0
call sub.VCRUNTIME140.dll_memcpy
mov qword [rsp + 0x250], r13
mov rax, r13
nop dword [rax]
cmp rsi, 0x28
jae 0x140042896
dec rax
jne 0x1400430f0
mov ecx, dword [rsp + r13*4 + 0x1ac]
mov rsi, r13
cmp ecx, 0x1fffffff
jbe 0x14004312d
cmp r13, 0x27
ja 0x140042896
mov eax, ecx
shr eax, 0x1d
mov dword [rsp + r13*4 + 0x1b0], eax
lea rsi, [r13 + 1]
cmp r13, 2
jb 0x140043164
mov rdx, r13
nop word cs:[rax + rax]
mov r8d, dword [rsp + rdx*4 + 0x1a8]
shld ecx, r8d, 3
mov dword [rsp + rdx*4 + 0x1ac], ecx
lea r9, [rdx - 1]
mov ecx, r8d
mov rdx, r9
cmp r9, 1
ja 0x140043140
shl dword [rsp + 0x1b0], 3
mov qword [rsp + 0x250], rsi
xor r8d, r8d
mov edx, 0xff
cmp r14, 0x29
jae 0x140042896
mov rcx, r8
inc r8
lea r9, [r14*4]
xor r10d, r10d
nop word [rax + rax]
cmp r9, r10
je 0x140043783
cmp dword [rsp + r10 + 0x60], 0
lea r10, [r10 + 4]
je 0x1400431a0
cmp r14, rsi
mov qword [rsp + 0x20], rsi
mov r11, rsi
cmova r11, r14
cmp r11, 0x29
jae 0x140042896
lea r9, [r11*4]
nop word cs:[rax + rax]
test r9, r9
je 0x140043226
mov esi, dword [rsp + r9 + 0x1ac]
xor r10d, r10d
cmp esi, dword [rsp + r9 + 0x5c]
setne r10b
cmova r10d, edx
add r9, 0xfffffffffffffffc
test r10b, r10b
je 0x1400431e0
cmp r10b, 2
jae 0x140043248
test r11, r11
je 0x1400432d0
cmp r11, 1
jne 0x140043253
mov rax, rbx
mov r9b, 1
xor r10d, r10d
jmp 0x14004329e
add r9, rsp
add r9, 0x1b0
lea rax, [rsp + 0x1b0]
cmp r9, rax
setne r10b
neg r10b
cmp r10b, 2
jb 0x14004320c
xor r9d, r9d
mov r11, r14
jmp 0x1400432db
mov rsi, r11
and rsi, 0xfffffffffffffffe
mov r9b, 1
xor r10d, r10d
mov edi, dword [rsp + r10*4 + 0x1b0]
not edi
movzx r9d, r9b
bt r9d, 0
adc dword [rsp + r10*4 + 0x60], edi
mov r9d, dword [rsp + r10*4 + 0x1b4]
not r9d
adc dword [rsp + r10*4 + 0x64], r9d
lea r10, [r10 + 2]
setb r9b
cmp rsi, r10
jne 0x140043260
test r11b, 1
je 0x1400432c7
mov rax, rbx
mov esi, dword [rsp + r10*4 + 0x1b0]
not esi
mov edi, dword [rsp + r10*4 + 0x60]
lea ebx, [rsi + rdi]
movzx r14d, r9b
add r14d, ebx
setb r9b
mov dword [rsp + r10*4 + 0x60], r14d
add esi, edi
mov rbx, rax
jb 0x1400432d0
test r9b, r9b
je 0x140042896
mov qword [rsp + 0x100], r11
mov r9b, 8
mov r10, qword [rsp + 0x48]
cmp r11, r10
cmova r10, r11
cmp r10, 0x29
jae 0x140042896
mov rax, rbx
lea rsi, [r10*4]
nop dword [rax]
test rsi, rsi
je 0x140043343
mov ebx, dword [rsp + rsi + 0x2fc]
xor edi, edi
cmp ebx, dword [rsp + rsi + 0x5c]
setne dil
cmova edi, edx
add rsi, 0xfffffffffffffffc
test dil, dil
je 0x140043300
cmp dil, 1
ja 0x140043365
test r10, r10
je 0x1400433f1
cmp r10, 1
jne 0x14004336d
mov qword [rsp + 0x38], r15
mov r11b, 1
xor esi, esi
jmp 0x1400433be
add rsi, rsp
add rsi, 0x300
lea rdi, [rsp + 0x300]
cmp rsi, rdi
setne dil
neg dil
cmp dil, 1
jbe 0x140043328
mov r10, r11
jmp 0x1400433fd
mov rdi, r10
and rdi, 0xfffffffffffffffe
mov r11b, 1
xor esi, esi
nop dword [rax]
mov ebx, dword [rsp + rsi*4 + 0x300]
not ebx
movzx r11d, r11b
bt r11d, 0
adc dword [rsp + rsi*4 + 0x60], ebx
mov r11d, dword [rsp + rsi*4 + 0x304]
not r11d
adc dword [rsp + rsi*4 + 0x64], r11d
lea rsi, [rsi + 2]
setb r11b
cmp rdi, rsi
jne 0x140043380
test r10b, 1
je 0x1400433e8
mov qword [rsp + 0x38], r15
mov edi, dword [rsp + rsi*4 + 0x300]
not edi
mov ebx, dword [rsp + rsi*4 + 0x60]
lea r14d, [rdi + rbx]
movzx r15d, r11b
add r15d, r14d
setb r11b
mov dword [rsp + rsi*4 + 0x60], r15d
add edi, ebx
mov r15, qword [rsp + 0x38]
jb 0x1400433f1
test r11b, r11b
je 0x140042896
mov qword [rsp + 0x100], r10
or r9b, 4
mov r11, qword [rsp + 0x50]
cmp r10, r11
cmova r11, r10
cmp r11, 0x29
jae 0x140042896
lea rsi, [r11*4]
nop dword [rax + rax]
test rsi, rsi
je 0x140043469
mov ebx, dword [rsp + rsi + 0x254]
xor edi, edi
cmp ebx, dword [rsp + rsi + 0x5c]
setne dil
cmova edi, edx
add rsi, 0xfffffffffffffffc
test dil, dil
je 0x140043420
cmp dil, 1
ja 0x14004348b
test r11, r11
mov rbx, rax
je 0x140043531
cmp r11, 1
jne 0x140043496
mov qword [rsp + 0x38], r15
mov r10b, 1
xor esi, esi
jmp 0x1400434fb
add rsi, rsp
add rsi, 0x258
lea rdi, [rsp + 0x258]
cmp rsi, rdi
setne dil
neg dil
cmp dil, 1
jbe 0x140043448
mov r11, r10
mov rbx, rax
jmp 0x14004353d
mov rdi, r11
and rdi, 0xfffffffffffffffe
mov r10b, 1
xor esi, esi
nop word cs:[rax + rax]
mov ebx, dword [rsp + rsi*4 + 0x258]
not ebx
movzx r10d, r10b
bt r10d, 0
adc dword [rsp + rsi*4 + 0x60], ebx
mov r10d, dword [rsp + rsi*4 + 0x25c]
not r10d
adc dword [rsp + rsi*4 + 0x64], r10d
lea rsi, [rsi + 2]
setb r10b
cmp rdi, rsi
jne 0x1400434b0
test r11b, 1
jne 0x1400434f6
test r10b, r10b
mov rbx, rax
jne 0x140043531
jmp 0x140042896
mov qword [rsp + 0x38], r15
mov edi, dword [rsp + rsi*4 + 0x258]
not edi
mov ebx, dword [rsp + rsi*4 + 0x60]
lea r14d, [rdi + rbx]
movzx r15d, r10b
add r15d, r14d
setb r10b
mov dword [rsp + rsi*4 + 0x60], r15d
add edi, ebx
mov r15, qword [rsp + 0x38]
mov rbx, rax
jb 0x140043531
test r10b, r10b
je 0x140042896
mov qword [rsp + 0x100], r11
add r9b, 2
cmp r11, r13
mov r14, r13
cmova r14, r11
cmp r14, 0x29
jae 0x140042896
lea r10, [r14*4]
nop dword [rax]
test r10, r10
je 0x1400435ae
mov edi, dword [rsp + r10 + 0x104]
xor esi, esi
cmp edi, dword [rsp + r10 + 0x5c]
setne sil
cmova esi, edx
add r10, 0xfffffffffffffffc
test sil, sil
je 0x140043560
cmp sil, 1
ja 0x1400435d0
test r14, r14
mov rsi, qword [rsp + 0x20]
je 0x140043671
cmp r14, 1
jne 0x1400435dd
mov qword [rsp + 0x38], r15
mov r10b, 1
xor r11d, r11d
jmp 0x140043635
add r10, rsp
add r10, 0x108
lea rsi, [rsp + 0x108]
cmp r10, rsi
setne sil
neg sil
cmp sil, 1
jbe 0x14004358a
mov r14, r11
mov rsi, qword [rsp + 0x20]
jmp 0x14004367c
mov rsi, r14
and rsi, 0xfffffffffffffffe
mov r10b, 1
xor r11d, r11d
nop word [rax + rax]
mov edi, dword [rsp + r11*4 + 0x108]
not edi
movzx r10d, r10b
bt r10d, 0
adc dword [rsp + r11*4 + 0x60], edi
mov r10d, dword [rsp + r11*4 + 0x10c]
not r10d
adc dword [rsp + r11*4 + 0x64], r10d
lea r11, [r11 + 2]
setb r10b
cmp rsi, r11
jne 0x1400435f0
test r14b, 1
mov rsi, qword [rsp + 0x20]
je 0x140043668
mov qword [rsp + 0x38], r15
mov esi, dword [rsp + r11*4 + 0x108]
not esi
mov edi, dword [rsp + r11*4 + 0x60]
lea ebx, [rsi + rdi]
movzx r15d, r10b
add r15d, ebx
setb r10b
mov dword [rsp + r11*4 + 0x60], r15d
add esi, edi
mov r15, qword [rsp + 0x38]
mov rbx, rax
mov rsi, qword [rsp + 0x20]
jb 0x140043671
test r10b, r10b
je 0x140042896
mov qword [rsp + 0x100], r14
inc r9b
cmp rcx, qword [rsp + 0x28]
je 0x140042896
add r9b, 0x30
mov byte [r15 + rcx], r9b
cmp r14, 0x29
jae 0x140042896
test r14, r14
je 0x1400436f9
lea r9, [r14*4]
xor r10d, r10d
xor ecx, ecx
nop dword [rax + rax]
mov r11d, dword [rsp + r10 + 0x60]
lea r11, [r11 + r11*4]
lea rcx, [rcx + r11*2]
mov dword [rsp + r10 + 0x60], ecx
shr rcx, 0x20
add r10, 4
cmp r9, r10
jne 0x1400436b0
test rcx, rcx
je 0x1400436e6
cmp r14, 0x27
ja 0x140042896
mov dword [rsp + r14*4 + 0x60], ecx
inc r14
mov qword [rsp + 0x100], r14
cmp r8, rbp
jne 0x14004317c
jmp 0x14004370d
xor r14d, r14d
mov qword [rsp + 0x100], r14
cmp r8, rbp
jne 0x14004317c
mov al, 1
jmp 0x140043715
xor eax, eax
xor ebp, ebp
cmp r13, 0x29
jae 0x140042896
test r13, r13
je 0x1400437a9
lea rdx, [r13*4]
xor r8d, r8d
xor ecx, ecx
nop word cs:[rax + rax]
mov r9d, dword [rsp + r8 + 0x108]
lea r9, [r9 + r9*4]
add r9, rcx
mov rcx, r9
shr rcx, 0x20
mov dword [rsp + r8 + 0x108], r9d
add r8, 4
cmp rdx, r8
jne 0x140043740
test rcx, rcx
je 0x1400437ac
cmp r13, 0x27
ja 0x140042896
mov dword [rsp + r13*4 + 0x108], ecx
inc r13
jmp 0x1400437ac
cmp rbp, qword [rsp + 0x28]
ja 0x140042896
mov r8, rbp
sub r8, rcx
je 0x1400438b9
add rcx, r15
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
jmp 0x1400438b9
xor r13d, r13d
mov qword [rsp + 0x1a8], r13
cmp r14, r13
cmova r13, r14
cmp r13, 0x29
jae 0x140042896
shl r13, 2
nop dword [rax]
test r13, r13
je 0x1400437f2
mov ecx, dword [rsp + r13 + 0x5c]
lea rdx, [r13 - 4]
cmp dword [rsp + r13 + 0x104], ecx
mov r13, rdx
je 0x1400437d0
jb 0x140043825
jmp 0x1400438ae
lea rcx, [rsp + r13]
add rcx, 0x108
cmp rcx, rbx
sete cl
test al, cl
je 0x1400438ae
lea rax, [rbp - 1]
cmp rax, qword [rsp + 0x28]
jae 0x140042896
test byte [r15 + rax], 1
je 0x1400438ae
cmp rbp, qword [rsp + 0x28]
ja 0x140042896
mov r8, 0xffffffffffffffff
mov rax, rbp
nop word [rax + rax]
test rax, rax
je 0x14004386b
mov rcx, rax
dec rax
inc r8
cmp byte [r15 + rcx - 1], 0x39
je 0x140043840
inc byte [r15 + rax]
cmp rcx, rbp
jae 0x1400438ae
add rcx, r15
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
jmp 0x1400438ae
test rbp, rbp
je 0x14004388d
mov byte [r15], 0x31
mov bl, 0x30
cmp rbp, 1
je 0x14004388f
lea rcx, [r15 + 1]
lea r8, [rbp - 1]
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
jmp 0x14004388f
mov bl, 0x31
inc r12d
movzx eax, word [rsp + 0x410]
cmp r12w, ax
jle 0x1400438ae
cmp rbp, qword [rsp + 0x28]
jae 0x1400438ae
mov byte [r15 + rbp], bl
inc rbp
cmp rbp, qword [rsp + 0x28]
ja 0x140042896
mov rax, qword [rsp + 0x58]
mov qword [rax], r15
mov qword [rax + 8], rbp
mov word [rax + 0x10], r12w
add rsp, 0x3a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r12d, r12d
mov ecx, r11d
jmp 0x140043980
mov ecx, dword [rsp + 0x34]
jmp 0x140043980
xor r12d, r12d
jmp 0x140043980
mov r8, 0xffffffffffffffff
mov rax, r12
test rax, rax
je 0x14004392d
mov rcx, rax
dec rax
inc r8
cmp byte [r15 + rcx - 1], 0x39
je 0x140043904
inc byte [r15 + rax]
cmp rcx, r12
jb 0x1400429d7
mov ecx, dword [rsp + 0x34]
jmp 0x140043975
test r12, r12
movzx esi, word [rsp + 0x410]
je 0x140043958
mov byte [r15], 0x31
mov bl, 0x30
cmp r12, 1
je 0x14004395a
lea rcx, [r15 + 1]
lea r8, [r12 - 1]
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
jmp 0x14004395a
mov bl, 0x31
mov rax, qword [rsp + 0x40]
lea ecx, [rax + 2]
cmp cx, si
jle 0x140043975
cmp r12, qword [rsp + 0x28]
jae 0x140043975
mov byte [r15 + r12], bl
inc r12
cmp r12, qword [rsp + 0x28]
ja 0x140042896
mov rax, qword [rsp + 0x58]
mov qword [rax], r15
mov qword [rax + 8], r12
mov word [rax + 0x10], cx
jmp 0x1400438ca