Function at 0x44a5c3
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x4affcc
call fcn.004af828
sub esp, 0x74
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor ebx, ebx
mov dword [ebp - 0x20], ebx
jmp 0x44a5eb
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x54], 0xad313dd3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x44a5dd
mov dword [ebp - 0x54], 0x1b
jmp 0x44a60d
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], 0x690f1d89
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x54]
cmp dword [ebp - 0x54], 0xfffffffd
je 0x44a5fa
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xfffffff5
cmp dword [ebp - 0x24], 0xf
jg 0x44a72b
mov dword [ebp - 0x20], ebx
jmp 0x44a63d
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x40], 0x3df603fa
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x44a62f
mov dword [ebp - 0x2c], 0x2493
cmp dword [ebp - 0x2c], 0x2741
jle 0x44a67c
mov esi, ebx
mov edi, ebx
mov eax, esi
mov ecx, edi
shl eax, cl
cdq
push edx
push eax
mov ecx, 0xabdd58
call fcn.00410d32
inc edi
cmp edi, 0x862
jl 0x44a657
inc esi
cmp esi, 0x51c5
jl 0x44a655
mov byte [ebp - 0x11], bl
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x2c], 0x2387
jge 0x44a69c
push 0xaab958
push 0xabdd58
call fcn.00413ac6
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44a6c2
cmp byte [ebp - 0x11], 0
je 0x44a6e6
push 0xbfa
push ebx
push ebx
push ebx
push ebx
push 0x2212
push 0x776
push 0x2454
call dword [0xac13b0]
mov dword [ebp - 0x3c], 0x17
jmp 0x44a71d
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x44a704
push 0x848
push ebx
call dword [0xac1304]
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x44a71a
push 1
push 0x2189
call dword [0xac1444]
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x18
jl 0x44a6ef
inc dword [ebp - 0x24]
jmp 0x44a620
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [eax], ebx
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp dword [eax], 0x1b
jge 0x44aa0b
mov dword [ebp - 0x2c], 0x5f3b
cmp dword [ebp - 0x2c], 0x60b8
jle 0x44a785
push ebx
push ebx
push 0x1800
push ebx
call dword [0xac13d8]
mov esi, ebx
mov edi, ebx
mov eax, edi
and eax, esi
cdq
push edx
push eax
mov ecx, 0xabdd58
call fcn.00410d32
inc edi
cmp edi, 0x30e6
jl 0x44a762
inc esi
cmp esi, 0x4306
jl 0x44a760
mov dword [ebp - 4], 2
cmp dword [ebp - 0x2c], 0x5d31
jge 0x44a7a6
push 0xaab998
push 0xabdd58
call fcn.00413ac6
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44a7cc
mov dword [ebp - 0x18], 0xddc85f70
push 2
lea ecx, [ebp - 0x60]
call fcn.00411076
mov dword [ebp - 0x20], ebx
jmp 0x44a7ee
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x60]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x44a7e2
mov dword [ebp - 0x18], ebx
cmp dword [ebp - 0x18], 0xffffffe3
jge 0x44a8ff
mov dword [ebp - 0x20], 0xfffffffd
mov dword [ebp - 0x20], ebx
jmp 0x44a81b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x80], 0x58fb770a
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x44a80d
mov dword [ebp - 0x24], 0x5fc0
cmp dword [ebp - 0x24], 0x6273
jle 0x44a83c
push 0x7e4
call dword [0xac1228]
mov dword [ebp - 0x20], 6
jmp 0x44a8b0
mov dword [ebp - 0x1c], 0xfffffffd
mov dword [ebp - 0x2c], 0xe11a
mov dword [ebp - 0x1c], ebx
jmp 0x44a8a2
mov dword [ebp - 0x2c], 0xfffffffd
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x80], ebx
je 0x44a899
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x80]
xor edx, edx
cmp eax, 0xfffffff6
sete dl
add edx, 8
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jle 0x44a858
cmp dword [ebp - 0x18], ebx
jne 0x44a8b6
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xc
jge 0x44a845
mov dword [ebp - 4], 4
cmp dword [ebp - 0x24], 0x5f25
jge 0x44a8d1
push 0xaab9f8
call fcn.00496907
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44a8f7
dec dword [ebp - 0x18]
jmp 0x44a7f7
mov dword [ebp - 0x18], 1
cmp dword [ebp - 0x18], ebx
jl 0x44a9aa
mov byte [ebp - 0x11], bl
mov dword [ebp - 0x2c], 0x2503
cmp dword [ebp - 0x2c], 0x26b1
jle 0x44a949
mov esi, ebx
mov edi, ebx
mov eax, edi
xor eax, esi
cdq
push edx
push eax
mov ecx, 0xabdd58
call fcn.00410d32
inc edi
cmp edi, 0x648d
jl 0x44a926
inc esi
cmp esi, 0x6fe9
jl 0x44a924
cmp byte [ebp - 0x11], 0
je 0x44a95b
push 0x1e18
push ebx
call dword [0xac1318]
mov dword [ebp - 4], 6
cmp dword [ebp - 0x2c], 0x2487
jge 0x44a97c
push 0xaaba68
push 0xabdd58
call fcn.00413ac6
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
jmp 0x44a9a2
dec dword [ebp - 0x18]
jmp 0x44a906
lea ecx, [ebp - 0x60]
call fcn.00411148
mov dword [ebp - 0x24], 0x462751c7
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x20], ebx
jmp 0x44a9d3
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x48], 0xffffffff
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x44a9c5
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x1c], 1
cmp dword [ebp - 0x1c], ebx
jl 0x44a9fa
mov dword [ebp - 0x2c], 1
dec dword [ebp - 0x2c]
dec dword [ebp - 0x1c]
jns 0x44a9eb
cmp dword [ebp - 0x24], ebx
jne 0x44aa0b
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
inc dword [eax]
jmp 0x44a732
mov dword [ebp - 0x28], 0xfffffffa
mov dword [ebp - 0x1c], 6
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x2c], 0xfbe58499
mov dword [ebp - 0x24], 0xfffffffe
mov dword [ebp - 0x20], 0x1791e6e4
mov dword [ebp - 0x30], 0xffffffff
mov dword [ebp - 0x20], ebx
jmp 0x44aa4b
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x38], 0xca29
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x44aa3d
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x34], ebx
jne 0x44aaaa
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x18]
sub edx, eax
neg edx
sbb edx, edx
inc edx
mov ecx, dword [ebp - 0x2c]
add ecx, edx
mov eax, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, eax
setge dl
imul edx, dword [ebp - 0x28]
sub edx, 0x290e79f2
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, eax
setg dl
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x20]
sub eax, 0xb969
jne 0x44aaaa
xor ecx, ecx
inc ecx
jmp 0x44aaac
mov ecx, ebx
mov eax, dword [ebp - 0x34]
add eax, ecx
jne 0x44aab6
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp eax, ecx
setg dl
mov eax, dword [ebp - 0x34]
sub eax, edx
je 0x44ab27
mov dword [ebp - 0x20], 0x300ca3c4
push 5
pop eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x20], ebx
je 0x44ab0d
mov eax, dword [ebp - 0x20]
mov ecx, 0x87697ab8
cmp ecx, eax
sbb eax, eax
add eax, 0xffffc82b
sub eax, dword [ebp - 0x38]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0x20], eax
jmp 0x44ab5a
mov dword [ebp - 0x2c], 0x925f8a41
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x11], bl
cmp byte [ebp - 0x11], 0
je 0x44ab5a
push ebx
push 0x218c
push ebx
push 0x94
push 0x2167
push ebx
push 0x313
call dword [0xac12fc]
mov dword [ebp - 0x1c], 0x1a
jmp 0x44ab90
mov dword [ebp - 0x2c], 0x3b6ac891
mov dword [ebp - 0x28], 8
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x1c]
je 0x44ab83
cmp dword [ebp - 0x18], ebx
je 0x44ab83
xor eax, eax
inc eax
jmp 0x44ab85
mov eax, ebx
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x30], ebx
jne 0x44ab96
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff1
jne 0x44ab63
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret