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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
test rdx, rdx
je 0x140052c4d
mov rax, rdx
shr rax, 0x3d
jne 0x140052b70
mov rdi, r9
mov rax, rdx
shr rax, 0x20
mov r10, rdx
shl r10, 0x20
lea r9d, [r8 - 0x20]
test rax, rax
cmovne r9d, r8d
cmovne r10, rdx
mov rax, r10
shl rax, 0x10
mov rdx, r10
shr rdx, 0x30
lea r8d, [r9 - 0x10]
test rdx, rdx
cmovne r8d, r9d
cmovne rax, r10
mov r10, rax
shr r10, 0x38
mov rdx, rax
shl rdx, 8
lea r9d, [r8 - 8]
test r10, r10
cmovne r9d, r8d
cmovne rdx, rax
mov rax, rdx
shr rax, 0x3c
mov r10, rdx
shl r10, 4
lea r8d, [r9 - 4]
test rax, rax
cmovne r8d, r9d
cmovne r10, rdx
mov rdx, r10
shr rdx, 0x3e
lea eax, [r8 - 2]
test rdx, rdx
cmovne eax, r8d
lea rdx, [r10*4]
cmovne rdx, r10
xor r8d, r8d
test rdx, rdx
setns r8b
sub eax, r8d
mov r8d, 0xffffffa0
sub r8d, eax
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 0x140052ba5
mov qword [rsp + 0x20], rcx
nop dword [rax + rax]
test rdx, rdx
setns cl
mov r9d, dword [0x141dc6788]
imul r9d, dword [0x141dc678c]
imul r9, r9, 0x16bf2575
shr r9, 0x3c
imul r10d, r9d, 0x1ab4d9e4
mov r9, rdx
shl r9, cl
cmp r10d, 0x7491c3d2
je 0x1400517d0
mov ecx, r8d
shl rcx, 4
lea rdx, [0x141db49e8]
mov r15, qword [rcx + rdx]
movzx r8d, word [rcx + rdx + 8]
movzx r12d, word [rcx + rdx + 0xa]
mov rdx, r9
shr rdx, 0x20
mov esi, r9d
mov ebx, r15d
shr r15, 0x20
mov r13, r15
imul r13, rdx
imul r15, rsi
imul rdx, rbx
add eax, r8d
mov ecx, 0xffffffc0
sub ecx, eax
movzx r9d, cx
nop word cs:[rax + rax]
mov eax, dword [0x141dc6790]
mov r14d, dword [0x141dc6794]
mov rcx, rbx
imul rcx, rsi
shr rcx, 0x20
mov r8d, edx
mov r11d, r15d
add r11, r8
add r11, rcx
sub r11, 0xffffffff80000000
mov rcx, rdx
shr rcx, 0x20
add rcx, r13
mov r8, r15
shr r8, 0x20
add r8, rcx
shr r11, 0x20
add r11, r8
mov r8d, r9d
and r8d, 0x3f
mov r10, r11
mov ecx, r8d
shr r10, cl
add eax, r14d
add eax, 0x2b5861f1
or eax, 0xab5f4dc5
mov r14d, 1
shl r14, cl
cmp eax, 0xb3537931
je 0x140051860
lea rcx, [r14 - 1]
mov rbp, r11
and rbp, rcx
je 0x1400519c9
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400518f0
cmp r10d, 0x2710
mov r15, qword [rsp + 0xb0]
mov qword [rsp + 0x38], rcx
jae 0x1400519fa
xor eax, eax
test al, al
jne 0x140051910
nop word cs:[rax + rax]
mov eax, dword [0x141dc6798]
xor edx, edx
div dword [0x141dc679c]
or eax, 0xebe3f37f
imul rax, rax, 0x39a16bff
shr rax, 0x3d
cmp eax, 0x12d041a6
ja 0x140051920
cmp r10d, 0x64
jae 0x140051ab7
mov eax, dword [0x141dc67d8]
xor edx, edx
div dword [0x141dc67dc]
mov eax, 0x81a50abd
nop word cs:[rax + rax]
mov ecx, dword [0x141dc67e0]
and ecx, dword [0x141dc67e4]
add ecx, 0x3a9f7f8c
imul rcx, rax
shr rcx, 0x3f
imul esi, ecx, 0x4203d76a
xor ecx, ecx
cmp r10d, 0xa
setae dl
cmp esi, 0x91a355dd
ja 0x140051970
mov cl, dl
lea ebx, [rcx + rcx*8]
inc ebx
cmp r10d, 0xa
setae cl
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x1400519c0
jmp 0x140051a4a
mov eax, dword [0x141dc67e8]
or eax, dword [0x141dc67ec]
and eax, 0x20018610
or eax, 0x59167903
imul eax, eax, 0x648d14ad
cmp eax, 0x32de8bf5
mov rcx, qword [rsp + 0x20]
jne 0x140052c4f
jmp 0x140052c78
cmp r10d, 0xf4240
jae 0x140051a60
mov esi, 0x2710
nop dword [rax + rax]
mov eax, dword [0x141dc67a8]
xor edx, edx
div dword [0x141dc67ac]
add eax, 0xafb4fed4
and eax, 0x5c3c60e3
imul eax, eax, 0xf6eaff2f
cmp r10d, 0x186a0
setb cl
mov ebx, 0x186a0
cmovb ebx, esi
cmp eax, 0x5c470082
je 0x140051a10
xor cl, 5
movzx esi, word [rsp + 0xb8]
jmp 0x140051bd2
mov eax, dword [0x141dc67a0]
xor eax, dword [0x141dc67a4]
or eax, 0xa4d7def1
imul eax, eax, 0x96336d02
add eax, 0xa19ba0a3
cmp eax, 0xd612054
jb 0x140051a60
cmp r10d, 0x5f5e100
movzx esi, word [rsp + 0xb8]
jae 0x140051b3a
cmp r10d, 0x989680
setb cl
mov eax, 0xf4240
mov ebx, 0x989680
cmovb ebx, eax
xor cl, 7
jmp 0x140051bd2
mov eax, 0x64
movzx esi, word [rsp + 0xb8]
nop word cs:[rax + rax]
mov ecx, dword [0x141dc67c8]
sub ecx, dword [0x141dc67cc]
and ecx, 0x28b3138d
xor ecx, 0x8961bc7b
imul edx, ecx, 0xe7bec1a1
cmp r10d, 0x3e8
setb cl
mov ebx, 0x3e8
cmovb ebx, eax
cmp edx, 0x620bc697
je 0x140051ad0
xor cl, 3
nop dword [rax + rax]
mov eax, dword [0x141dc67d0]
xor edx, edx
div dword [0x141dc67d4]
imul eax, eax, 0x49422ea1
or eax, 0x93cdb5c8
xor eax, 0xedf04711
cmp eax, 0xc9576cb0
jae 0x140051b10
jmp 0x140051bd2
mov eax, 0x5f5e100
nop
mov ecx, dword [str.X9v_]
sub ecx, dword [0x141dc67b4]
add ecx, 0xdb6344d
cmp r10d, 0x3b9aca00
mov ebx, 0x3b9aca00
cmovb ebx, eax
cmp ecx, 0x5e1b0e1c
ja 0x140051b40
nop dword [rax]
cmp r10d, 0x3b9aca00
setb cl
mov eax, dword [0x141dc67b8]
imul eax, dword [0x141dc67bc]
or eax, 0x4fe57835
xor eax, 0x3368330b
imul eax, eax, 0x4a0d896c
cmp eax, 0x6accdd22
jb 0x140051b70
xor cl, 9
nop word cs:[rax + rax]
mov eax, dword [0x141dc67c0]
or eax, dword [0x141dc67c4]
xor eax, 0x80400000
or eax, 0xfb274d8
and eax, 0x8ff3f5df
cmp eax, 0x64f4f309
je 0x140051bb0
movzx r13d, cl
mov qword [rsp + 0x40], r13
sub r13d, r12d
mov r12d, r13d
inc r12d
cmp r12w, si
jle 0x140051e7b
movsx rax, r12w
mov dword [rsp + 0x2c], r12d
mov ecx, r12d
sub ecx, esi
movsx rdx, si
sub rax, rdx
movsx rcx, cx
xor edx, edx
nop dword [rax]
cmp rax, r15
mov r12, r15
cmovb r12, rcx
test dl, dl
jne 0x140051c10
mov qword [rsp + 0x30], r13
xor r15d, r15d
xor esi, esi
nop dword [rax + rax]
mov r13d, dword [0x141dc68d8]
add r13d, dword [0x141dc68dc]
mov eax, r10d
xor edx, edx
div ebx
mov r11d, eax
imul eax, r13d, 0xd40932a0
xor eax, 0xe4cfb4e
cmp eax, 0x8f795f8b
ja 0x140051c30
mov r13, qword [rsp + 0xb0]
cmp rsi, r13
je 0x140052b10
mov ecx, edx
mov r10d, edx
nop word cs:[rax + rax]
mov eax, dword [0x141dc68e0]
or eax, dword [0x141dc68e4]
add eax, 0x3d71b45d
and eax, 0xf36b13f
imul eax, eax, 0x9d0f1db4
cmp eax, 0x74660704
je 0x140051c80
nop word cs:[rax + rax]
mov eax, dword [0x141dc68e8]
mov edx, dword [0x141dc68ec]
add eax, edx
add eax, 0x965b80ee
xor eax, 0xbe0158e7
add eax, 0xa083e28b
cmp eax, 0x29250014
ja 0x140051cb0
add r11b, 0x30
mov eax, dword [0x141dc68f0]
xor edx, edx
div dword [0x141dc68f4]
xor eax, 0x99efc12a
shr eax, 1
imul rax, rax, 0x233899fd
shr rax, 0x38
cmp eax, 0xa5223e76
jne 0x140051d10
mov byte [rdi + rsi], r11b
nop word cs:[rax + rax]
mov eax, dword [0x141dc68f8]
imul eax, dword [0x141dc68fc]
imul eax, eax, 0xca3f80ef
add eax, 0x33baadb6
mov byte [rdi + rsi], r11b
cmp eax, 0xbb70dbb8
ja 0x140051d10
lea rax, [rsi + 1]
cmp rax, r12
je 0x140052098
mov ecx, dword [0x141dc6910]
imul ecx, dword [0x141dc6914]
imul rcx, rcx, 0x45041979
shr rcx, 0x3d
or ecx, 0xc1ab02dc
cmp ecx, 0x9d324554
jb 0x140051d40
nop word cs:[rax + rax]
mov ecx, dword [0x141dc6918]
and ecx, dword [0x141dc691c]
imul ecx, ecx, 0x5d53c9c2
and ecx, 0xe4385e0c
cmp ecx, 0xcbac81ce
je 0x140051d70
cmp rsi, qword [rsp + 0x40]
je 0x14005221c
mov ecx, ebx
mov edx, 0xcccccccd
imul rcx, rdx
shr rcx, 0x23
nop word [rax + rax]
mov edx, dword [0x141dc69f0]
imul edx, dword [0x141dc69f4]
imul edx, edx, 0xd381fcf0
or edx, 0x290e8f49
cmp edx, 0x3e7c1d7a
ja 0x140051db0
nop word cs:[rax + rax]
test r15b, r15b
jne 0x140051de0
mov rsi, rax
cmp ebx, 0xa
mov ebx, ecx
jae 0x140051c30
mov eax, dword [0x141dc68c0]
imul eax, dword [0x141dc68c4]
imul eax, eax, 0xce8f0995
cmp eax, 0x7cf88a57
jne 0x140051e0f
ud2
mov eax, 0x81e5bf3b
nop word cs:[rax + rax]
mov ecx, dword [0x141dc68c8]
xor ecx, dword [0x141dc68cc]
imul rcx, rax
shr rcx, 0x3f
imul ecx, ecx, 0x1573353b
ud2
movabs rcx, 0xcccccccccccccccd
nop word cs:[rax + rax]
mov r10d, dword [0x141dc6800]
add r10d, dword [0x141dc6804]
or r10d, 0x82a629ce
add r10d, 0x19bf8bd3
and r10d, 0xbc56a361
mov rax, r11
mul rcx
cmp r10d, 0xcb902a30
je 0x140051e90
mov r9, rdx
shr r9, 3
mov r10d, ebx
mov ecx, r8d
shl r10, cl
nop word cs:[rax + rax]
mov eax, dword [0x141dc6808]
sub eax, dword [0x141dc680c]
xor eax, 0x501b31b7
imul eax, eax, 0xd8531ae
xor eax, 0x37349507
cmp eax, 0x5b73f297
jb 0x140051ee0
mov rax, r10
sub rax, r14
jbe 0x140052208
mov ecx, 0xb650b385
nop word cs:[rax + rax]
mov edx, dword [0x141dc6810]
imul edx, dword [0x141dc6814]
imul rdx, rcx
shr rdx, 0x3c
add edx, 0x5899f26d
and edx, 0x58095003
cmp edx, 0xa09cca5c
ja 0x140051f20
cmp rax, r14
jbe 0x14005240c
mov rcx, r10
sub rcx, r9
mov r11d, 0xb78c782f
nop
mov eax, dword [0x141dc6820]
xor edx, edx
div dword [0x141dc6824]
add eax, 0x97b6847a
imul rax, r11
shr rax, 0x3d
or eax, 0x266794a8
cmp eax, 0xd1dbba2c
ja 0x140051f60
nop word [rax + rax]
mov eax, dword [0x141dc6828]
imul eax, dword [0x141dc682c]
or eax, 0x69830024
and eax, 0x7bb3006d
xor eax, 0xe4dbbe4a
cmp eax, 0xb3f9bf21
ja 0x140051f90
cmp rcx, r9
jbe 0x140052000
lea rax, [r9 + r9]
nop dword [rax]
mov ecx, dword [0x141dc6830]
sub ecx, dword [0x141dc6834]
xor ecx, 0x90d47421
add ecx, 0x9ab9b63b
cmp ecx, 0xb857bf56
ja 0x140051fc0
mov rdx, r10
sub rdx, rax
mov eax, 2
mov ecx, r8d
shl rax, cl
cmp rdx, rax
jae 0x140052479
nop word [rax + rax]
mov eax, dword [0x141dc6838]
add eax, dword [0x141dc683c]
imul eax, eax, 0xadcc3260
add eax, 0x49245e80
cmp eax, 0x6bbd02ec
jb 0x140052000
sub r9, r14
mov r11, qword [rsp + 0x20]
jbe 0x14005206c
sub r10, r9
xor eax, eax
nop dword [rax]
test al, al
jne 0x140052030
nop word cs:[rax + rax]
mov eax, dword [0x141dc6888]
sub eax, dword [0x141dc688c]
imul eax, eax, 0x5a383b6f
add eax, 0xf439ec09
or eax, 0xedaa09f9
cmp eax, 0x6ebd27f5
jb 0x140052040
cmp r10, r9
jbe 0x140052548
mov eax, dword [0x141dc6870]
imul eax, dword [0x141dc6874]
xor eax, 0x14000009
or eax, 0xebef87b6
add eax, 0xff7ae9a9
cmp eax, 0x63ce8d8d
jae 0x140052cca
jmp 0x140052cee
mov r9d, ecx
mov r10d, ebx
nop
mov eax, dword [0x141dc6920]
xor edx, edx
div dword [0x141dc6924]
mov rdx, r9
mov ecx, r8d
shl rdx, cl
imul r11d, eax, 0xeec6d7da
add r11d, 0x18b41e47
mov rax, r10
shl rax, cl
cmp r11d, 0x7974f03f
jb 0x1400520a0
mov rcx, rax
sub rcx, r14
jbe 0x14005240c
add rdx, rbp
nop word cs:[rax + rax]
mov r9d, dword [0x141dc6928]
xor r9d, dword [0x141dc692c]
add r9d, 0x9b2967e3
xor r9d, 0x2d02f1
or r9d, 0xf952f806
cmp r9d, 0x8c1cc10d
jb 0x1400520f0
cmp rcx, r14
jbe 0x14005240c
mov rcx, rax
sub rcx, rdx
nop dword [rax + rax]
mov r9d, dword [0x141dc6930]
or r9d, dword [0x141dc6934]
imul r9d, r9d, 0xc8250b1b
add r9d, 0xb6caac50
imul r9, r9, 0x5627969
shr r9, 0x3a
cmp r9d, 0xcd329c3e
ja 0x140052130
cmp rcx, rdx
jbe 0x140052190
mov r9, rax
sub r9, rdx
sub r9, rdx
mov r10d, 2
mov ecx, r8d
shl r10, cl
cmp r9, r10
jae 0x14005262e
nop word cs:[rax + rax]
mov ecx, dword [0x141dc6938]
or ecx, dword [0x141dc693c]
imul ecx, ecx, 0x70a0d915
and ecx, 0x73e20506
xor ecx, 0x5d84bc8c
cmp ecx, 0xd7bddc46
ja 0x140052190
sub rdx, r14
mov r14, qword [rsp + 0x20]
jbe 0x1400521dd
sub rax, rdx
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x1400521d0
cmp rax, rdx
jbe 0x14005265e
mov eax, dword [0x141dc6950]
add eax, dword [0x141dc6954]
xor eax, 0x41000000
or eax, 0xa0604010
and eax, 0xeb62401a
cmp eax, 0xde077df7
jne 0x140052df2
jmp 0x140052e16
xor eax, eax
test al, al
mov rcx, qword [rsp + 0x20]
je 0x140052d24
jmp 0x140052d54
dec r9d
and r9d, 0x3f
mov r10d, 1
mov rsi, qword [rsp + 0x38]
nop
mov rdx, r10
mov ecx, r9d
shr rdx, cl
test rdx, rdx
jne 0x14005240c
mov r11, r10
nop word cs:[rax + rax]
mov ecx, dword [0x141dc69f8]
sub ecx, dword [0x141dc69fc]
or ecx, 0x3691cc2f
and ecx, 0x3e93cc2f
cmp ecx, 0x925af212
ja 0x140052250
cmp rax, r13
jae 0x140052c4d
add rbp, rbp
lea rdx, [rbp*4]
add rdx, rbp
mov rbp, rdx
and rbp, rsi
lea rcx, [r11 + r11]
lea r10, [rcx + rcx*4]
mov ecx, r8d
shr rdx, cl
add dl, 0x30
mov byte [rdi + rax], dl
inc rax
cmp rax, r12
jne 0x140052230
mov eax, dword [0x141dc6a00]
xor edx, edx
div dword [0x141dc6a04]
xor eax, eax
nop dword [rax]
test al, al
jne 0x1400522c0
mov rax, r14
sub rax, r10
jbe 0x14005241d
mov ecx, dword [0x141dc6a08]
and ecx, dword [0x141dc6a0c]
xor ecx, 0x218bad68
imul ecx, ecx, 0x7102e522
cmp ecx, 0xa7d99fa9
je 0x1400522d0
mov ecx, dword [0x141dc6a10]
and ecx, dword [0x141dc6a14]
add ecx, 0xd0d6a683
imul rcx, rcx, 0x6d830529
shr rcx, 0x3e
or ecx, 0xfa27f892
cmp ecx, 0x8a67a44b
jb 0x1400522f0
cmp rax, r10
jbe 0x14005250b
mov rax, r14
sub rax, rbp
nop word [rax + rax]
mov ecx, dword [0x141dc6a28]
sub ecx, dword [0x141dc6a2c]
xor ecx, 0x3badad4d
imul ecx, ecx, 0x282c1223
xor ecx, 0x161d1295
cmp ecx, 0x8805aa97
jb 0x140052330
nop word cs:[rax + rax]
mov ecx, dword [0x141dc6a30]
xor ecx, dword [0x141dc6a34]
and ecx, 0xdf2a44bd
imul ecx, ecx, 0x8c494919
add ecx, 0xf9ef37e0
cmp ecx, 0xfad6c6f7
ja 0x140052360
cmp rax, rbp
jbe 0x1400523d0
mov rax, r14
sub rax, rbp
sub rax, rbp
shl r11, 2
lea rcx, [r11 + r11*4]
nop dword [rax]
mov edx, dword [0x141dc6a40]
imul edx, dword [0x141dc6a44]
or edx, 0xff69de6f
imul rdx, rdx, 0x4846f523
shr rdx, 0x3e
cmp edx, 0x52b93414
ja 0x1400523a0
cmp rax, rcx
jae 0x140052837
nop
mov eax, dword [0x141dc6a48]
xor eax, dword [0x141dc6a4c]
or eax, 0x35773770
xor eax, 0x1b35b098
shr eax, 3
imul rax, rax, 0x20c1bbe9
shr rax, 0x39
cmp eax, 0x4dd67da4
je 0x1400523d0
sub rbp, r10
jbe 0x14005240c
sub r14, rbp
cmp r14, rbp
jbe 0x1400528a8
mov rax, qword [rsp + 0x20]
mov qword [rax], 0
jmp 0x140052cb9
mov eax, dword [0x141dc6a18]
xor edx, edx
div dword [0x141dc6a1c]
imul eax, eax, 0x281487f9
add eax, 0x9754808
or eax, 0x8f9efd71
cmp eax, 0x1f12432f
mov rcx, qword [rsp + 0x20]
jae 0x140052450
mov qword [rcx], 0
nop
mov eax, dword [0x141dc6a20]
or eax, dword [0x141dc6a24]
xor eax, 0x240000
or eax, 0x279beff9
mov qword [rcx], 0
cmp eax, 0x20060f36
je 0x140052450
jmp 0x140052cb9
mov eax, dword [0x141dc6840]
add eax, dword [0x141dc6844]
or eax, 0x40008044
and eax, 0x4306a34c
cmp eax, 0xae55273d
mov r8, qword [rsp + 0x20]
jbe 0x1400524a0
mov qword [r8], rdi
nop
mov eax, dword [0x141dc6848]
xor edx, edx
div dword [0x141dc684c]
add eax, 0x772ce3d9
imul rcx, rax, 0xa079645
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
add eax, 0x62893105
mov qword [r8], rdi
cmp eax, 0x947a4e87
ja 0x1400524a0
mov eax, dword [0x141dc6850]
add eax, dword [0x141dc6854]
or eax, 0x5df0b70a
mov ecx, 0xa2c94097
imul rcx, rax
shr rcx, 0x3e
or ecx, 0x799bee12
cmp ecx, 0xff94c50
jae 0x140052d5d
jmp 0x140052d94
mov rax, qword [rsp + 0x20]
mov qword [rax], 0
nop word [rax + rax]
mov eax, dword [0x141dc6a38]
and eax, dword [0x141dc6a3c]
xor eax, 0x82a05a19
and eax, 0x82a1da1d
imul eax, eax, 0xd40f8291
cmp eax, 0xe6622e9
jb 0x140052520
jmp 0x140052cb9
lea eax, [r13 + 2]
nop dword [rax]
mov ecx, dword [0x141dc6890]
or ecx, dword [0x141dc6894]
or ecx, 0x20010b00
and ecx, 0x78814b30
imul rcx, rcx, 0x6e4c21af
shr rcx, 0x3c
cmp ecx, 0xec93675a
ja 0x140052550
mov ecx, 0x9780ea4f
mov edx, dword [0x141dc6898]
or edx, dword [0x141dc689c]
xor edx, 0x519634a4
imul rdx, rcx
shr rdx, 0x3f
or edx, 0x8ebe5b9c
cmp edx, 0x670b1c38
jb 0x140052580
nop dword [rax + rax]
mov ecx, dword [0x141dc68a0]
add ecx, dword [0x141dc68a4]
or ecx, 0xd9702ee8
shr ecx, 3
imul rcx, rcx, 0x1066085f
shr rcx, 0x39
or ecx, 0x1912e054
cmp ecx, 0x918dee09
ja 0x1400525b0
cmp ax, si
jle 0x1400527b9
mov byte [rdi], 0x31
nop word [rax + rax]
mov ecx, dword [0x141dc68a8]
xor ecx, dword [0x141dc68ac]
add ecx, 0xda9f6494
imul rdx, rcx, 0xb371a33
shr rdx, 0x20
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 0x1f
imul ecx, ecx, 0xd0af508e
cmp ecx, 0x7353d92f
je 0x1400525f0
mov ecx, 1
jmp 0x1400527bb
mov eax, dword [0x141dc6940]
and eax, dword [0x141dc6944]
and eax, 0x68bf1c92
add eax, 0x8821cb11
xor eax, 0x5551ff99
cmp eax, 0xadc6be44
mov rcx, qword [rsp + 0x20]
jae 0x140052e1f
jmp 0x140052e4b
lea rbx, [rdi + r12]
nop word cs:[rax + rax]
mov eax, dword [0x141dc6960]
sub eax, dword [0x141dc6964]
add eax, 0xe6fad6b4
xor eax, 0xbb395bb1
imul eax, eax, 0xd55f85f0
cmp eax, 0xe90db58b
ja 0x140052670
mov rax, r12
neg rax
mov r8, 0xffffffffffffffff
mov rdx, rbx
mov r9, r12
mov rcx, r9
lea r9, [rax + r8]
mov r10d, dword [0x141dc6968]
or r10d, dword [0x141dc696c]
imul r10d, r10d, 0x1ae38625
or r10d, 0xfd7d795e
cmp r10d, 0xcdd589eb
je 0x1400526ad
cmp r9, 0xffffffffffffffff
je 0x140052716
mov r9d, dword [0x141dc6970]
add r9d, dword [0x141dc6974]
imul r9d, r9d, 0x5baeb40b
cmp r9d, 0xfe9df39
je 0x1400526d8
dec rdx
lea r9, [rcx - 1]
inc r8
cmp byte [rdi + rcx - 1], 0x39
je 0x1400526a6
xor eax, eax
test al, al
je 0x140052e61
jmp 0x140052e83
mov eax, dword [0x141dc6978]
imul eax, dword [0x141dc697c]
imul eax, eax, 0x34e60702
cmp eax, 0xbfa95949
je 0x140052716
mov eax, dword [0x141dc6980]
and eax, dword [0x141dc6984]
and eax, 0xf4dd8b0a
cmp eax, 0x5bc31772
je 0x140052730
test r12, r12
je 0x140052aa6
mov byte [rdi], 0x31
mov eax, dword [0x141dc69a0]
or eax, dword [0x141dc69a4]
xor eax, 0xa40022
or eax, 0xe71bd91d
cmp eax, 0xd971715
je 0x140052754
mov sil, 0x30
cmp r12, 1
je 0x140052aa9
lea rcx, [rdi + 1]
lea r8, [r12 - 1]
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
mov eax, dword [0x141dc69a8]
xor edx, edx
div dword [0x141dc69ac]
imul rax, rax, 0x4b33803f
shr rax, 0x3e
imul eax, eax, 0xc8a1caea
cmp eax, 0xe9c5375e
ja 0x14005278e
jmp 0x140052aa9
xor ecx, ecx
mov edx, dword [0x141dc68b0]
add edx, dword [0x141dc68b4]
or edx, 0x68401006
and edx, 0x6a7b192e
mov r8d, 0xb8d5b555
imul r8, rdx
shr r8, 0x3b
cmp r8d, 0xb6198e53
jbe 0x140052800
mov qword [r11], rdi
mov qword [r11 + 8], rcx
mov word [r11 + 0x10], ax
nop word cs:[rax + rax]
mov edx, dword [0x141dc68b8]
xor edx, dword [0x141dc68bc]
xor edx, 0xc48c10b
or edx, 0xb29726f0
add edx, 0x112fcb37
mov qword [r11], rdi
mov qword [r11 + 8], rcx
mov word [r11 + 0x10], ax
cmp edx, 0x1ef656f
jb 0x140052800
jmp 0x140052cb9
mov eax, dword [0x141dc6a50]
add eax, dword [0x141dc6a54]
xor eax, 0x8441
or eax, 0x960f6038
cmp eax, 0x85d85d24
mov rcx, qword [rsp + 0x20]
jne 0x14005285c
mov qword [rcx], rdi
mov eax, dword [0x141dc6a58]
xor eax, dword [0x141dc6a5c]
imul eax, eax, 0x11433c97
add eax, 0x37b2b1b6
xor eax, 0x25b8133
mov qword [rcx], rdi
cmp eax, 0xcfb99007
ja 0x14005285c
mov eax, dword [0x141dc6a60]
add eax, dword [0x141dc6a64]
and eax, 0x6577f6fe
add eax, 0xe48b986
cmp eax, 0xcbcb7de
jae 0x140052fb7
jmp 0x140052fdc
xor r10d, r10d
lea r13, [rdi + r12]
mov eax, dword [0x141dc6a70]
xor edx, edx
div dword [0x141dc6a74]
add eax, 0x3e725ba9
or eax, 0xbf9be6df
cmp eax, 0x99637826
jb 0x1400528af
mov r9, r13
mov rax, r12
mov rcx, rax
mov eax, dword [0x141dc6a78]
xor edx, edx
div dword [0x141dc6a7c]
mov r8, r10
nop dword [rax + rax]
mov eax, dword [0x141dc6a80]
imul eax, dword [0x141dc6a84]
and eax, 0xc1fd7de2
xor eax, 0x9062e600
cmp eax, 0x80cb5fdc
jb 0x1400528f0
cmp r9, rdi
je 0x1400529ea
dec r9
nop word [rax + rax]
mov eax, dword [0x141dc6a88]
and eax, dword [0x141dc6a8c]
imul eax, eax, 0x730bf796
add eax, 0xec97a216
cmp eax, 0xdb345de9
jb 0x140052920
lea rax, [rcx - 1]
lea r10, [r8 + 1]
cmp byte [r9], 0x39
je 0x1400528d4
mov eax, dword [0x141dc6a90]
xor eax, dword [0x141dc6a94]
and eax, 0xfc13c8b6
imul eax, eax, 0xe097d018
cmp eax, 0x500fe29d
jne 0x14005296e
inc byte [rdi + rcx - 1]
mov rsi, qword [rsp + 0x20]
mov rbx, qword [rsp + 0xb0]
mov eax, dword [0x141dc6a98]
and eax, dword [0x141dc6a9c]
inc byte [rdi + rcx - 1]
cmp eax, 0xf0549267
je 0x14005297b
cmp rcx, r12
jae 0x14005307e
add rcx, rdi
mov eax, dword [0x141dc6aa0]
imul eax, dword [0x141dc6aa4]
add eax, 0x74a4cf37
or eax, 0xf2b1eb05
add eax, 0xded034b1
cmp eax, 0xa0bb0be5
jb 0x14005299e
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
mov eax, dword [0x141dc6aa8]
sub eax, dword [0x141dc6aac]
and eax, 0x4128a004
xor eax, 0x22e7948
cmp eax, 0x731b4274
jae 0x1400529c8
jmp 0x14005307e
mov eax, dword [0x141dc6ab0]
and eax, dword [0x141dc6ab4]
imul eax, eax, 0x64271bdd
and eax, 0x52b69a39
imul eax, eax, 0xb6ae221
cmp eax, 0x4c1f5540
jae 0x140052a11
mov byte [rdi], 0x31
mov eax, dword [0x141dc6ab8]
xor eax, dword [0x141dc6abc]
add eax, 0x777af9f9
shr eax, 3
imul rax, rax, 0x2334269f
shr rax, 0x3a
or eax, 0xa951a7b2
mov byte [rdi], 0x31
cmp eax, 0x87d6876d
jb 0x140052a11
mov eax, dword [0x141dc6ac0]
xor eax, dword [0x141dc6ac4]
imul eax, eax, 0xe82bde66
add eax, 0xb7c420ed
and eax, 0x8ad19151
cmp eax, 0xadcc01f
ja 0x140052a3f
mov eax, dword [0x141dc6ac8]
or eax, dword [0x141dc6acc]
or eax, 0x6802901c
and eax, 0x68439d1f
add eax, 0xe6632ba4
cmp eax, 0x97b10f2d
ja 0x140052a62
cmp r12, 1
je 0x14005301e
lea rbx, [rdi + 1]
lea r14, [r12 - 1]
xor eax, eax
test al, al
je 0x140052fe2
jmp 0x14005300f
mov sil, 0x31
mov rax, qword [rsp + 0x30]
lea r9d, [rax + 2]
movzx r8d, word [rsp + 0xb8]
mov edx, dword [0x141dc69b0]
imul edx, dword [0x141dc69b4]
cmp r9w, r8w
setg al
cmp r12, r13
setb cl
cmp edx, 0xc6981665
je 0x140052abb
mov dword [rsp + 0x2c], r9d
and al, cl
je 0x140052ed0
mov eax, dword [0x141dc69c8]
or eax, dword [0x141dc69cc]
or eax, 0x41500c09
and eax, 0x53545f09
cmp eax, 0xeb7ab854
jbe 0x140052f88
jmp 0x140052faa
mov eax, dword [0x141dc6900]
imul eax, dword [0x141dc6904]
imul eax, eax, 0xba96b5c9
or eax, 0x1121405a
and eax, 0x712dc8da
cmp eax, 0x402c5a02
jne 0x140052b40
ud2
mov eax, dword [0x141dc6908]
imul eax, dword [0x141dc690c]
imul rax, rax, 0xb3f77fb
shr rax, 0x3a
or eax, 0x4a425234
and eax, 0x4a425235
ud2
mov eax, dword [0x141dc6760]
xor eax, dword [str.0h_r]
mov ecx, 0x9634b5fd
imul rcx, rax
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
add eax, 0x7027e1ca
or eax, 0x7ff03d81
cmp eax, 0xef0fae9b
jbe 0x140052c01
jmp 0x140052c21
mov eax, dword [0x141dc6778]
xor eax, dword [0x141dc677c]
or eax, 0xfd3ef5bf
imul rcx, rax, 0x60790505
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
cmp eax, 0x91306a2d
jne 0x140052be0
ud2
mov eax, dword [0x141dc6780]
or eax, dword [0x141dc6784]
add eax, 0xc6de7d17
xor eax, 0x5ddbcda2
ud2
mov eax, dword [0x141dc6768]
sub eax, dword [0x141dc676c]
or eax, 0xc7058773
imul eax, eax, 0xdd87557f
ud2
ud2
ud2
mov eax, dword [0x141dc67f0]
sub eax, dword [0x141dc67f4]
xor eax, 0x104000
or eax, 0xb3220646
and eax, 0xbf3be647
mov qword [rcx], 0
cmp eax, 0x6b1569a8
jne 0x140052c90
mov qword [rcx], 0
jmp 0x140052c4f
mov eax, dword [0x141dc67f8]
imul eax, dword [0x141dc67fc]
and eax, 0xf80dcba1
add eax, 0x5d17f783
imul rax, rax, 0x1c9a1481
shr rax, 0x3c
cmp eax, 0x8a9c7c2e
je 0x140052c90
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141dc6878]
or eax, dword [0x141dc687c]
add eax, 0xc108d3a0
and eax, 0xff90e59a
mov qword [r11], 0
cmp eax, 0x917669b3
jne 0x140052cf7
mov qword [r11], 0
jmp 0x140052cca
mov eax, 0xb4630b31
nop dword [rax]
mov ecx, dword [0x141dc6880]
or ecx, dword [0x141dc6884]
imul rcx, rax
shr rcx, 0x3f
imul ecx, ecx, 0xb7aac48
cmp ecx, 0x6f3a7b4
jbe 0x140052d00
jmp 0x140052cb9
mov eax, dword [0x141dc6818]
xor edx, edx
div dword [0x141dc681c]
imul eax, eax, 0x1d41be76
add eax, 0xa031f43c
or eax, 0x71875dda
mov qword [rcx], 0
cmp eax, 0x7a304476
ja 0x140052cb9
mov qword [rcx], 0
jmp 0x140052d24
mov eax, dword [0x141dc6858]
sub eax, dword [0x141dc685c]
mov ecx, 0xb4cea637
imul rcx, rax
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
imul eax, eax, 0xdc258d5b
mov qword [r8 + 8], 0
cmp eax, 0x7199f2e
jae 0x140052d9e
mov qword [r8 + 8], 0
jmp 0x140052d5d
mov eax, dword [0x141dc6860]
xor eax, dword [0x141dc6864]
cmp eax, 0xf97848c0
jne 0x140052dc0
mov word [r8 + 0x10], r12w
nop word cs:[rax + rax]
mov eax, dword [0x141dc6868]
xor eax, dword [0x141dc686c]
add eax, 0x5848e45f
and eax, 0x551ee0a3
imul rax, rax, 0x386e7817
shr rax, 0x3c
mov word [r8 + 0x10], r12w
cmp eax, 0xa051f3c1
jae 0x140052dc0
jmp 0x140052cb9
mov eax, dword [0x141dc6958]
add eax, dword [0x141dc695c]
imul eax, eax, 0x7b18d46c
mov qword [r14], 0
cmp eax, 0xfa257740
jne 0x140052cb9
mov qword [r14], 0
jmp 0x140052df2
mov eax, dword [0x141dc6948]
xor edx, edx
div dword [0x141dc694c]
or eax, 0x241fcc8f
imul eax, eax, 0xf01c106
add eax, 0x6550cc43
mov qword [rcx], rdi
mov qword [rcx + 8], r12
cmp eax, 0x23253e11
jae 0x140052e54
mov qword [rcx], rdi
mov qword [rcx + 8], r12
jmp 0x140052e1f
mov eax, dword [rsp + 0x2c]
mov word [rcx + 0x10], ax
jmp 0x140052cb9
mov eax, dword [0x141dc6988]
imul eax, dword [0x141dc698c]
xor eax, 0x4508000
and eax, 0x45c9044
inc byte [rdi + r9]
cmp eax, 0x4bb71fa3
jbe 0x140052e89
inc byte [rdi + r9]
jmp 0x140052e61
cmp rcx, r12
jae 0x140052ed0
mov eax, dword [0x141dc6990]
xor edx, edx
div dword [0x141dc6994]
mov eax, 0xa17d03d7
add rcx, rdi
mov edx, dword [0x141dc6998]
add edx, dword [0x141dc699c]
imul rdx, rax
shr rdx, 0x3e
and edx, 1
cmp edx, 0x5ec2049d
ja 0x140052ea4
mov dl, 0x30
call sub.VCRUNTIME140.dll_memset
mov al, 1
test al, al
je 0x140052ecc
mov eax, dword [0x141dc69b8]
xor edx, edx
div dword [0x141dc69bc]
nop
mov eax, dword [0x141dc69c0]
add eax, dword [0x141dc69c4]
or eax, 0xf0d468d4
add eax, 0x8bd5897b
cmp eax, 0xbb598aba
ja 0x140052ee0
cmp r12, r13
ja 0x140052c4d
mov eax, dword [0x141dc69d8]
or eax, dword [0x141dc69dc]
or eax, 0xac05040
and eax, 0x4ac2505e
xor eax, 0x4f57d77d
cmp eax, 0x38971e83
ja 0x140052f49
mov eax, dword [0x141dc69e0]
and eax, dword [0x141dc69e4]
imul eax, eax, 0x64570c60
xor eax, 0xc4cbf117
mov qword [r14], rdi
cmp eax, 0xaff7c59b
jbe 0x140052f4e
mov qword [r14], rdi
jmp 0x140052f28
mov qword [r14 + 8], r12
mov eax, dword [rsp + 0x2c]
mov word [r14 + 0x10], ax
nop dword [rax + rax]
mov eax, dword [0x141dc69e8]
imul eax, dword [0x141dc69ec]
or eax, 0xdd9be6ac
xor eax, 0xc16a957e
add eax, 0xd4c7d08c
cmp eax, 0x1595ecdc
ja 0x140052f60
jmp 0x140052cb9
mov eax, dword [0x141dc69d0]
mov ecx, dword [0x141dc69d4]
add eax, ecx
add eax, 0x82541521
or eax, 0xffe7bf4d
mov byte [rbx], sil
cmp eax, 0xd9211661
jne 0x140052faf
mov byte [rbx], sil
jmp 0x140052f88
inc r12
jmp 0x140052ed0
mov eax, dword [0x141dc6a68]
and eax, dword [0x141dc6a6c]
add eax, 0x1ca3863
or eax, 0xead8d6e6
mov qword [rcx + 8], r12
cmp eax, 0xdfb1226d
jae 0x140052e54
mov qword [rcx + 8], r12
jmp 0x140052fb7
mov esi, dword [0x141dc6ad0]
xor esi, dword [0x141dc6ad4]
add esi, 0x73a4a3c3
or esi, 0xf787e582
mov rcx, rbx
mov dl, 0x30
mov r8, r14
call sub.VCRUNTIME140.dll_memset
cmp esi, 0x478aa50b
jne 0x14005301e
mov rcx, rbx
mov dl, 0x30
mov r8, r14
call sub.VCRUNTIME140.dll_memset
jmp 0x140052fe2
mov rax, qword [rsp + 0x30]
lea edx, [rax + 2]
cmp r12, qword [rsp + 0xb0]
setb cl
movzx eax, word [rsp + 0xb8]
mov dword [rsp + 0x2c], edx
cmp dx, ax
setg al
and al, cl
mov ecx, dword [0x141dc6ad8]
add ecx, dword [0x141dc6adc]
or ecx, 0x65b7ac48
and ecx, 0x65bfae48
cmp ecx, 0xe2672e3b
ja 0x140053045
test al, al
mov rsi, qword [rsp + 0x20]
je 0x140053076
mov byte [r13], 0x30
inc r12
mov rbx, qword [rsp + 0xb0]
cmp r12, rbx
ja 0x140053102
mov eax, dword [0x141dc6ae0]
xor eax, dword [0x141dc6ae4]
and eax, 0xeedaf73d
cmp eax, 0x94af806f
jne 0x1400530a2
mov qword [rsi], rdi
mov qword [rsi + 8], r12
mov eax, dword [0x141dc6ae8]
or eax, dword [0x141dc6aec]
imul eax, eax, 0x667e8448
add eax, 0x49177e70
and eax, 0xf8219dd8
mov qword [rsi], rdi
mov qword [rsi + 8], r12
cmp eax, 0xfe96e041
ja 0x1400530a2
mov eax, dword [rsp + 0x2c]
mov word [rsi + 0x10], ax
mov eax, dword [0x141dc6af0]
xor eax, dword [0x141dc6af4]
imul eax, eax, 0x681581ba
or eax, 0x61b86c22
imul rax, rax, 0xba4e6a9
shr rax, 0x39
cmp eax, 0x6149fe53
ja 0x1400530d4
jmp 0x140052cb9
mov eax, dword [0x141dc6af8]
or eax, dword [0x141dc6afc]
xor eax, 0x35900889
imul eax, eax, 0x150e65a7
cmp eax, 0x4b1ee714
jbe 0x140053122
ud2
mov eax, dword [0x141dc6b00]
or eax, dword [0x141dc6b04]
imul eax, eax, 0xca1f34da
and eax, 0xac026b8c
xor eax, 0xf1004c50
ud2