Function at 0x47f120
Capabilities:
Write file on windows

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x34
push ebx
xor eax, eax
push esi
push edi
mov dword [ebp - 0x10], eax
mov edi, eax
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
mov dword [ebp - 0xc], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount64]
mov ebx, dword [ebp + 0xc]
lea ecx, [ebp - 8]
mov dword [ebp - 0x28], eax
push ecx
push ebx
mov eax, dword [ebx]
mov dword [ebp - 0x24], edx
mov esi, dword [eax + 0x1c]
mov ecx, esi
call dword [0x5035f0]
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 4]
push ecx
push ebx
mov esi, dword [eax + 0x14]
mov ecx, esi
call dword [0x5035f0]
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0x10]
push ecx
push ebx
mov esi, dword [eax + 0xc]
mov ecx, esi
call dword [0x5035f0]
call esi
mov eax, dword [ebx]
lea ecx, [ebp - 0xc]
push ecx
push ebx
mov esi, dword [eax + 0x10]
mov ecx, esi
call dword [0x5035f0]
call esi
mov ebx, dword [ebp + 8]
cmp dword [ebx + 0x30], edi
je 0x47f1aa
mov ecx, dword [ebx + 0x2c]
call fcn.004f5aa4
cmp dword [ebx + 0x34], edi
jne 0x47f208
cmp dword [0x5000a0], 2
mov esi, 0x80004005
jbe 0x47f3ce
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x4126c8
push eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0x4126e4
push eax
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x1da
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x412310
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], esi
push eax
mov dword [ebp - 0x28], 0x41235c
lea eax, [ebp - 0x28]
mov edx, 0x41e28f
jmp 0x47f3c6
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
add eax, ecx
cmp eax, dword [ebp - 0xc]
jle 0x47f26b
cmp dword [0x5000a0], 2
mov esi, 0x80070057
jbe 0x47f3ce
mov dword [ebp - 0x24], 0x1de
mov edx, 0x41e1eb
mov dword [ebp - 0x18], 0x4126f0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x20], 0x412310
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x1c], esi
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x18]
push eax
push ecx
push ecx
mov dword [ebp - 0x28], 0x4126e4
call fcn.0041f27b
jmp 0x47f3ce
cmp dword [ebx + 0x3c], 0x3e8
jbe 0x47f2b8
mov eax, dword [ebx + 0x40]
mov ecx, dword [ebx + 0x44]
mov edx, dword [ebp - 0x28]
sub edx, eax
mov eax, dword [ebp - 0x24]
sbb eax, ecx
mov dword [ebp - 0x2c], eax
jne 0x47f291
cmp edx, 0xea60
jbe 0x47f2b8
cmp dword [0x5000a0], 2
mov esi, 0x8007274c
jbe 0x47f3ce
mov dword [ebp - 0x24], 0x1ef
mov edx, 0x41e1eb
mov dword [ebp - 0x18], 0x41270c
jmp 0x47f23a
xor esi, esi
inc esi
add dword [ebx + 0x3c], esi
push 0x20
call fcn.004fb25b
mov edi, eax
mov dword [ebp - 0x2c], edi
pop ecx
test edi, edi
je 0x47f374
xor edx, edx
xor eax, eax
push 8
mov dword [edi + 0x18], edx
mov dword [edi + 0x1c], edx
pop ecx
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x2c]
push ebx
lea ecx, [edi + 0x18]
mov dword [edi + 0x14], edx
call fcn.0047d94e
push dword [ebp + 0xc]
lea ecx, [edi + 0x1c]
call fcn.00473130
mov ecx, ebx
call fcn.0047e947
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 8]
push edi
push 0
push dword [ebp - 4]
push eax
push dword [ebx + 0x20]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x47f370
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x2c], eax
cmp eax, 0x3e5
je 0x47f3ce
sub dword [ebx + 0x3c], esi
mov ecx, ebx
call fcn.0047e9b0
mov eax, dword [ebp - 0x2c]
test eax, eax
jg 0x47f346
mov esi, eax
jmp 0x47f34f
movzx esi, ax
or esi, 0x80070000
cmp dword [0x5000a0], 2
jbe 0x47f3ce
mov dword [ebp - 0x24], 0x21d
mov edx, 0x41e1eb
mov dword [ebp - 0x18], 0x412774
jmp 0x47f23a
xor esi, esi
jmp 0x47f3ce
xor edi, edi
mov esi, 0x8007000e
cmp dword [0x5000a0], 2
jbe 0x47f3ce
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x41274c
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x4126e4
push eax
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x1fd
push eax
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0x412310
push eax
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], esi
push eax
mov dword [ebp - 0x14], 0x41235c
lea eax, [ebp - 0x14]
mov edx, 0x41e28f
push eax
push ecx
push ecx
call fcn.0041f1d0
cmp dword [ebx + 0x30], 0
je 0x47f3dc
mov ecx, dword [ebx + 0x2c]
call fcn.004f5abe
test esi, esi
jns 0x47f3fa
push esi
mov ecx, ebx
call fcn.0047ee59
test edi, edi
je 0x47f3fa
mov ecx, edi
call fcn.0047e153
push edi
call fcn.004fb234
pop ecx
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 8