Function at 0x443a86
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x11074
call fcn.0044cc70
push esi
push edi
push dword [ebp + 8]
or eax, 0xffffffff
call fcn.004174a2
push dword [ebp + 0xc]
mov esi, eax
or eax, 0xffffffff
call fcn.004174a2
mov edi, eax
lea eax, [ebp - 0x5a0]
push esi
push eax
call fcn.0044a790
lea eax, [ebp - 0x238]
push edi
push eax
call fcn.0044a790
push esi
call fcn.00449c78
push edi
call fcn.00449c78
add esp, 0x20
lea eax, [ebp - 0x498]
call fcn.00442736
and dword [ebp - 0x6b0], 0
push 0
push dword [ebx + 4]
xor edi, edi
push dword [ebx]
inc edi
mov dword [ebp - 0x6b4], edi
mov dword [ebp - 0x10], edi
call fcn.0044b24b
add esp, 0xc
lea eax, [ebp - 0x6a8]
push eax
lea eax, [ebp - 0x5a0]
push eax
mov esi, ebx
call fcn.00443eef
test eax, eax
je 0x443b25
push 6
jmp 0x443d36
push dword [ebx]
lea eax, [ebp + 0xb]
push edi
push edi
push eax
call fcn.0044b58f
push dword [ebx]
lea eax, [ebp - 8]
push edi
push 4
push eax
call fcn.0044b58f
push dword [ebx]
mov esi, dword [ebp - 8]
push edi
lea eax, [ebp - 8]
push 4
xor esi, 0x45aa
push eax
mov dword [ebp - 0x14], esi
call fcn.0044b58f
push dword [ebx]
lea eax, [ebp - 8]
push edi
push 4
push eax
call fcn.0044b58f
mov eax, dword [ebp - 8]
add esp, 0x40
push dword [ebx]
xor eax, 0xc3d2
push edi
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x1c]
push 4
push eax
call fcn.0044b58f
push dword [ebx]
lea eax, [ebp - 0x20]
push edi
push 4
push eax
call fcn.0044b58f
push dword [ebx]
lea eax, [ebp - 0x24]
push edi
push 4
push eax
call fcn.0044b58f
push dword [ebx]
lea eax, [ebp - 0x28]
push edi
push 4
push eax
call fcn.0044b58f
add esp, 0x40
lea eax, [ebp - 0x130]
push eax
call fcn.00443a50
lea eax, [ebp - 0x130]
push 0x462720
push eax
call fcn.0044c899
test eax, eax
pop ecx
pop ecx
mov dword [ebp - 0xc], eax
jne 0x443bde
push 9
jmp 0x443d36
mov ecx, dword [ebx + 8]
add ecx, 0x22af
lea eax, [ebp - 0x1074]
call fcn.004436bd
and dword [ebp - 4], 0
test esi, esi
jle 0x443c8d
jmp 0x443c03
xor edi, edi
inc edi
mov eax, dword [ebp - 4]
add eax, 0x10000
cmp eax, esi
jle 0x443c19
mov eax, esi
sub eax, dword [ebp - 4]
mov dword [ebp + 0xc], eax
jmp 0x443c23
mov dword [ebp + 0xc], 0x10000
mov eax, dword [ebp + 0xc]
push dword [ebx]
add dword [ebp - 4], eax
push eax
lea eax, [ebp - 0x11074]
push edi
push eax
call fcn.0044b58f
xor edi, edi
add esp, 0x10
cmp dword [ebp + 0xc], edi
jle 0x443c5b
lea esi, [ebp - 0x1074]
call fcn.004437d5
xor byte [ebp + edi - 0x11074], al
inc edi
cmp edi, dword [ebp + 0xc]
jl 0x443c40
mov esi, dword [ebp - 0x14]
push dword [ebp + 0xc]
lea eax, [ebp - 0x11074]
push eax
lea edi, [ebp - 0x10]
call fcn.004426da
push dword [ebp - 0xc]
lea eax, [ebp - 0x11074]
push dword [ebp + 0xc]
push 1
push eax
call fcn.0044b3bd
add esp, 0x10
cmp dword [ebp - 4], esi
jl 0x443c00
push dword [ebp - 0xc]
call fcn.0044b455
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x10]
pop ecx
je 0x443ca2
push 0xa
jmp 0x443cfb
cmp byte [ebp + 0xb], 1
jne 0x443d0d
lea eax, [ebp - 0x498]
call fcn.00442736
and dword [ebp - 0x484], 0
and dword [ebp - 0x480], 0
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x474]
push eax
call fcn.0044a790
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x36f]
push eax
call fcn.0044a790
add esp, 0x10
lea eax, [ebp - 0x498]
call fcn.00442762
test eax, eax
je 0x443d39
push 7
pop esi
lea eax, [ebp - 0x130]
push eax
call dword [0x459240]
mov eax, esi
jmp 0x443d5c
push 0
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x130]
push eax
call dword [0x459244]
test eax, eax
jne 0x443d39
lea eax, [ebp - 0x130]
push eax
call dword [0x459240]
push 7
pop eax
jmp 0x443d5c
lea eax, [ebp - 0x130]
push eax
call dword [0x459240]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x238]
push eax
call fcn.0044401f
xor eax, eax
pop edi
pop esi
leave
ret 8