Function at 0x429060
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ax, word [0x441500]
mov ecx, dword [0x43ccdc]
cwde
xor ecx, eax
xor ecx, 0xfba94a35
mov word [0x441500], cx
add dword [0x43ce74], 0x4541ae5e
mov ecx, dword [ebp + 0x10]
fld dword [0x442ee4]
fsub qword [0x440b20]
fadd dword [0x442438]
fstp dword [0x442438]
test ecx, ecx
jle 0x429347
movzx edx, word [0x4413da]
movsx eax, dx
and dword [0x43c464], eax
dec word [0x4413da]
push ebx
fld dword [0x442004]
push esi
fld dword [0x4433bc]
mov esi, dword [ebp + 8]
fadd qword [0x43f438]
mov eax, dword [esi]
and eax, 0x3f
mov ebx, 0x40
fsubp st(1)
sub ebx, eax
push edi
mov dword [ebp - 4], eax
fstp dword [0x442004]
fld dword [0x4433bc]
fsub qword [0x43afa8]
fstp dword [0x4433bc]
movzx edx, word [0x44187a]
xor edx, 0xa0309a08
mov word [0x44187a], dx
add dword [esi], ecx
xor dword [0x43d8ec], 0x8c4c51e0
movzx edx, word [0x44113c]
sub edx, 0x773fa4fd
mov word [0x44113c], dx
mov edx, 1
cmp dword [esi], ecx
jae 0x429145
add dword [esi + 4], edx
mov edi, dword [0x43c9a4]
add dword [0x43c9a4], edx
xor edi, 0x25c294ad
cmp edi, 0xbb4f7516
jne 0x42917b
fld dword [0x4420b8]
fld qword [0x43f8b0]
fld dword [0x4429cc]
fsubp st(2)
fsubrp st(1)
fstp qword [0x43f8b0]
test eax, eax
je 0x42923e
cmp ecx, ebx
jl 0x42923e
add dword [0x43d0a8], edx
mov ecx, dword [0x43d0a8]
mov edi, dword [ebp + 0xc]
push ebx
lea eax, [eax + esi + 0x28]
or ecx, 0x291c1654
and dword [0x43cbbc], ecx
push edi
push eax
call fcn.00424740
mov cx, word [0x441138]
movsx edx, cx
add esp, 0xc
cmp edx, 0xb212833d
jl 0x4291d3
mov dword [0x43d118], 0x18034c01
jmp 0x4291e5
mov eax, dword [0x43c09c]
sar eax, 1
add eax, 0x8c0178b4
xor dword [0x43d648], eax
lea eax, [esi + 0x28]
push eax
push esi
call fcn.0041f590
add dword [0x43d384], 0x24490c00
mov ecx, dword [0x43d844]
mov edx, dword [0x43d2a8]
sub dword [ebp + 0x10], ebx
or ecx, edx
mov dword [0x43d844], ecx
mov ax, word [0x440e7c]
mov ecx, dword [ebp + 0x10]
cwde
shl eax, 4
add dword [0x43c3cc], eax
mov dword [ebp - 4], 0
mov eax, dword [ebp - 4]
add esp, 8
add edi, ebx
or dword [0x43d8c0], 0xfaa7596f
jmp 0x429241
mov edi, dword [ebp + 0xc]
cmp ecx, 0x40
jl 0x4292f2
mov ebx, ecx
shr ebx, 6
mov edx, ebx
neg edx
shl edx, 6
add ecx, edx
mov dword [ebp + 0x10], ecx
jmp 0x429260
dec dword [0x43d670]
mov ecx, dword [0x43d670]
movzx edx, word [0x44154c]
mov eax, 0xd5cc3e7d
sub eax, ecx
xor edx, eax
push edi
mov word [0x44154c], dx
push esi
call fcn.0041f590
add esp, 8
fld dword [0x441e64]
add edi, 0x40
fadd qword [0x43dfb0]
fstp qword [0x43dfb0]
mov eax, dword [0x43c1ec]
not eax
add eax, 0x66d57e8c
sub ebx, 1
mov dword [0x43cbcc], eax
fld dword [0x442cb4]
fmul qword [0x440bc8]
fadd dword [0x441fc4]
fadd dword [0x4426f0]
fstp dword [0x4426f0]
fld dword [0x441fc4]
fadd qword [0x43afa8]
fstp dword [0x441fc4]
jne 0x429260
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0x10]
mov dx, word [0x441230]
mov ebx, dword [0x43d3e0]
movsx edx, dx
not edx
add edx, 0x14772ffe
imul ebx, edx
mov dword [0x43d3e0], ebx
test ecx, ecx
jle 0x42933a
or dword [0x43c448], 0x970ca386
push ecx
lea eax, [eax + esi + 0x28]
push edi
push eax
call fcn.00424740
add esp, 0xc
add dword [0x43d660], 0xd9ca7bf2
xor dword [0x43cec4], 0x1f042800
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret