Function at 0x4060b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x2c
fld dword [0x4641d0]
mov ebx, dword [esp + 0x40]
fld qword [0x4785a0]
faddp st(1)
fstp qword [0x4785a0]
mov eax, dword [0x455a3c]
cmp eax, 0xcd1fae25
jl 0x406420
fld qword [0x48b220]
fld dword [0x45e470]
fmulp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fstp dword [0x45e470]
fld qword [0x475180]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fstp dword [0x45f348]
movzx eax, word [0x43fd14]
mov eax, dword [esp + 0x44]
add eax, 4
mov dword [esp], eax
call sub.msvcrt.dll_malloc
fld dword [0x45ebdc]
mov esi, eax
mov dword [esp + 0x18], eax
mov edi, dword [0x439718]
mov ecx, ebx
fld qword [0x474510]
fsubrp st(1)
fstp qword [0x474510]
mov eax, dword [0x454bec]
and eax, 0xf116dfcf
mov dword [0x454bec], eax
mov eax, esi
nop
lea esi, [esi]
mov ebx, dword [0x446c98]
mov edx, dword [0x456918]
sub edx, ebx
mov dword [0x456918], edx
mov esi, dword [0x449024]
mov ebx, dword [0x457f64]
movzx edx, byte [ecx + 0x432100]
imul ebx, esi
lea esi, [ecx + 1]
mov byte [eax], dl
mov dword [0x457f64], ebx
xor dl, byte [edi + ecx]
mov byte [eax], dl
mov edx, dword [0x455744]
mov dword [0x457c20], edx
movzx edx, word [0x43f764]
and dx, 0x14bd
mov word [0x43f764], dx
mov ebx, dword [0x456854]
mov edx, dword [0x4467a8]
cmp ebx, edx
jle 0x4061de
mov ebx, dword [0x447de8]
mov edx, dword [0x44491c]
imul edx, ebx
mov dword [0x44491c], edx
movzx ebx, word [0x4408de]
movzx edx, byte [esi + 0x432100]
add ecx, 2
add bx, 0x304e
mov byte [eax + 1], dl
mov word [0x4408de], bx
xor dl, byte [edi + esi]
mov byte [eax + 1], dl
mov edx, dword [0x44bc94]
movzx ebp, word [eax]
sub edx, 0x7a08eed4
mov dword [0x44bc94], edx
mov edx, dword [0x452e84]
and edx, 0x9902b371
mov dword [0x452e84], edx
mov edx, dword [0x4499a0]
or edx, 0xde875a9e
mov dword [0x4499a0], edx
mov edx, dword [0x444e8c]
cmp edx, 0xa532e09
jg 0x406267
fld qword [0x47fb90]
fld dword [0x463a3c]
faddp st(1)
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fstp dword [0x463a3c]
movzx edx, word [0x440362]
lea esi, [ecx + 0x432100]
lea ebx, [ebp + 3]
mov dword [esp + 0x14], ecx
imul dx, dx, 0x6104
mov word [0x440362], dx
mov edx, dword [0x452748]
xor edx, 0x2fb1e15a
mov dword [0x452748], edx
xor edx, edx
nop
lea esi, [esi]
movzx ecx, byte [esi + edx]
mov byte [eax + edx], cl
add edx, 1
cmp edx, ebx
jne 0x4062a0
movsx edx, word [0x44088a]
mov ebx, dword [0x44be5c]
mov ecx, dword [esp + 0x14]
or edx, ebx
lea ebx, [eax + ebp + 3]
add ecx, edi
mov dword [0x44be5c], edx
mov edx, dword [0x454b80]
xor edx, 0x476bfa14
mov dword [0x454b80], edx
mov edx, dword [0x447f08]
xor edx, 0x32085342
mov dword [0x447f08], edx
movzx edx, word [0x43c024]
add dx, 0x7c15
cmp eax, ebx
mov word [0x43c024], dx
je 0x406344
nop
lea esi, [esi]
mov edx, dword [0x4471dc]
add ecx, 1
add edx, 0x4158cab8
mov dword [0x4471dc], edx
movzx edx, byte [ecx - 1]
xor byte [eax], dl
mov edx, dword [0x443f10]
add eax, 1
or edx, 0x693a153d
cmp ebx, eax
mov dword [0x443f10], edx
jne 0x406310
mov eax, dword [0x44accc]
or eax, 0x6fab71ca
cmp dword [esp + 0x44], ebp
mov dword [0x44accc], eax
je 0x406405
mov eax, dword [0x44f374]
cmp eax, 0x8d0f0031
jge 0x406373
mov dword [0x451830], 0x40f94acc
mov eax, dword [0x44a0f8]
mov byte [ebx], 0
mov ecx, dword [ebx - 3]
imul eax, eax, 0x65682df1
mov dword [0x44a0f8], eax
mov edx, dword [0x444f70]
lea eax, [ebx - 3]
xor edx, 0x571773a6
mov dword [0x444f70], edx
mov edx, dword [0x44737c]
add edx, 0x3df6e122
mov dword [0x44737c], edx
mov edx, dword [0x4562f0]
cmp edx, 0xc4db2fb8
jl 0x4063f0
movzx edx, word [0x43e896]
xor dx, 0x4b68
mov word [0x43e896], dx
mov edx, dword [0x452098]
sub dword [esp + 0x44], ebp
sub edx, 0x3d44ee1d
mov dword [0x452098], edx
jmp 0x406160
movzx edx, word [0x43c312]
sub dx, 0x2b0b
mov word [0x43c312], dx
jmp 0x4063d1
mov eax, dword [0x44fdd8]
and eax, 0x89bcee88
mov dword [0x44fdd8], eax
mov eax, dword [esp + 0x18]
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [0x4555dc]
mov eax, dword [0x452744]
imul eax, edx
mov dword [0x452744], eax
jmp 0x4060fb