Function at 0x4341d0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
fld dword [0x455f64]
sub esp, 0x10
fmul dword [0x45a5a4]
push ebx
push esi
or esi, 0xffffffff
fstp dword [0x455f64]
push edi
fld dword [0x45a5a4]
fadd qword [0x43a0e8]
fstp dword [0x45a5a4]
add dword [0x440170], esi
mov ax, word [0x452d36]
mov ecx, dword [0x440170]
add word [0x452d36], si
cwde
sub ecx, eax
cmp ecx, 0x6100840
je 0x43423b
mov dx, word [0x450978]
movsx eax, dx
add eax, 0x5667470b
xor dword [0x4408b8], eax
jmp 0x43424f
inc word [0x4519a8]
mov ax, word [0x4519a8]
cwde
and dword [0x440414], eax
fld dword [0x455c98]
push 0xf
fld dword [0x459364]
lea ecx, [ebp - 0x10]
fmul dword [0x45659c]
push 0
push ecx
fsubp st(1)
fstp dword [0x455c98]
mov eax, dword [0x44028c]
sar eax, 9
imul eax, eax, 0x62f52229
add dword [0x43fb1c], eax
fld dword [0x45714c]
fld dword [0x4584ac]
fadd dword [0x459a9c]
fsubp st(1)
fstp dword [0x45714c]
xor dword [0x43f028], 0xfdd2dc77
fld dword [0x458614]
fld qword [0x448360]
fld dword [0x458db4]
fmulp st(2)
fsubrp st(1)
fstp dword [0x458384]
call fcn.00417950
mov edx, dword [0x43f940]
mov eax, dword [0x43d00c]
and edx, eax
mov eax, dword [ebp + 0x14]
mov dword [0x43f940], edx
add dword [0x43d00c], esi
movzx edx, word [0x452b0a]
sub edx, 0x560f306b
add esp, 0xc
xor ecx, ecx
mov word [0x452b0a], dx
test eax, eax
je 0x434402
mov edi, 0x8de0e323
mov esi, 0x993bb79b
fld qword [0x446b88]
fsub dword [0x45aeac]
fstp qword [0x446b88]
cmp ecx, 0xf
je 0x4343b6
mov edx, dword [0x43d1a8]
imul edx, edx, 0xbd432f91
cmp edx, 0x722f58fd
jl 0x434346
add dword [0x43c480], edi
mov ebx, dword [ebp + 0x10]
movzx ebx, word [ebx + ecx*2 + 0x300]
mov dl, al
and dl, 1
mov byte [ebp + ebx - 0x10], dl
mov dword [0x43efcc], esi
mov dx, word [0x4525ca]
movsx edx, dx
add edx, 0x49d67fba
and edx, 0x96333791
shr eax, 1
cmp edx, 0x1ae38ab6
jle 0x434392
mov edx, dword [0x43fb14]
add edx, 0x4ac65f91
or dword [0x43c648], edx
mov edx, dword [0x43e9d4]
mov ebx, dword [0x441e74]
inc ecx
lea edx, [ebx + edx + 0x6fe2cd14]
mov dword [0x441e74], edx
test eax, eax
jne 0x434311
jmp 0x434402
mov ax, word [0x4518e6]
mov ecx, dword [0x43f6cc]
cwde
not ecx
and eax, 0xd9c64d80
xor ecx, 0x17cf119b
cmp eax, ecx
jl 0x4343e8
fld dword [0x459410]
fadd dword [0x454a98]
fstp dword [0x459410]
jmp 0x434402
mov dx, word [0x450c9c]
movsx eax, dx
sub eax, 0x601c223
and eax, 0x2fc5f092
add dword [0x43df24], eax
movzx eax, word [0x453c14]
sub eax, 0x2aa618be
mov word [0x453c14], ax
add dword [0x43de8c], 0xffa5c3c0
mov eax, dword [0x43b908]
movzx ecx, word [0x451d1c]
imul eax, eax, 0x3eb6ae95
add eax, 0x3352723
and ecx, eax
mov word [0x451d1c], cx
xor edi, edi
xor esi, esi
xor ecx, ecx
mov dword [0x43f44c], 0x30a869b6
mov ebx, 0xfaf4f11d
xor dword [0x43e01c], ebx
dec dword [0x43dcc8]
mov eax, dword [0x43ea38]
mov edx, dword [0x43ec6c]
imul eax, edx
mov edx, dword [0x43dcc8]
and edx, eax
movzx eax, word [0x452fe6]
sub eax, edx
mov word [0x452fe6], ax
mov eax, 1
add dword [0x43ea38], eax
movzx edx, word [0x4524dc]
xor edx, 0xc6354e6a
mov word [0x4524dc], dx
movsx edx, byte [ebp + ecx - 0x10]
add dword [0x4408ec], eax
mov eax, dword [0x4408ec]
add eax, 0x85cb8091
add edi, edi
or edi, edx
mov edx, dword [0x44124c]
imul edx, eax
movsx eax, byte [ebp + ecx - 9]
mov dword [0x44124c], edx
add esi, esi
fld dword [0x455eac]
or esi, eax
fsub dword [0x457df4]
inc ecx
fsub qword [0x445518]
fmul qword [0x442c78]
fstp qword [0x442c78]
mov eax, dword [0x441f00]
add eax, dword [0x43cf54]
mov edx, dword [0x43f24c]
and eax, 0xa4bbcba3
imul edx, eax
mov dword [0x43f24c], edx
dec dword [0x441f00]
cmp ecx, 7
jne 0x434453
mov ecx, dword [0x43c330]
mov eax, dword [0x43bf10]
sub eax, ecx
xor dword [0x4409d0], eax
mov eax, dword [0x43bef0]
mov ecx, dword [0x43fd4c]
mov edx, dword [0x43eb14]
inc dword [0x43fd4c]
shl eax, 0xa
or ecx, eax
add esi, esi
cmp ecx, edx
jl 0x434568
movzx eax, word [0x4513e6]
sub eax, 0x1490b617
mov word [0x4513e6], ax
movsx ecx, byte [ebp - 2]
mov eax, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov edx, 0xffff9750
mov word [0x453716], dx
or esi, ecx
fld dword [0x45a144]
fmul qword [0x44d9d0]
fstp dword [0x45568c]
movzx ecx, word [eax + edi*2]
mov edi, dword [ebp + 8]
add ecx, ebx
push ecx
push edi
call fcn.0040fdd0
mov dx, word [0x45293c]
mov ecx, dword [0x43e750]
movsx eax, dx
mov edx, dword [ebp + 0x10]
and ecx, eax
mov word [0x45293c], cx
movzx eax, word [edx + esi*2 + 0x100]
add eax, ebx
push eax
push edi
call fcn.00423fc0
push 5
fld dword [0x455a68]
push 0x1de6
fsub dword [0x458600]
fadd dword [0x458a38]
fstp dword [0x458a38]
call fcn.00419f80
mov esi, eax
mov eax, dword [0x440f50]
mov ecx, dword [0x43bf30]
xor eax, 0x47d64f83
imul ecx, eax
push esi
mov dword [0x43bf30], ecx
push edi
call fcn.00423fc0
mov edx, dword [0x440120]
imul edx, edx, 0x77ffacff
push esi
mov dword [0x440120], edx
push 5
call fcn.0040d550
mov eax, dword [0x43ca58]
mov ecx, 0x2569f2bb
sub ecx, eax
mov eax, dword [0x43cb0c]
add esp, 0x28
shl eax, 4
pop edi
or eax, ecx
or dword [0x43fae8], eax
dec dword [0x43ca58]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret