Function at 0x441c40
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x64
mov dword [esp + 0x10], 0x73fe71e6
mov dword [esp + 0x14], 0x6ffa6df0
mov dword [esp + 0x18], 0x6b3c69fc
mov dword [esp + 0x1c], 0x67f265f8
mov dword [esp + 0x20], 0x636261f4
mov word [esp + 0x24], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0xec
xor cl, byte [esp + eax + 0x10]
add cl, 0x64
mov byte [esp + eax + 0x10], cl
inc eax
cmp eax, 0x16
jne 0x441c80
lea eax, [esp + 0x10]
push eax
call fcn.00444bc0
add esp, 4
mov dword [0x45a8e0], eax
mov dword [esp + 0xc], 0xf9bf341
test eax, eax
je 0x441cbc
mov dword [esp + 0xc], 0xbb61621f
mov ebp, 0x4970b0ec
xor eax, eax
cmp ebp, 0xf9bf341
setl al
mov eax, dword [eax*4 + 0x4507e8]
mov ecx, 0xaf13cbbc
xor ecx, dword [0x4507f0]
add eax, ecx
inc eax
mov dword [esp + 8], ecx
jmp eax
cmp ecx, dword es:[edi + 0x3b]
cmp dword [ebx], 0x3be13bb3
cmp al, 0x95
cmp al, 0xc2
cmp al, 0x2a
pop eax
cwde
les edi, ds:[esi]
cld
and bh, byte ds:[edi]
pushal
aas
lcall 0x3f, 0xfb3fd53f
nop
add dword [eax], eax
or byte [ecx], al
add byte [eax], al
dec esi
xor byte [eax + esi - 0x66], dh
xor bh, dl
xor byte [esi], bh
xor dword [edx + 0x31], esi
cmpsb byte [esi], byte es:[edi]
xor esp, edx
xor dword [0x67323332], eax
xor bh, byte [edx + esi + 0x33ab337f]
pop esp
xor al, 0x8e
xor al, 0xc4
xor al, 0x98
xor eax, 0x36af35c4
jecxz 0x45ba44
adc dword [edi], esi
dec ebx
aaa
mov dh, byte [edi]
mov cl, 0x37
jmp 0x45ba4f
pop ebp
cmp esi, dword [ebx + 0x3b]
mov dword [ebx], edi
xchg esp, eax
cmp ebp, dword [edx - 0x34c43fc5]
cmp ecx, ebx
cmp edx, esi
cmp esp, ecx
cmp esi, edi
cmp eax, dword [edx]
cmp al, 0xd
cmp al, 0x23
cmp al, 0x2e
cmp al, 0x39
cmp al, 0x4f
cmp al, 0x5a
cmp al, 0x65
cmp al, 0x7b
cmp al, 0x86
cmp al, 0x91
cmp al, 0x9c
cmp al, 0xa7
cmp al, 0xbd
cmp al, 0xc8
cmp al, 0xd3
cmp al, 0xe9
cmp al, 0xff
cmp al, 0xa
cmp eax, 0x3d2b3d15
cmp eax, 0x3d4c3d41
push edi
cmp eax, 0x3d783d6d
cmp dword [0x3da43d99], 0xffffffaf
cmp eax, 0x3dd03dc5
fstp xword [0x3e073df1]
adc bh, byte [esi]
sbb eax, 0x3e3e283e
dec ecx
pop edi
jne 0x45baec
cmp byte [esi], 0x8b
mov eax, dword ds:[0xc23eb73e]
fdivr dword ds:[esi]
jecxz 0x45bafa
out dx, al
stc
invalid
add dword [eax], esi
or al, 0x30
pop ss
xor byte [0x4e304330], ch
xor byte [eax + esi + 0x7a], ah
xor byte [ebp - 0x64cf6fd0], al
xor byte [ecx - 0x22cf38d0], dh
jp 0x45bb2c
test dword [eax], esi
nop
xor byte [ebx - 0x38cf4ed0], bl
xor ch, bl
xor al, ch
xor bl, dh
xor dh, bh
xor byte [ecx], cl
xor dword [ecx + esi], edx
pop ds
xor dword [edx], ebp
xor dword [0x4b314031], esi
xor dword [ecx + 0x31], esp
ja 0x45bb51
lea esi, [ecx]
mov dword [0xb931ae31], eax
xor esp, eax
xor edx, ebx
xor eax, esi
xor dword [esi], eax
lock xor dword [esi], eax
xor bl, byte [edx + esi]
daa
xor dh, byte [edx]
xor bh, byte [0x69325332]
xor bh, byte [edi + 0x32]
xchg ebp, eax
xor ah, byte [eax - 0x3ecd49ce]
xor dl, bh
xor ch, ch
xor bh, al
xor al, byte [ebx]
xor ebx, dword [ecx]
xor esp, dword [ebx + esi]
das
xor ebp, dword [edi]
xor eax, dword [ebp + 0x33]
pop ebx
xor esi, dword [ecx + 0x33]
xchg dword [ebx], esi
popfd
xor esi, dword [ebx - 0x20cc36cd]
xor esi, ebp
xor ecx, dword [ebx]
xor al, 0x21
xor al, 0x37
xor al, 0x4d
xor al, 0x63
xor al, 0x79
xor al, 0x8f
xor al, 0xa5
xor al, 0xbb
xor al, 0xd1
xor al, 0xe7
xor al, 0xfd
xor al, 0x13
xor eax, 0x353f3529
push ebp
xor eax, 0x3581356b
xchg edi, eax
xor eax, 0x381f37ef
salc
cmp eax, dword [esi]
cmp al, 0
mov al, 1
add byte [eax], ah
add byte [eax], al
add bl, bh
xor dword [edx + esi], eax
daa
xor dl, byte [ebp - 0x3eca61cb]
xor eax, 0x39a33660
lodsb al, byte [esi]
cmp edi, ecx
cmp dword [esi], edi
cmp edx, dword [eax + 0x1c0003b]
add byte [eax + eax], bl
add byte [eax], al
jne 0x45bbef
xor byte [ecx], 0xa1
xor dword [edx - 0x24cd43ce], esi
xor ch, byte [edi + 0x34]
adc eax, 0x3d723d
add byte [eax], al
rol byte [ecx], 1
add byte [eax + eax], bl
add byte [eax], al
popal
xor dword [edx + 0x31], ebp
lea esi, [ecx]
dec ebx
aaa
sub edi, dword [ecx]
jge 0x45bc1d
inc esp
cmp eax, 0x3d703d4d
add byte [eax], al
add al, ah
add dword [eax], eax
inc eax
add byte [eax], al
add al, dh
xor eax, 0x36f136e4
pop ss
aaa
cmp esi, dword [edi]
dec edi
aaa
pop eax
aaa
invalid
add byte [eax], al
add byte [eax], al
invalid
cmp al, 0x8f
cmp al, 0x1c
sub edi, dword ds:[esi]
xor dword [esi], edi
lodsb al, byte [esi]
mov edi, 0x3eee3e
lock add dword [eax], eax
pop esp
add byte [eax], al
add byte [ebp + 0x30], al
dec ebx
xor byte [edx + 0x30], bl
pushal
xor byte [ebx - 0x2dcf3bd0], dl
xor al, bl
xor byte [esi], al
xor dword [ecx + esi - 0x71], edi
xor dword [ebp + 0x327d31], edi
xor al, 0x2c
xor al, 0x36
xor al, 0x46
xor al, 0x10
xor eax, 0x35323523
inc ebp
xor eax, 0x35933557
mov byte [0x9235be35], al
cwde
jnp 0x45bca3
invalid
xor dh, byte [ecx + 0x2a331a32]
xor ebx, dword [edx + 0x33]
insd dword es:[edi], dx
xor edi, dword [ebx + esi - 0x65]
xor esp, dword [ebx + esi + 0x33c233aa]
xor ecx, dword [esi]
xor al, 0x20
xor al, 0x32
xor al, 0x4b
xor al, 0x59
xor al, 0xdf
xor eax, 0x366a35fc
jge 0x45bd02
xchg edx, eax
cmpsb byte ss:[esi], byte es:[edi]
invalid
invalid
invalid