Function at 0x10047810
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x898
mov eax, dword [0x10086ba0]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x200
push 0
lea eax, [ebp - 0x490]
push eax
call fcn.100139b0
add esp, 0xc
push 0x200
push 0
push 0x1008b458
call fcn.100139b0
add esp, 0xc
push 0x200
push 0
lea ecx, [ebp - 0x208]
push ecx
call fcn.100139b0
add esp, 0xc
push 0x80
push 0
lea edx, [ebp - 0x288]
push edx
call fcn.100139b0
add esp, 0xc
push 0x100
push 0
lea eax, [ebp - 0x7a0]
push eax
call fcn.100139b0
add esp, 0xc
mov byte [ebp - 0x69d], 0
call fcn.100418b0
push str.ShareFile.mo
push str._realtek_
push str.ProgramFiles
call fcn.100172aa
add esp, 4
push eax
push 0x10079184
lea ecx, [ebp - 0x288]
push ecx
call fcn.10016875
add esp, 0x14
lea edx, [ebp - 0x868]
push edx
call sym.RtlLib.dll_RT_Media_Server_Factory
add esp, 4
mov ecx, dword [eax]
mov dword [ebp - 0x850], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x84c], edx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x848], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x844], edx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x840], ecx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x83c], edx
push 0x1007918c
lea eax, [ebp - 0x288]
push eax
call fcn.10015838
add esp, 8
mov dword [ebp - 0x69c], eax
cmp dword [ebp - 0x69c], 0
jne 0x1004798b
mov dword [ebp - 0x494], 0
jmp 0x10047949
mov ecx, dword [ebp - 0x494]
add ecx, 1
mov dword [ebp - 0x494], ecx
cmp dword [ebp - 0x494], 0xa
jge 0x10047986
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x10079190
lea edx, [ebp - 0x288]
push edx
call fcn.10015838
add esp, 8
mov dword [ebp - 0x69c], eax
cmp dword [ebp - 0x69c], 0
je 0x10047984
jmp 0x1004798b
jmp 0x1004793a
jmp 0x10047db2
push 0x80
push 0
lea eax, [ebp - 0x830]
push eax
call fcn.100139b0
add esp, 0xc
lea ecx, [ebp - 0x698]
push ecx
push 0x10079194
lea edx, [ebp - 0x830]
push edx
call fcn.10016875
add esp, 0xc
push 2
push 0
mov eax, dword [ebp - 0x69c]
push eax
call fcn.100173b7
add esp, 0xc
mov ecx, dword [ebp - 0x69c]
push ecx
call fcn.100175d9
add esp, 4
mov dword [ebp - 0x7a8], eax
push 0
push 0
mov edx, dword [ebp - 0x69c]
push edx
call fcn.100173b7
add esp, 0xc
mov eax, dword [ebp - 0x7a8]
add eax, 0x80
push eax
call fcn.100165a5
add esp, 4
mov dword [ebp - 0x7a4], eax
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x7ac], ecx
mov edx, dword [ebp - 0x7a8]
add edx, 0x80
push edx
push 0
mov eax, dword [ebp - 0x7ac]
push eax
call fcn.100139b0
add esp, 0xc
mov ecx, dword [ebp - 0x69c]
push ecx
call fcn.1001584f
add esp, 4
test eax, eax
jne 0x10047c1e
mov edx, dword [ebp - 0x69c]
push edx
push 0x100
lea eax, [ebp - 0x7a0]
push eax
call fcn.10015883
add esp, 0xc
push 2
push 0x10079198
lea ecx, [ebp - 0x7a0]
push ecx
call fcn.100167b5
add esp, 0xc
test eax, eax
je 0x10047bc2
push 1
push 0x1007919c
lea edx, [ebp - 0x7a0]
push edx
call fcn.100167b5
add esp, 0xc
test eax, eax
je 0x10047bc2
push 1
push 0x100791a0
lea eax, [ebp - 0x7a0]
push eax
call fcn.100167b5
add esp, 0xc
test eax, eax
je 0x10047bc2
lea ecx, [ebp - 0x7a0]
push ecx
call fcn.10013a30
add esp, 4
cmp eax, 1
jbe 0x10047bc2
mov byte [ebp - 0x69d], 1
mov dword [ebp - 0x494], 0
jmp 0x10047b01
mov edx, dword [ebp - 0x494]
add edx, 1
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x494]
cmp eax, dword [0x1008b798]
jge 0x10047bbe
push 0x200
mov ecx, dword [ebp - 0x494]
imul ecx, ecx, 0x404
add ecx, 0x1008b79c
push ecx
lea edx, [ebp - 0x698]
push edx
call fcn.10013640
add esp, 0xc
push 0
push 0
lea eax, [ebp - 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x28c]
push ecx
lea edx, [ebp - 0x208]
push edx
lea eax, [ebp - 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x28c]
push ecx
lea edx, [ebp - 0x208]
push edx
mov eax, dword [ebp - 0x7ac]
push eax
call fcn.10013640
add esp, 0xc
mov ecx, dword [ebp - 0x7ac]
add ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x7ac], ecx
mov edx, dword [ebp - 0x7ac]
mov byte [edx], 0xa
mov eax, dword [ebp - 0x7ac]
add eax, 1
mov dword [ebp - 0x7ac], eax
jmp 0x10047af2
jmp 0x10047c1e
lea ecx, [ebp - 0x7a0]
push ecx
call fcn.10013a30
add esp, 4
push eax
lea edx, [ebp - 0x7a0]
push edx
mov eax, dword [ebp - 0x7ac]
push eax
call fcn.10013640
add esp, 0xc
lea ecx, [ebp - 0x7a0]
push ecx
call fcn.10013a30
add esp, 4
add eax, dword [ebp - 0x7ac]
mov dword [ebp - 0x7ac], eax
push 0x100
push 0
lea edx, [ebp - 0x7a0]
push edx
call fcn.100139b0
add esp, 0xc
jmp 0x10047a3b
push 0
push 0
mov eax, dword [ebp - 0x69c]
push eax
call fcn.100173b7
add esp, 0xc
mov ecx, dword [ebp - 0x69c]
push ecx
call fcn.10015a42
add esp, 4
movzx edx, byte [ebp - 0x69d]
test edx, edx
jne 0x10047d52
push 0x100791a4
lea eax, [ebp - 0x288]
push eax
call fcn.10015838
add esp, 8
mov dword [ebp - 0x834], eax
mov dword [ebp - 0x494], 0
jmp 0x10047c84
mov ecx, dword [ebp - 0x494]
add ecx, 1
mov dword [ebp - 0x494], ecx
mov edx, dword [ebp - 0x494]
cmp edx, dword [0x1008b798]
jge 0x10047d41
push 0x80
push 0
lea eax, [ebp - 0x830]
push eax
call fcn.100139b0
add esp, 0xc
push 0x200
mov ecx, dword [ebp - 0x494]
imul ecx, ecx, 0x404
add ecx, 0x1008b79c
push ecx
lea edx, [ebp - 0x698]
push edx
call fcn.10013640
add esp, 0xc
push 0
push 0
lea eax, [ebp - 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x28c]
push ecx
lea edx, [ebp - 0x208]
push edx
lea eax, [ebp - 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_GetShortPathNameA]
mov dword [ebp - 0x28c], eax
lea ecx, [ebp - 0x208]
push ecx
push 0x100791a8
lea edx, [ebp - 0x830]
push edx
call fcn.10016875
add esp, 0xc
mov eax, dword [ebp - 0x834]
push eax
lea ecx, [ebp - 0x830]
push ecx
call fcn.10017647
add esp, 8
jmp 0x10047c75
mov edx, dword [ebp - 0x834]
push edx
call fcn.10015a42
add esp, 4
jmp 0x10047da3
push 0x100791ac
lea eax, [ebp - 0x288]
push eax
call fcn.10015838
add esp, 8
mov dword [ebp - 0x838], eax
mov ecx, dword [ebp - 0x838]
push ecx
push 1
mov edx, dword [ebp - 0x7a4]
push edx
call fcn.10013a30
add esp, 4
push eax
mov eax, dword [ebp - 0x7a4]
push eax
call fcn.100178b8
add esp, 0x10
mov ecx, dword [ebp - 0x838]
push ecx
call fcn.10015a42
add esp, 4
mov edx, dword [ebp - 0x7a4]
push edx
call fcn.10016931
add esp, 4
lea eax, [ebp - 0x898]
push eax
call sym.RtlLib.dll_RT_Media_Server_Factory
add esp, 4
mov ecx, dword [eax]
mov dword [ebp - 0x880], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x87c], edx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x878], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x874], edx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x870], ecx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x86c], edx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1001362b
mov esp, ebp
pop ebp
ret