Function at 0x42c477
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4513be
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x330
push ebx
push esi
push edi
mov edi, ecx
push dword [edi + 0x270]
call fcn.004337f6
mov dword [esp], 0x45910c
push dword [ebp + 8]
call fcn.0043cfad
pop ecx
pop ecx
mov dword [esp + 0x10], eax
test eax, eax
jne 0x42c4d4
push dword [edi + 0x270]
call fcn.0043380a
pop ecx
xor al, al
jmp 0x42c851
push dword [ebp + 8]
call fcn.00428dac
and dword [esp + 0x1c], 0
mov dword [esp], str.shared
push str.location
push str.fileset
mov ebx, str._s_t_s_t_s_r_n
lea eax, [esp + 0x34]
push ebx
push eax
call fcn.0043c67a
lea eax, [esp + 0x3c]
add esp, 0x14
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x42c50c
push dword [esp + 0x10]
sub eax, ecx
mov esi, eax
push esi
lea eax, [esp + 0x30]
push 1
push eax
call fcn.0043ea8f
add esp, 0x10
push dword [esp + 0x10]
cmp eax, esi
je 0x42c547
call fcn.0043d72e
pop ecx
push dword [ebp + 8]
call fcn.0043e819
pop ecx
jmp 0x42c4c1
call fcn.0043e732
pop ecx
push dword [edi + 0x274]
call fcn.004337f6
cmp dword [edi + 0x238], 0
pop ecx
push dword [edi + 0x274]
jne 0x42c56f
call fcn.0043380a
jmp 0x42c541
mov eax, dword [edi + 0x238]
mov cl, byte [eax + 3]
and cl, byte [eax + 2]
mov al, byte [eax + 6]
mov byte [esp + 0x23], cl
mov byte [esp + 0x1b], al
call fcn.0043380a
pop ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [edi + 0x234]
call fcn.00432c68
inc dword [esp + 0x18]
mov esi, eax
test esi, esi
je 0x42c717
push 0x2e
push esi
call fcn.0043b790
pop ecx
pop ecx
test eax, eax
je 0x42c5ce
push str..inf
push eax
call fcn.0043d9ef
pop ecx
pop ecx
test eax, eax
jne 0x42c5ce
mov dword [esp + 0x24], esi
jmp 0x42c5db
push esi
mov al, 0x5c
call fcn.004230cc
pop ecx
mov dword [esp + 0x24], eax
push str.txt_vol
push esi
call fcn.0043bb30
pop ecx
pop ecx
push esi
push edi
call fcn.0042f4c4
test eax, eax
jne 0x42c68b
cmp byte [esp + 0x1f], al
je 0x42c693
movzx eax, byte [esp + 0x17]
mov ecx, dword [edi + 0x234]
push str.nocache
push esi
call fcn.004305d0
test eax, eax
jne 0x42c693
push eax
mov eax, dword [edi + 0x234]
push str.hash
push esi
call fcn.0043058f
push eax
push esi
call fcn.0042c362
mov dword [esp + 0x20], eax
test eax, eax
je 0x42c58c
push str.cache
push eax
call fcn.0043bb30
pop ecx
pop ecx
test eax, eax
je 0x42c702
push 0x4594fc
push eax
push dword [esp + 0x2c]
lea eax, [esp + 0x34]
push ebx
push eax
call fcn.0043c67a
add esp, 0x14
lea eax, [esp + 0x20]
push eax
mov esi, edi
call fcn.0042cdb8
test al, al
jne 0x42c6ab
push dword [esp + 0x10]
call fcn.0043d72e
jmp 0x42c541
push 0x456b74
push eax
jmp 0x42c699
push 0x456b74
push esi
push dword [esp + 0x2c]
lea eax, [esp + 0x34]
push ebx
push eax
call fcn.0043c67a
add esp, 0x14
mov esi, 0x458f3c
lea eax, [esp + 0x28]
jmp 0x42c6b9
mov byte [eax], 0x5c
push esi
push eax
call fcn.0043bb30
pop ecx
pop ecx
test eax, eax
jne 0x42c6b6
lea eax, [esp + 0x28]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42c6cd
push dword [esp + 0x10]
sub eax, edx
mov esi, eax
push esi
lea eax, [esp + 0x30]
push 1
push eax
call fcn.0043ea8f
add esp, 0x10
push dword [esp + 0x10]
cmp eax, esi
jne 0x42c533
call fcn.0043e732
jmp 0x42c58b
lea eax, [esp + 0x20]
push eax
mov esi, edi
call fcn.0042cdb8
push dword [esp + 0x10]
jmp 0x42c533
push dword [esp + 0x10]
call fcn.0043d72e
mov esi, dword [ebp + 0xc]
pop ecx
push esi
call fcn.004265af
pop ecx
test al, al
jne 0x42c771
push dword [edi + 0x274]
call fcn.004337f6
mov eax, dword [edi + 0x238]
pop ecx
test eax, eax
jne 0x42c750
push dword [edi + 0x274]
jmp 0x42c568
push esi
lea ecx, [edi + 0x208]
push eax
call fcn.0042ad7c
push dword [edi + 0x274]
test al, al
je 0x42c568
call fcn.0043380a
pop ecx
push esi
call fcn.004265af
pop ecx
test al, al
je 0x42c4c1
push 0x36c
call fcn.0043b7d8
pop ecx
mov dword [esp + 0x20], eax
xor ebx, ebx
mov dword [esp + 0x344], ebx
cmp eax, ebx
je 0x42c7aa
push esi
mov esi, eax
call fcn.0042ff88
mov dword [esp + 0x18], eax
jmp 0x42c7ae
mov dword [esp + 0x18], ebx
or dword [esp + 0x344], 0xffffffff
push dword [edi + 0x274]
call fcn.004337f6
pop ecx
mov ecx, dword [edi + 0x238]
cmp ecx, ebx
je 0x42c745
push ebx
push str.hash
mov eax, edi
call fcn.00428a3a
push dword [edi + 0x274]
mov dword [esp + 0x24], eax
call fcn.0043380a
pop ecx
push 0
mov esi, 0x454bc7
push esi
push dword [esp + 0x28]
lea ebx, [edi + 0x104]
push str.server
push ebx
push dword [esp + 0x2c]
call fcn.004323f7
push 0
push esi
push dword [esp + 0x28]
mov esi, dword [esp + 0x24]
push str.local
push ebx
push esi
call fcn.004323f7
push dword [ebp + 0xc]
mov ebx, esi
call fcn.00432733
push dword [edi + 0x270]
mov bl, al
call fcn.0043380a
pop ecx
test esi, esi
je 0x42c84f
mov eax, esi
call fcn.00430038
push esi
call fcn.0043b780
pop ecx
mov al, bl
mov ecx, dword [esp + 0x33c]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8