Function at 0x412080
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x230
mov eax, dword [0x47ca80]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x230], ecx
mov eax, dword [ebp - 0x230]
cmp dword [eax], 0
je 0x4120b0
mov ecx, dword [ebp - 0x230]
cmp dword [ecx + 4], 0
jne 0x4120b5
jmp 0x412356
mov edx, dword [ebp - 0x230]
mov eax, dword [edx + 0xc]
or eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x230]
mov dword [ecx + 0xc], eax
cmp dword [ebp + 8], 1
jne 0x412229
mov dword [ebp - 0xc], 0
push 0x47e18c
call fcn.004404c0
add esp, 4
test eax, eax
jbe 0x4120f3
mov dword [ebp - 0xc], 1
lea edx, [ebp - 8]
push edx
lea eax, [ebp - 4]
push eax
movzx ecx, byte [0x47e04d]
push ecx
call fcn.00411bb0
add esp, 0xc
test eax, eax
je 0x4121be
mov byte [ebp - 0x118], 0
push 0x103
push 0
lea edx, [ebp - 0x117]
push edx
call fcn.00440170
add esp, 0xc
fld dword [ebp - 8]
sub esp, 8
fstp qword [esp]
fld dword [ebp - 4]
sub esp, 8
fstp qword [esp]
push str.GetDiskFreeSpaceExA_ok_i64TotalBytes_f__i64FreeBytes_f_n
lea eax, [ebp - 0x118]
push eax
call fcn.0040d550
add esp, 0x18
lea ecx, [ebp - 0x118]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov edx, dword [ebp - 0xc]
imul edx, edx, 0x110
mov byte [edx + 0x47e180], 1
movsx eax, byte [0x47e04d]
push eax
push 0x4647e4
mov ecx, dword [ebp - 0xc]
imul ecx, ecx, 0x110
add ecx, 0x47e18c
push ecx
call fcn.0040d550
add esp, 0xc
mov edx, dword [ebp - 0xc]
imul edx, edx, 0x110
fld dword [ebp - 4]
fstp dword [edx + 0x47e184]
mov eax, dword [ebp - 0xc]
imul eax, eax, 0x110
fld dword [ebp - 8]
fstp dword [eax + 0x47e188]
jmp 0x412224
mov byte [ebp - 0x220], 0
push 0x103
push 0
lea ecx, [ebp - 0x21f]
push ecx
call fcn.00440170
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.GetDiskFreeSpaceExA_failed_err_d_n
lea edx, [ebp - 0x220]
push edx
call fcn.0040d550
add esp, 0xc
lea eax, [ebp - 0x220]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push 0
push 0x110
push 0
mov ecx, dword [ebp - 0xc]
imul ecx, ecx, 0x110
add ecx, 0x47e180
push ecx
call fcn.004108c0
add esp, 0x10
jmp 0x41230b
cmp dword [ebp + 8], 2
jne 0x41230b
mov dword [ebp - 0x22c], 0
push 0x47e18c
call fcn.004404c0
add esp, 4
test eax, eax
jbe 0x412258
mov dword [ebp - 0x22c], 1
lea edx, [ebp - 0x228]
push edx
lea eax, [ebp - 0x224]
push eax
movzx ecx, byte [0x47e04e]
push ecx
call fcn.00411bb0
add esp, 0xc
test eax, eax
je 0x4122e7
mov edx, dword [ebp - 0x22c]
imul edx, edx, 0x110
mov byte [edx + 0x47e180], 2
movsx eax, byte [0x47e04e]
push eax
push str._c:_
mov ecx, dword [ebp - 0x22c]
imul ecx, ecx, 0x110
add ecx, 0x47e18c
push ecx
call fcn.0040d550
add esp, 0xc
mov edx, dword [ebp - 0x22c]
imul edx, edx, 0x110
fld dword [ebp - 0x224]
fstp dword [edx + 0x47e184]
mov eax, dword [ebp - 0x22c]
imul eax, eax, 0x110
fld dword [ebp - 0x228]
fstp dword [eax + 0x47e188]
jmp 0x41230b
push 0
push 0x110
push 0
mov ecx, dword [ebp - 0x22c]
imul ecx, ecx, 0x110
add ecx, 0x47e180
push ecx
call fcn.004108c0
add esp, 0x10
mov edx, dword [ebp - 0x230]
mov eax, dword [edx + 4]
call eax
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x230]
cmp dword [ecx + 8], 0
je 0x412342
mov edx, dword [ebp - 0x230]
mov eax, dword [edx + 0x18]
push eax
mov ecx, dword [ebp - 0x230]
mov edx, dword [ecx + 8]
call edx
push 0x411e70
push 0x47e180
mov eax, dword [ebp - 0x230]
mov ecx, dword [eax]
call ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00440160
mov esp, ebp
pop ebp
ret 4