Function at 0x10002833
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push 0x2fc
mov eax, 0x1000ccd1
call fcn.1000be77
xor ebx, ebx
push str.config.xml
lea edx, [ebp - 0x2ec]
mov dword [ebp - 0x2fc], ecx
mov dword [ebp - 0x2f8], ebx
mov dword [ebp - 0x2ec], ebx
call fcn.10002700
pop ecx
mov dword [ebp - 0x2f4], eax
cmp eax, ebx
je 0x10002acc
mov esi, 0x103
push esi
lea eax, [ebp - 0x21f]
push ebx
push eax
mov byte [ebp - 0x220], bl
call fcn.100091c0
add esp, 0xc
push esi
lea eax, [ebp - 0x117]
push ebx
push eax
mov byte [ebp - 0x118], bl
call fcn.100091c0
add esp, 0xc
lea eax, [ebp - 0x2e8]
mov dword [ebp - 0x2e8], ebx
mov dword [ebp - 0x2e4], ebx
call fcn.10002372
lea esi, [ebp - 0x2e8]
mov dword [ebp - 4], ebx
call fcn.100023db
mov eax, esi
call fcn.10002372
lea eax, [ebp - 0x2e4]
push eax
push dword [ebp - 0x2ec]
lea eax, [ebp - 0x308]
push dword [ebp - 0x2f4]
push dword [ebp - 0x2e8]
push dword [ebp - 0x2e8]
push eax
call fcn.10002251
add esp, 0x18
cmp dword [ebp - 0x308], ebx
jne 0x100029d9
push str.root
lea edi, [ebp - 0x2ec]
mov eax, esi
call fcn.100022f9
mov eax, dword [eax]
mov dword [ebp - 0x2ec], eax
cmp eax, ebx
je 0x100029d9
push str.mixer
lea edi, [ebp - 0x2f0]
lea eax, [ebp - 0x2ec]
call fcn.100022f9
cmp dword [ebp - 0x2f0], ebx
je 0x100029d9
push 0x10010a4c
lea edi, [ebp - 0x2ec]
lea eax, [ebp - 0x2f0]
call fcn.10002333
mov eax, dword [ebp - 0x2ec]
mov esi, 0x10010a55
cmp eax, ebx
je 0x1000299a
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x10002984
mov eax, esi
cmp eax, ebx
je 0x1000299a
cmp byte [eax], bl
je 0x1000299a
lea edx, [ebp - 0x220]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x10002990
push str.play
lea edi, [ebp - 0x2ec]
lea eax, [ebp - 0x2f0]
call fcn.10002333
mov eax, dword [eax]
cmp eax, ebx
je 0x100029d9
mov eax, dword [eax + 8]
cmp eax, ebx
jne 0x100029c3
mov eax, esi
cmp eax, ebx
je 0x100029d9
cmp byte [eax], bl
je 0x100029d9
lea edx, [ebp - 0x118]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x100029cf
push dword [ebp - 0x2f4]
call fcn.100064b1
pop ecx
cmp byte [ebp - 0x220], bl
je 0x10002abd
cmp byte [ebp - 0x118], bl
je 0x10002abd
mov ecx, dword [ebp - 0x2fc]
lea eax, [ebp - 0x220]
push eax
lea edx, [ebp - 0x2f0]
mov dword [ebp - 0x2f0], ebx
mov dword [ebp - 0x2f4], ebx
call fcn.10002700
mov dword [ebp - 0x2ec], eax
pop ecx
mov ecx, dword [ebp - 0x2fc]
lea eax, [ebp - 0x118]
push eax
lea edx, [ebp - 0x2f4]
call fcn.10002700
pop ecx
mov edi, eax
cmp dword [ebp - 0x2ec], ebx
je 0x10002ab2
cmp edi, ebx
je 0x10002aa6
push 0x40
push 0x3000
push dword [ebp - 0x2f0]
push ebx
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov esi, eax
cmp esi, ebx
je 0x10002aa6
push dword [ebp - 0x2f0]
push dword [ebp - 0x2ec]
push esi
call fcn.1000a5b0
add esp, 0xc
push dword [ebp - 0x2f4]
push edi
push 1
push ebx
call esi
add esp, 0x10
cmp eax, ebx
je 0x10002aa6
push ebx
push 1
push 2
push eax
call esi
add esp, 0x10
cmp eax, ebx
je 0x10002aa6
mov dword [ebp - 0x2f8], eax
push dword [ebp - 0x2ec]
call fcn.100064b1
pop ecx
cmp edi, ebx
je 0x10002abd
push edi
call fcn.100064b1
pop ecx
or dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x2e8]
call fcn.100023db
mov eax, dword [ebp - 0x2f8]
call fcn.1000bec1
ret