Function at 0x4572a4
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
push 8
call fcn.004e1ee0
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x5b2b05
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
push 4
call fcn.004e1ee0
add esp, 4
mov dword [ebp - 0x14], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx], 0x5f6308
call fcn.0044ed74
push 0xffffffffffffffff
push 8
push 0x16015901
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x18], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x45732c
mov eax, 0x5b2bae
push eax
push 1
mov ebx, 0x4e3300
call fcn.004e1ef8
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457352
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
mov eax, dword [ebp - 0x1c]
cdq
push edx
push eax
call fcn.0044f0d3
mov eax, dword [0x6df408]
push eax
mov ebx, eax
call fcn.004013dc
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.004e1ee0
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x4573c8
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
test eax, eax
je 0x4573bc
push eax
mov ebx, eax
call fcn.00401b58
inc eax
push eax
call fcn.004e1ee0
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x45739f
pop eax
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4573e7
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4573e3
imul eax, dword [ebx]
jmp 0x4573d8
mov ecx, eax
test ecx, ecx
je 0x457406
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x4573ff
push ebx
push eax
call fcn.004e1ee6
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4573ed
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 4], eax
mov eax, str._QQRichEditFormat__Info_version_1001____Info_
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457428
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 4]
call fcn.00401c1f
xor ecx, ecx
push eax
lea eax, [ebp - 0xc]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x457af0
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x457472
push 0x1b3
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x45748f
push 0x1b3
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push dword [ebp - 0x18]
call fcn.0042eac5
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4574b6
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push str..bmp
push dword [ebp - 0x10]
call fcn.00401abb
add esp, 8
cmp eax, 0
je 0x457522
push str..jpg
push dword [ebp - 0x10]
call fcn.00401abb
add esp, 8
cmp eax, 0
je 0x457522
push str..png
push dword [ebp - 0x10]
call fcn.00401abb
add esp, 8
cmp eax, 0
je 0x457522
push str..gif
push dword [ebp - 0x10]
call fcn.00401abb
add esp, 8
cmp eax, 0
je 0x457522
xor eax, eax
jmp 0x457527
mov eax, 1
test eax, eax
je 0x4575e7
push 0
mov ebx, 0x4e24f0
call fcn.004e1ef8
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x45756b
push 0x2c2
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x457588
push 0x2c2
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x1c], ebx
push str.__shortcut_____EditElement_
mov ebx, dword [ebp - 0x1c]
push dword [ebx]
push str.Send_file_
push dword [ebp - 0x18]
push str._EditElement_type_1__filepath_
push dword [ebp - 8]
mov ecx, 6
call fcn.00401bc3
add esp, 0x18
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4575ca
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4575de
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x45760e
push 0x322
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x45762b
push 0x322
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x5f616d
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.00401abb
add esp, 8
cmp eax, 0
jne 0x4576c9
push 0x80000301
push 0
push dword [ebp + 8]
push 1
mov ebx, 0x4e3300
call fcn.004e1ef8
add esp, 0x10
push eax
lea eax, [ebp - 0x14]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x2c]
mov dword [ebp - 0x1c], eax
push str._____EditElement_
push dword [ebp - 0x1c]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4576ac
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4576c0
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x4576f0
push 0x3f9
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x45770d
push 0x3f9
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x5f626d
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.00401abb
add esp, 8
cmp eax, 0
jne 0x4577bf
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
push dword [ebp - 0x28]
call fcn.00453097
mov dword [ebp - 0x2c], eax
push str._____EditElement_
push dword [ebp - 0x2c]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4577a2
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x30]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4577b6
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x4577e6
push 0x4b5
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x457803
push 0x4b5
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x5f6274
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.00401abb
add esp, 8
cmp eax, 0
jne 0x4578a0
push 1
push 8
push 1
push 2
call fcn.004502f4
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
call fcn.004537a7
mov dword [ebp - 0x20], eax
push str._____EditElement_
push dword [ebp - 0x20]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x457883
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457897
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x4578c7
push 0x593
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4578e4
push 0x593
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x5f627b
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.00401abb
add esp, 8
cmp eax, 0
jne 0x45797c
push 1
push 8
push 1
push 2
call fcn.004502f4
mov dword [ebp - 0x18], eax
push 1
push 0
push dword [ebp - 0x18]
call fcn.00453aa8
mov dword [ebp - 0x1c], eax
push str._____EditElement_
push dword [ebp - 0x1c]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x45795f
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457973
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x4579a3
push 0x679
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x4579c0
push 0x679
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push 0x5f6282
mov ebx, dword [ebp - 0x18]
push dword [ebx]
call fcn.00401abb
add esp, 8
cmp eax, 0
jne 0x457a5d
push 1
push 8
push 1
push 2
call fcn.004502f4
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
call fcn.00453d60
mov dword [ebp - 0x20], eax
push str._____EditElement_
push dword [ebp - 0x20]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x457a40
push ebx
call fcn.004e1ee6
add esp, 4
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457a54
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
jmp 0x457ae8
mov ebx, dword [ebp - 4]
call fcn.004013dc
push ebx
push ecx
mov eax, dword [ebp - 0xc]
dec eax
jns 0x457a84
push 0x75e
push 0x401718c
push 4
call fcn.004e1eec
add esp, 0xc
pop ecx
pop ebx
cmp eax, ecx
jl 0x457aa1
push 0x75e
push 0x401718c
push 1
call fcn.004e1eec
add esp, 0xc
shl eax, 2
add ebx, eax
mov dword [ebp - 0x18], ebx
push str._____EditElement_
mov ebx, dword [ebp - 0x18]
push dword [ebx]
push str._EditElement_type_0_____CDATA_
push dword [ebp - 8]
mov ecx, 4
call fcn.00401bc3
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457adf
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
call fcn.00421adf
pop eax
pop ebx
pop ecx
jmp 0x45743d
add esp, 0xc
push str.__QQRichEditFormat_
push dword [ebp - 8]
mov ecx, 2
call fcn.00401bc3
add esp, 8
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457b1f
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
lea eax, [ebp - 8]
push eax
call fcn.004540cc
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457b43
push ebx
call fcn.004e1ee6
add esp, 4
pop eax
mov dword [ebp - 8], eax
cmp dword [0x6df410], 0
je 0x457b78
push 0x80003
push 0
push dword [0x6df334]
push 1
mov eax, 7
mov ebx, 0x564439
call fcn.004e1f04
add esp, 0x10
push VariantClear
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x457b8b
mov eax, 0x5b2bae
push eax
push 1
mov ebx, 0x4e3d20
call fcn.004e1ef8
add esp, 0x10
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.0045411d
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457bba
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push 0
push 0xc8
call fcn.0044f0d3
push dword [ebp + 8]
call fcn.0045480a
and eax, 1
xor eax, 1
test eax, eax
jne 0x457bba
push 0xffffffffffffffff
push 8
push 0x160158fa
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x18], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x457c15
mov eax, 0x5b2bae
push eax
push 1
mov ebx, 0x4e3300
call fcn.004e1ef8
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457c3b
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
mov eax, dword [ebp - 0x1c]
cdq
push edx
push eax
call fcn.0044f0d3
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push 0
push 0x64
call fcn.0044f0d3
push dword [ebp + 8]
call fcn.0045480a
and eax, 1
xor eax, 1
test eax, eax
jne 0x457c54
push dword [ebp + 8]
call fcn.0045487e
cmp dword [0x6df410], 0
je 0x457cbc
push 0x80003
push 0
push dword [0x6df334]
push 1
mov eax, 7
mov ebx, 0x56444d
call fcn.004e1f04
add esp, 0x10
push 0xffffffffffffffff
push 8
push 0x160158fa
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x18], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x457ce8
mov eax, 0x5b2bae
push eax
push 1
mov ebx, 0x4e3300
call fcn.004e1ef8
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457d0e
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
mov eax, dword [ebp - 0x1c]
cdq
push edx
push eax
call fcn.0044f0d3
push 0xffffffffffffffff
push 0x13
push 0x160158ff
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x457db7
xor ecx, ecx
inc ecx
push ecx
cmp ecx, 2
jg 0x457db4
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 0xd
push dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x168]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push 0
push 0x32
call fcn.0044f0d3
pop ecx
jmp 0x457d4c
add esp, 4
push 0xffffffffffffffff
push 0x13
push 0x160158ff
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jne 0x457e12
push 1
push 2
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
push 0xd
push dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x168]
push 0xffffffffffffffff
push 8
push 0x160158f7
push 0x52010001
call fcn.004e1f0a
add esp, 0x10
mov dword [ebp - 0x18], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x18]
test eax, eax
jne 0x457e3e
mov eax, 0x5b2bae
push eax
push 1
mov ebx, 0x4e3300
call fcn.004e1ef8
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457e64
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
mov eax, dword [ebp - 0x1c]
cdq
push edx
push eax
call fcn.0044f0d3
push dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x6c]
push dword [ebp + 8]
call fcn.0045725a
mov eax, 0x5f62ff
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.00437f84
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x457eb7
push ebx
call fcn.004e1ee6
add esp, 4
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push 0
push 0x64
call fcn.0044f0d3
push dword [ebp + 8]
lea eax, [ebp - 0x14]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x68]
test eax, eax
jne 0x457e7d
inc dword [0x6df414]
call fcn.0044ee06
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x457f12
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x457f0e
imul eax, dword [ebx]
jmp 0x457f03
mov ecx, eax
test ecx, ecx
je 0x457f31
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x457f2a
push ebx
push eax
call fcn.004e1ee6
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x457f18
call fcn.004e1ee6
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x457f49
push ebx
call fcn.004e1ee6
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x457f59
push ebx
call fcn.004e1ee6
add esp, 4
mov ebx, dword [ebp - 0x14]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.004e1ee6
add esp, 4
mov esp, ebp
pop ebp
ret 4