Function at 0x411c30
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x38
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push edi
push 0x3e8
call esi
mov edi, dword [esp + 0x48]
push 0x3e8
lea eax, [esp + 0x13]
mov bl, 0xcc
push 1
push eax
mov ecx, edi
mov byte [esp + 0x1b], bl
call fcn.00413bb0
push 0x3e8
call esi
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x18]
push ecx
push 0x2b
push edx
mov ecx, edi
call fcn.00413b00
cmp eax, 0xd
jb 0x411ea8
xor edi, edi
cmp byte [esp + edi + 0x18], bl
je 0x411c91
inc edi
cmp edi, 0x2b
jl 0x411c85
cmp edi, 0x2b
je 0x411ea8
push str.TestDemo__LiuYong
mov ecx, 0x467898
call fcn.004347b3
inc edi
xor eax, eax
xor ecx, ecx
xor edx, edx
mov al, byte [esp + edi + 0x18]
mov cl, byte [esp + edi + 0x19]
mov dl, byte [esp + edi + 0x1a]
shl eax, 8
add eax, ecx
xor ecx, ecx
mov cl, byte [esp + edi + 0x1b]
shl eax, 8
add eax, edx
shl eax, 8
add eax, ecx
mov ecx, 0x46da1c
mov dword [0x46788c], eax
call fcn.00434601
lea esi, [edi + 4]
cmp edi, esi
jge 0x411d14
mov bl, byte [esp + edi + 0x18]
mov ecx, 0x46da1c
mov dl, bl
shr dl, 4
add dl, 0x30
push edx
call fcn.00434a2d
and bl, 0xf
mov ecx, 0x46da1c
add bl, 0x30
push ebx
call fcn.00434a2d
inc edi
cmp edi, esi
jl 0x411ce7
mov al, byte [0x463399]
mov cl, byte [0x463509]
mov dl, byte [0x46368a]
xor al, 0xcc
mov byte [esp + 0x10], al
mov al, byte [0x463754]
xor cl, 0x72
xor dl, 0x46
xor al, 0x3d
mov byte [esp + 0x11], cl
mov ecx, dword [0x46788c]
mov byte [esp + 0x12], dl
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x10]
cmp ecx, eax
mov byte [esp + 0x14], 0
jne 0x411e9a
xor al, al
xor ecx, ecx
mov bl, byte [ecx + 0x463378]
xor al, bl
inc ecx
cmp ecx, 0x19d
jl 0x411d5f
mov ecx, 0x19e
mov bl, byte [ecx + 0x463378]
xor al, bl
inc ecx
cmp ecx, 0x3e8
jl 0x411d75
mov bl, byte [0x463476]
mov dl, bl
xor dl, al
xor al, al
add dl, 8
xor ecx, ecx
add al, byte [ecx + 0x463378]
inc ecx
cmp ecx, 0xfe
jl 0x411d97
mov ecx, 0xff
add al, byte [ecx + 0x463378]
inc ecx
cmp ecx, 0x3e8
jl 0x411dab
cmp dl, byte [0x463515]
jne 0x411e9a
xor al, 0xab
cmp al, bl
jne 0x411e9a
mov eax, 0x46786c
mov bl, byte [esp + esi + 0x18]
xor edx, edx
cmp bl, 1
sete dl
mov dword [eax], edx
add eax, 4
inc esi
cmp eax, 0x46788c
jl 0x411dd5
xor eax, eax
mov cl, byte [esp + esi + 0x18]
and cl, 0x7f
inc esi
mov byte [esp + eax + 0x10], cl
inc eax
cmp eax, 4
jl 0x411df0
lea edx, [esp + 0x10]
mov byte [esp + 0x14], 0
push edx
call fcn.00429ca2
add esp, 4
mov word [0x46789e], ax
xor eax, eax
mov cl, byte [esp + esi + 0x18]
and cl, 0x7f
inc esi
mov byte [esp + eax + 0x10], cl
inc eax
cmp eax, 2
jl 0x411e1c
lea edx, [esp + 0x10]
mov byte [esp + 0x12], 0
push edx
call fcn.00429ca2
add esp, 4
mov word [0x4678a0], ax
xor eax, eax
mov cl, byte [esp + esi + 0x18]
and cl, 0x7f
inc esi
mov byte [esp + eax + 0x10], cl
inc eax
cmp eax, 2
jl 0x411e48
lea edx, [esp + 0x10]
mov byte [esp + 0x12], 0
push edx
call fcn.00429ca2
mov dl, byte [esp + esi + 0x1c]
add esp, 4
cmp dl, 0xb0
mov word [0x4678a2], ax
setne al
add eax, 0x11
pop edi
mov byte [0x46789c], al
pop esi
mov dword [0x4678e8], 1
mov eax, 1
pop ebx
add esp, 0x38
ret
push 0
push 0
push 0x463080
call fcn.0043ee6e
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x38
ret