Function at 0x110022f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x91c
mov ecx, dword [0x1104a704]
mov eax, dword [0x11049318]
mov edx, 0x240
mov dword [ebp - 0x18], eax
test ecx, ecx
mov dword [ebp - 0x1c], edx
jne 0x1100231a
mov edx, 0x480
jmp 0x11002324
cmp ecx, 2
jne 0x11002327
mov edx, 0x120
mov dword [ebp - 0x1c], edx
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
cmp edi, 2
jne 0x11002337
add edx, edx
mov dword [ebp - 0x1c], edx
mov esi, dword [0x11049300]
mov ebx, dword [ebp + 8]
add eax, esi
mov edx, 0x240
mov dword [0x11049318], eax
mov eax, dword [0x11049304]
sar edx, cl
push eax
push edi
push 0x10
push edx
push ebx
call dword [0x11028370]
imul eax, edi
mov ecx, dword [0x11026030]
add esp, 0x14
shl eax, 1
cmp ecx, 0x10
jne 0x1100237e
push eax
mov eax, dword [0x1102837c]
push ebx
call dword [eax + 0x2c]
jmp 0x110023b5
cdq
sub eax, edx
xor ecx, ecx
mov esi, eax
sar esi, 1
test esi, esi
jle 0x110023a4
mov edx, ebx
mov ax, word [edx]
add edx, 2
sar eax, 8
xor al, 0x80
mov byte [ebp + ecx - 0x91c], al
inc ecx
cmp ecx, esi
jl 0x1100238d
mov edx, dword [0x1102837c]
lea ecx, [ebp - 0x91c]
push esi
push ecx
call dword [edx + 0x2c]
add esp, 8
call dword [0x11028354]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 8]
lea ecx, [ebp - 4]
push eax
push ecx
call dword [0x11028360]
mov esi, eax
mov eax, dword [0x1104a548]
add esp, 8
cmp eax, 1
mov eax, dword [ebp - 0x14]
je 0x11002416
test eax, eax
je 0x110023f6
mov edx, dword [ebp - 0x18]
push edx
push 0x10
push edi
push ebx
call dword [0x11028350]
add esp, 0x10
test esi, esi
je 0x11002b32
mov eax, dword [ebp - 0x18]
push eax
push 0x10
push edi
push ebx
call dword [0x1102835c]
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp + 0xc]
test eax, eax
jne 0x11002427
test esi, esi
je 0x11002b32
jmp 0x1100242f
test esi, esi
je 0x110027b5
mov eax, dword [ebp - 4]
xor edx, edx
cmp edi, 1
jne 0x110024b5
test eax, eax
jle 0x110024b5
mov ecx, ebx
fld dword [ecx]
fmul dword [0x11020228]
add ecx, 4
fcom qword [0x11020220]
fst dword [ebp - 0xc]
fnstsw ax
test ah, 1
je 0x1100245f
fchs
fst dword [ebp - 0xc]
fcomp qword [0x11020218]
fnstsw ax
test ah, 0x41
jne 0x11002473
mov dword [ebp - 0xc], 0x437f0000
fld dword [ebp - 0xc]
fistp dword [ebp - 0x10]
mov al, byte [ebp - 0x10]
mov byte [ebp + edx - 0x91c], al
inc edx
cmp edx, 0x240
jl 0x1100243f
cmp dword [ebp - 4], 2
jne 0x1100259b
lea edi, [ebp + edx - 0x91c]
mov ecx, 0x90
add edx, 0x240
lea esi, [edi - 0x240]
rep movsd dword es:[edi], dword [esi]
jmp 0x1100259b
cmp eax, 2
jne 0x11002523
xor edi, edi
mov eax, dword [0x1104a884]
mov esi, 0x240
xor eax, edi
lea ecx, [eax + eax*8]
mov eax, dword [ebp + 0xc]
shl ecx, 8
add ecx, eax
fld dword [ecx]
fmul dword [0x11020228]
add ecx, 4
fcom qword [0x11020220]
fst dword [ebp - 0xc]
fnstsw ax
test ah, 1
je 0x110024f3
fchs
fst dword [ebp - 0xc]
fcomp qword [0x11020218]
fnstsw ax
test ah, 0x41
jne 0x11002507
mov dword [ebp - 0xc], 0x437f0000
fld dword [ebp - 0xc]
fistp dword [ebp - 0x10]
mov al, byte [ebp - 0x10]
mov byte [ebp + edx - 0x91c], al
inc edx
dec esi
jne 0x110024d3
inc edi
cmp edi, 2
jl 0x110024bc
jmp 0x11002591
cmp eax, 1
jne 0x11002591
mov ecx, ebx
fld dword [ecx]
fld dword [ecx + 0x900]
fld st(1)
fcomp qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002547
fxch st(1)
fchs
fxch st(1)
fcom qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002556
fchs
faddp st(1)
add ecx, 8
fmul dword [0x11020214]
fst dword [ebp - 0xc]
fcomp qword [0x11020218]
fnstsw ax
test ah, 0x41
jne 0x11002578
mov dword [ebp - 0xc], 0x437f0000
fld dword [ebp - 0xc]
fistp dword [ebp - 0x10]
mov al, byte [ebp - 0x10]
mov byte [ebp + edx - 0x91c], al
inc edx
cmp edx, 0x240
jl 0x1100252a
cmp dword [ebp + 0x10], 1
jne 0x11002651
mov edi, dword [ebp - 8]
test edi, edi
jle 0x11002654
mov eax, dword [0x1104a704]
cmp eax, 1
jne 0x110025d8
mov ecx, dword [ebp + 8]
mov esi, 0x120
mov ax, word [ecx]
add edx, 2
sar ax, 8
mov byte [ebp + edx - 0x91d], al
mov byte [ebp + edx - 0x91e], al
add ecx, 2
dec esi
jne 0x110025b8
jmp 0x1100262f
cmp eax, 2
jne 0x11002613
mov ecx, dword [ebp + 8]
mov esi, 0x90
mov ax, word [ecx]
add edx, 4
sar ax, 8
mov byte [ebp + edx - 0x91d], al
mov byte [ebp + edx - 0x91e], al
mov byte [ebp + edx - 0x91f], al
mov byte [ebp + edx - 0x920], al
add ecx, 2
dec esi
jne 0x110025e5
jmp 0x1100262f
mov eax, dword [ebp + 8]
mov esi, 0x240
mov cx, word [eax]
add eax, 2
sar ecx, 8
mov byte [ebp + edx - 0x91c], cl
inc edx
dec esi
jne 0x1100261b
cmp edi, 2
jne 0x11002798
lea edi, [ebp + edx - 0x91c]
mov ecx, 0x90
lea esi, [edi - 0x240]
rep movsd dword es:[edi], dword [esi]
jmp 0x11002798
mov edi, dword [ebp - 8]
cmp edi, 2
jne 0x110026fa
mov edi, dword [ebp + 8]
mov ebx, 2
mov eax, dword [0x1104a704]
cmp eax, 1
jne 0x11002696
mov ecx, edi
mov esi, 0x120
mov ax, word [ecx]
add edx, 2
sar ax, 8
mov byte [ebp + edx - 0x91d], al
mov byte [ebp + edx - 0x91e], al
add ecx, 4
dec esi
jne 0x11002676
jmp 0x110026eb
cmp eax, 2
jne 0x110026d0
mov ecx, edi
mov esi, 0x90
mov ax, word [ecx]
add edx, 4
sar ax, 8
mov byte [ebp + edx - 0x91d], al
mov byte [ebp + edx - 0x91e], al
mov byte [ebp + edx - 0x91f], al
mov byte [ebp + edx - 0x920], al
add ecx, 4
dec esi
jne 0x110026a2
jmp 0x110026eb
mov eax, edi
mov esi, 0x240
mov cx, word [eax]
add eax, 4
sar ecx, 8
mov byte [ebp + edx - 0x91c], cl
inc edx
dec esi
jne 0x110026d7
add edi, 2
dec ebx
jne 0x11002665
jmp 0x11002798
cmp edi, 1
jne 0x11002798
mov eax, dword [0x1104a704]
test eax, eax
jne 0x11002732
mov eax, dword [ebp + 8]
lea ecx, [ebp + edx - 0x91c]
mov esi, 0x240
movsx edx, word [eax + 2]
movsx edi, word [eax]
add edx, edi
add eax, 4
sar edx, 9
mov byte [ecx], dl
inc ecx
dec esi
jne 0x1100271b
jmp 0x11002798
cmp eax, 1
jne 0x11002763
lea ecx, [ebp + edx - 0x91c]
mov edx, dword [ebp + 8]
mov esi, 0x120
movsx eax, word [edx + 2]
movsx edi, word [edx]
add eax, edi
add ecx, 2
sar eax, 9
mov byte [ecx - 1], al
mov byte [ecx - 2], al
add edx, 4
dec esi
jne 0x11002746
jmp 0x11002798
cmp eax, 2
jne 0x11002798
lea ecx, [ebp + edx - 0x91a]
mov edx, dword [ebp + 8]
mov esi, 0x90
movsx eax, word [edx + 2]
movsx edi, word [edx]
add eax, edi
add ecx, 4
sar eax, 9
mov byte [ecx - 3], al
mov byte [ecx - 4], al
mov byte [ecx - 5], al
mov byte [ecx - 6], al
add edx, 4
dec esi
jne 0x11002777
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x91c]
push eax
push ecx
call dword [0x11028364]
mov edi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x14]
add esp, 8
cmp eax, 4
jne 0x11002976
fld dword [0x11020210]
fld dword [0x1102020c]
fdiv dword [0x11049310]
mov dword [ebp + 0xc], 0
mov dword [ebp + 8], 0
mov ecx, ebx
mov edx, 5
fstp dword [ebp + 0x10]
fld dword [ecx]
fcom qword [0x11020220]
fnstsw ax
test ah, 1
je 0x110027f9
fchs
fcom dword [ebp + 8]
fnstsw ax
test ah, 0x41
jne 0x11002806
fst dword [ebp + 8]
add ecx, 4
dec edx
faddp st(1)
jne 0x110027e8
fld dword [ebp + 8]
fmul dword [0x11020208]
cmp edi, 2
mov dword [ebp + 8], 0
faddp st(1)
jne 0x11002866
fld dword [ebp + 0xc]
lea ecx, [ebx + 0x900]
mov edx, 5
fld dword [ecx]
fcom qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002844
fchs
fcom dword [ebp + 8]
fnstsw ax
test ah, 0x41
jne 0x11002851
fst dword [ebp + 8]
add ecx, 4
dec edx
faddp st(1)
jne 0x11002833
fld dword [ebp + 8]
fmul dword [0x11020208]
faddp st(1)
jmp 0x11002868
fld st(0)
fxch st(1)
fmul dword [0x11020204]
fstp dword [ebp + 8]
fmul dword [0x11020204]
fld dword [ebp + 8]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x1100288a
fld dword [ebp + 8]
jmp 0x1100288c
fld st(0)
fld dword [0x11049310]
fcomp st(1)
fnstsw ax
test ah, 0x41
fstp st(0)
jne 0x110028a5
fld dword [0x11049310]
jmp 0x110028b8
fld dword [ebp + 8]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x110028b6
fld dword [ebp + 8]
jmp 0x110028b8
fld st(0)
fsub dword [0x11020200]
fst dword [0x11049310]
fcomp dword [0x110201fc]
fnstsw ax
test ah, 1
je 0x110028db
mov dword [0x11049310], 0x41800000
fld dword [ebp + 0x10]
fmul dword [ebp + 8]
fstp dword [ebp + 8]
fld dword [ebp + 0x10]
fmul st(1)
fstp dword [ebp + 0xc]
fstp st(0)
fld dword [ebp + 8]
fcomp dword [0x11020210]
fnstsw ax
test ah, 1
je 0x11002907
mov dword [ebp + 8], 0
jmp 0x1100291e
fld dword [ebp + 8]
fcomp dword [0x110201f8]
fnstsw ax
test ah, 0x41
jne 0x1100291e
mov dword [ebp + 8], 0x43000000
fld dword [ebp + 0xc]
fcomp dword [0x11020210]
fnstsw ax
test ah, 1
je 0x11002937
mov dword [ebp + 0xc], 0
jmp 0x1100294e
fld dword [ebp + 0xc]
fcomp dword [0x110201f8]
fnstsw ax
test ah, 0x41
jne 0x1100294e
mov dword [ebp + 0xc], 0x43000000
fld dword [ebp + 8]
fistp dword [ebp + 0x10]
mov dl, byte [ebp + 0x10]
mov byte [0x1102a040], dl
fld dword [ebp + 0xc]
fistp dword [ebp + 8]
mov al, byte [ebp + 8]
mov ecx, dword [ebp - 0x18]
push 4
mov byte [0x1102a041], al
push ecx
jmp 0x11002b24
cmp eax, 2
jne 0x11002a08
fild dword [ebp - 0x1c]
mov eax, dword [ebp + 8]
mov dword [ebp + 0xc], 0
xor edx, edx
mov esi, 0x1102a040
fmul qword [0x110201f0]
mov edi, 0x4b
fstp dword [ebp + 0x10]
fld dword [ebp + 0x10]
fadd dword [ebp + 0xc]
mov dword [ebp + 8], 0
fst dword [ebp + 0xc]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
fistp dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
cmp edx, ecx
jge 0x110029d9
fld dword [ebp + 8]
sub ecx, edx
add edx, ecx
movsx ebx, word [eax]
add eax, 2
mov dword [ebp + 8], ebx
fiadd dword [ebp + 8]
dec ecx
jne 0x110029c8
jmp 0x110029dc
fld dword [ebp + 8]
fld dword [ebp + 0x10]
fmul qword [0x110201e8]
fdivr qword [0x110201e0]
fxch st(1)
fmulp st(1)
fstp dword [ebp + 8]
fld dword [ebp + 8]
fistp dword [ebp - 0xc]
mov cl, byte [ebp - 0xc]
mov byte [esi], cl
inc esi
dec edi
jne 0x110029a1
push 2
jmp 0x11002b20
cmp eax, 1
jne 0x11002b32
mov dword [ebp - 0x14], 0
mov ebx, 0x11026090
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebx - 4]
fld dword [0x11020210]
mov esi, dword [ebx]
cmp eax, 2
jne 0x11002a7e
cmp ecx, esi
jge 0x11002aa5
mov eax, dword [ebp + 0xc]
mov edx, esi
sub edx, ecx
lea edi, [eax + ecx*4]
fld dword [edi]
fld dword [edi + 0x900]
fld st(1)
fcomp qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002a5b
fxch st(1)
fchs
fxch st(1)
fcom qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002a6a
fchs
fadd st(1)
add edi, 4
dec edx
fmul dword [0x11020200]
faddp st(2)
fstp st(0)
jne 0x11002a3e
jmp 0x11002aa5
cmp ecx, esi
jge 0x11002aa5
mov edx, dword [ebp + 0xc]
lea edi, [edx + ecx*4]
mov edx, esi
sub edx, ecx
fld dword [edi]
fcom qword [0x11020220]
fnstsw ax
test ah, 1
je 0x11002a9d
fchs
add edi, 4
dec edx
faddp st(1)
jne 0x11002a8c
fild dword [ebp - 0x14]
sub esi, ecx
mov dword [ebp + 8], esi
fmul dword [0x110201dc]
fidiv dword [ebp + 8]
fadd dword [0x110201d8]
fmul st(1)
fmul dword [0x110201d4]
fstp dword [ebp + 8]
fstp st(0)
fld dword [ebp + 8]
fcomp dword [0x11020210]
fnstsw ax
test ah, 1
je 0x11002ae2
mov dword [ebp + 8], 0
jmp 0x11002af9
fld dword [ebp + 8]
fcomp dword [0x110201d0]
fnstsw ax
test ah, 0x41
jne 0x11002af9
mov dword [ebp + 8], 0x437f0000
fld dword [ebp + 8]
fistp dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
mov cl, byte [ebp - 0x10]
add ebx, 4
mov byte [eax + 0x1102a040], cl
inc eax
cmp ebx, str.Sorry__no_.WAV_writing_support_for_SHOUTcast_streams_ndue_to_copyright_issues.
mov dword [ebp - 0x14], eax
jl 0x11002a1d
push 1
mov edx, dword [ebp - 0x18]
push edx
push 0x1102a040
call dword [0x11028358]
add esp, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret