Function at 0x41b010
Capabilities:
Encode data using xor

Disassembly:
sub esp, 0x43c
mov eax, dword [0x4310d8]
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov cl, 0xf
mov dword [esp + 0x448], eax
mov al, 0xa9
mov byte [esp + 0x24], cl
mov dl, 0xb1
mov byte [esp + 0x30], cl
mov cl, 0x42
mov byte [esp + 0x2b], al
mov byte [esp + 0x35], al
mov byte [esp + 0x21], al
mov byte [esp + 0x25], 0xc9
mov byte [esp + 0x26], 0x5b
mov byte [esp + 0x27], dl
mov byte [esp + 0x28], 0x62
mov byte [esp + 0x29], 0x6e
mov byte [esp + 0x2a], 0xf2
mov byte [esp + 0x2c], 0xc1
mov byte [esp + 0x2d], 0xea
mov byte [esp + 0x2e], 0xdf
mov byte [esp + 0x2f], 0x8d
mov byte [esp + 0x31], 0xab
mov byte [esp + 0x32], 0x78
mov byte [esp + 0x33], 0xd3
mov byte [esp + 0x34], 0xb8
mov byte [esp + 0x10], cl
mov byte [esp + 0x11], 0x88
mov byte [esp + 0x12], 0x12
mov byte [esp + 0x13], 0xfd
mov byte [esp + 0x14], cl
mov byte [esp + 0x15], 0x28
mov byte [esp + 0x16], 0xa0
mov byte [esp + 0x17], 0xe6
mov byte [esp + 0x18], 0x8c
mov byte [esp + 0x19], 0xd0
mov byte [esp + 0x1a], 0xff
mov byte [esp + 0x1b], dl
mov byte [esp + 0x1c], 0x2a
mov byte [esp + 0x1d], 0xd8
mov byte [esp + 0x1e], 0x46
mov byte [esp + 0x1f], 0xde
mov byte [esp + 0x20], 0xb2
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x10]
mov dl, byte [esp + eax + 0x24]
mov bl, byte [esp + eax + 0x25]
xor dl, cl
mov cl, byte [esp + eax + 0x12]
mov byte [esp + eax + 0x24], dl
mov dl, byte [esp + eax + 0x11]
xor bl, dl
mov dl, byte [esp + eax + 0x26]
xor dl, cl
mov cl, byte [esp + eax + 0x14]
mov byte [esp + eax + 0x25], bl
mov bl, byte [esp + eax + 0x27]
mov byte [esp + eax + 0x26], dl
mov dl, byte [esp + eax + 0x13]
xor bl, dl
mov dl, byte [esp + eax + 0x28]
xor dl, cl
mov byte [esp + eax + 0x27], bl
mov bl, byte [esp + eax + 0x29]
mov byte [esp + eax + 0x28], dl
mov dl, byte [esp + eax + 0x15]
xor bl, dl
mov byte [esp + eax + 0x29], bl
add eax, 6
cmp eax, 0x12
jl 0x41b0e0
mov esi, dword [esp + 0x450]
cmp dword [esi + 0x18], 0x10
jb 0x41b14e
mov eax, dword [esi + 4]
jmp 0x41b151
lea eax, [esi + 4]
push eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x50]
push ecx
call dword [0x431f14]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
lea edx, [esp + 0x48]
push edx
call ebx
push eax
lea eax, [esp + 0x4c]
push eax
mov ecx, edi
call fcn.0041bc30
cmp eax, 0xffffffff
je 0x41b298
lea ebp, [edi + 0x24]
push ebp
mov ecx, edi
call fcn.0041abe0
test eax, eax
jne 0x41b2e9
cmp dword [ebp], 0xfa
je 0x41b1ae
mov esi, 8
jmp 0x41b2f9
mov al, 0xa6
lea ecx, [esp + 0x38]
mov byte [esp + 0x3b], al
mov byte [esp + 0x17], al
push ecx
lea ecx, [esp + 0x14]
mov eax, 0x10
mov byte [esp + 0x3c], 0x30
mov byte [esp + 0x3d], 0x8f
mov byte [esp + 0x3e], 0x59
mov byte [esp + 0x40], 0xc8
mov byte [esp + 0x41], 0xd5
mov byte [esp + 0x42], 0xf3
mov byte [esp + 0x43], 0xb9
mov byte [esp + 0x44], 0xf6
mov byte [esp + 0x45], 6
mov byte [esp + 0x46], 0x72
mov byte [esp + 0x47], 0x49
mov byte [esp + 0x48], 0x70
mov byte [esp + 0x49], 0xbe
mov byte [esp + 0x4a], 0x82
mov byte [esp + 0x4b], 0xfb
mov byte [esp + 0x14], 0x88
mov byte [esp + 0x15], 0xda
mov byte [esp + 0x16], 0x99
mov byte [esp + 0x17], 0xc9
mov byte [esp + 0x18], 0x9d
mov byte [esp + 0x19], 0xbd
mov byte [esp + 0x1a], 0xe9
mov byte [esp + 0x1c], 0x9c
mov byte [esp + 0x1d], 0xbc
mov byte [esp + 0x1e], 0x80
mov byte [esp + 0x1f], 0xa5
mov byte [esp + 0x20], 0xd6
mov byte [esp + 0x21], 0xe8
mov byte [esp + 0x22], 0xe5
mov byte [esp + 0x23], 0xef
call fcn.0041aaf0
cmp dword [esi + 0x50], 0x10
jb 0x41b26c
mov ecx, dword [esi + 0x3c]
jmp 0x41b26f
lea ecx, [esi + 0x3c]
push ecx
push eax
lea edx, [esp + 0x50]
push edx
call dword [0x431f14]
add esp, 0xc
lea eax, [esp + 0x48]
push eax
call ebx
push eax
lea ecx, [esp + 0x4c]
push ecx
mov ecx, edi
call fcn.0041bc30
cmp eax, 0xffffffff
jne 0x41b2c5
mov esi, 7
mov edx, dword [edi + 0x1c]
mov ecx, edi
mov dword [edi + 0x28], edx
call fcn.0041baf0
mov ecx, dword [esp + 0x448]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
call fcn.00424873
add esp, 0x43c
ret 4
push ebp
mov ecx, edi
call fcn.0041abe0
test eax, eax
jne 0x41b2e9
cmp dword [ebp], 0xfa
je 0x41b2e1
mov esi, 8
jmp 0x41b2f9
push esi
mov ecx, edi
call fcn.0041ad70
mov esi, eax
cmp esi, 6
je 0x41b29d
cmp esi, 7
je 0x41b29d
test esi, esi
je 0x41b2aa
cmp dword [edi + 4], 0xffffffff
je 0x41b2aa
mov ecx, edi
call fcn.0041ae80
mov ecx, edi
call fcn.0041ba60
jmp 0x41b2aa