Function at 0x45f7bb
Capabilities:
Encode data using xor

Disassembly:
push esi
test byte [ecx], al
lea eax, [esi + 8]
mov dword [esi], 0xf908
push eax
call dword [0x1ae968c]
mov ecx, esi
pop esi
jmp 0x57bf2c
fdivr qword [0x634a30]
jmp 0x5738c2
fst qword [0x634a30]
push ecx
mov ecx, esp
add ecx, 4
sub ecx, 4
xchg dword [esp], ecx
pop esp
mov dword [esp], eax
mov dword [esp], esi
mov dword [esp], edx
mov dword [esp], ecx
push eax
mov eax, 0x7bfe6153
sub ecx, eax
mov eax, dword [esp]
add esp, 4
push eax
mov eax, 0x7fffead9
sub ecx, eax
pop eax
add ecx, eax
add ecx, 0x7fffead9
add ecx, 0x7bfe6153
push dword [esp]
pop ecx
push edi
push esp
pop edi
add edi, 4
push eax
mov eax, 0x53ffd1e7
sub eax, 0x53ffd1e3
add edi, eax
js 0x57bf61
mov edi, 0x2d5eb350
mov dl, 0x50
movsb byte es:[edi], byte [esi]
push ecx
or eax, 0x9f513fd3
sub al, 9
mov ebp, 0x35fb079a
or dword [ebp + 0x35fb079a], edi
cld
sbb dl, byte [0x40aae3a]
out 0x4e, eax
js 0x57bf5d
sub dword [ebp + ebp*4 + 0x55ca7ecd], esi
loop 0x57bf9a
xor al, 0x69
add dl, byte [esi + 0x37057ed1]
jle 0x57bf64
aaa
js 0x57bfae
dec esp
cmpsd dword [esi], dword es:[edi]
xchg esp, eax
and dword [esi], 0x10c38e1a
xor byte [edx + 0x7ff41b78], ah
sub byte [edi + 0x31a2dffc], 0x65
popfd
dec ebx
jb 0x57bf61
mov byte [edi + ebx*4 + 0x73], bl
mov eax, 0xd325d99b
lds esi, [eax + 0x97280f0]
shr ah, cl
fidivr word [ebx + 0x31]
jne 0x57bfd3
stosb byte es:[edi], al
loopne 0x57bf3d
add dh, byte [ebp + 0x62]
jno 0x57bf9a
push esi
cmp esi, ecx
mov byte [esi - 0xe882a0a], bh
xor eax, esp
sub esp, 4
mov dword [esp], ecx
mov dword [esp], 0x3c818644
mov dword [esp], esi
add al, 0x24
inc esp
xchg byte [ecx + 0x2434893c], al
mov dword [esp], ebx
push edx
mov dword [esp], esi
mov dword [esp], ecx
mov ebx, dword [esp]
push ebp
mov ebp, esp
add ebp, 4
add ebp, 4
xchg dword [esp], ebp
pop esp
push dword [esp]
pop ebx
push edi
mov edi, esp
push ebp
mov ebp, 0x7fff7095
push ecx
mov ecx, 0x7bff3631
sub ebp, ecx
pop ecx
sub ebp, 0x6bbe165f
xor ebp, 0x98422401
add edi, ebp
pop ebp
add edi, 4
xchg dword [esp], edi
pop esp
sar edx, 2
push 0x513bf192
mov dword [esp], edx
push ebp
mov ebp, 0x180bd3e6
mov dword [esp + 4], ebp
pop ebp
mov dword [esp], ebx
push ecx
push dword [esp]
pop ebx
push eax
push esp
pop eax
add eax, 4
add eax, 4
xchg dword [esp], eax
pop esp
mov ebx, dword [esp]
push ebx
push esp
pop ebx
add ebx, 4
add ebx, 4
xor ebx, dword [esp]
xor dword [esp], ebx
xor ebx, dword [esp]
mov esp, dword [esp]
jmp 0x581b36
push esi
mov esi, esp
add esi, 4
sub esi, 4
xchg dword [esp], esi
mov esp, dword [esp]
mov dword [esp], ebx
mov dword [esp], ebp
mov dword [esp], ebx
push ecx
mov ebx, dword [esp]
push eax
push esp
pop eax
add eax, 4
add eax, 4
push eax
push dword [esp + 4]
pop eax
pop dword [esp]
pop esp
mov ebx, dword [esp]
push 0x59eec8bc
mov dword [esp], ecx
mov ecx, esp
add ecx, 4
add ecx, 4
push ecx
push dword [esp + 4]
pop ecx
pop dword [esp]
mov esp, dword [esp]
fild dword [ebp - 0x18]
push edx
push esp
pop edx
push eax
mov eax, 0x5daf7403
add eax, 0xa2508c01
add edx, eax
pop eax
push ebx
mov ebx, 0x26fbb390
add ebx, 0xd9044c74
sub edx, ebx
pop ebx
xchg dword [esp], edx
pop esp
mov dword [esp], edx
push ebx
mov dword [esp], ecx
push dword [esp]
pop edx
push eax
mov eax, esp
add eax, 4
add eax, 4
xchg dword [esp], eax
pop esp
push dword [esp]
pop edx
push edx
push esp
pop edx
push ecx
mov ecx, 0x7d5b7989
add ecx, 0x82a4867b
add edx, ecx
pop ecx
add edx, 4
xchg dword [esp], edx
pop esp
jmp 0x543684
push 0x38219171
mov dword [esp], ecx
push eax
mov eax, 0x3d072e3b
mov dword [esp + 4], eax
pop eax
mov dword [esp], edx
sub esp, 4
mov dword [esp], ecx
mov edx, dword [esp]
push ebx
mov ebx, esp
add ebx, 4
push ebp
mov ebp, 4
add ebx, ebp
pop ebp
xchg dword [esp], ebx
pop esp
mov edx, dword [esp]
push edx
mov edx, esp
add edx, 4
push 0x2d53809b
mov dword [esp], edi
mov edi, 4
add edx, edi
mov edi, dword [esp]
add esp, 4
xchg dword [esp], edx
pop esp
push ecx
mov dword [esp], ebp
push edx
mov dword [esp], 3
mov ebp, dword [esp]
add esp, 4
or edx, ebp
pop ebp
push esi
mov esi, esp
add esi, 4
push edx
mov edx, 4
sub esi, edx
mov edx, dword [esp]
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
xchg dword [esp], esi
pop esp
mov dword [esp], ecx
push edx
mov edx, 0x7f7df89a
sub ecx, edx
mov edx, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
pop esp
add ecx, eax
push edx
mov edx, 0x6d7d8c26
shl edx, 6
not edx
sub edx, 0x7bb3718
dec edx
sub edx, 0x1963c6cc
add ecx, edx
pop edx
push dword [esp]
pop ecx
push edi
mov edi, esp
add edi, 4
add edi, 4
xor edi, dword [esp]
xor dword [esp], edi
xor edi, dword [esp]
mov esp, dword [esp]
jmp 0x598c2d
push edx
mov edx, esp
add edx, 4
sub edx, 4
xchg dword [esp], edx
pop esp
mov dword [esp], ecx
mov dword [esp], ebp
mov dword [esp], edx
pop dword [ebp - 0x18]
jmp 0x57c050