Function at 0x41fb00
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x47eeb8
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x49ffb8]
xor eax, esp
mov dword [esp + 0x2c], eax
push esi
push edi
mov eax, dword [0x49ffb8]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
cmp eax, 0x4a1b98
je 0x41fb54
push 0xffffffffffffffff
push 0
push eax
mov ecx, 0x4a1b98
call fcn.00405240
mov eax, dword [vtable.HappyCloud::FileHandle.0]
push esi
mov ecx, 0x4a1bc8
call dword [eax + 4]
push 0xffffffffffffffff
push 0
push 0x4a1b80
lea ecx, [esp + 0x2c]
mov dword [esp + 0x40], 0xf
mov dword [esp + 0x3c], 0
mov byte [esp + 0x2c], 0
call fcn.00405240
mov dword [esp + 0x48], 0
mov eax, dword [0x4a1a34]
cmp eax, 2
jl 0x41fc32
lea ecx, [esp + 0xc]
call fcn.0041de50
mov byte [esp + 0x48], 2
mov ecx, dword [eax + 4]
mov dword [ecx + 8], 2
mov eax, dword [eax + 4]
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x41fbc6
add ecx, 0x10
jmp 0x41fbc8
xor ecx, ecx
lea eax, [esp + 0x20]
push eax
push ecx
push 0x48d434
push ecx
lea eax, [edi + 4]
push eax
push ecx
push str._Version:
push ecx
lea eax, [edi + 0x1c]
push eax
push ecx
push str.Starting_log:
push ecx
call fcn.00407740
add esp, 0xc
push eax
call fcn.004079f0
add esp, 0xc
push eax
call fcn.00407740
add esp, 0xc
push eax
call fcn.004079f0
add esp, 0xc
push eax
call fcn.00407740
add esp, 0xc
push eax
call fcn.004079f0
add esp, 8
lea ecx, [esp + 0xc]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
cmp eax, 3
jl 0x41fca8
mov dword [esp + 0xc], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x14], esi
call edi
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x18]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 3
mov dword [esi + 8], 3
mov eax, dword [esi + 4]
test eax, eax
je 0x41fc85
add eax, 0x10
jmp 0x41fc87
xor eax, eax
push str.DEBUG_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0xc]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 4
jl 0x41fd18
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 4
mov dword [esi + 8], 4
mov eax, dword [esi + 4]
test eax, eax
je 0x41fcf5
add eax, 0x10
jmp 0x41fcf7
xor eax, eax
push str.DEBUG1_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 5
jl 0x41fd88
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 5
mov dword [esi + 8], 5
mov eax, dword [esi + 4]
test eax, eax
je 0x41fd65
add eax, 0x10
jmp 0x41fd67
xor eax, eax
push str.DEBUG2_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 6
jl 0x41fdf8
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 6
mov dword [esi + 8], 6
mov eax, dword [esi + 4]
test eax, eax
je 0x41fdd5
add eax, 0x10
jmp 0x41fdd7
xor eax, eax
push str.DEBUG3_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 7
jl 0x41fe68
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 7
mov dword [esi + 8], 7
mov eax, dword [esi + 4]
test eax, eax
je 0x41fe45
add eax, 0x10
jmp 0x41fe47
xor eax, eax
push str.DEBUG4_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 8
jl 0x41fed8
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 8
mov dword [esi + 8], 8
mov eax, dword [esi + 4]
test eax, eax
je 0x41feb5
add eax, 0x10
jmp 0x41feb7
xor eax, eax
push str.DEBUG5_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
mov eax, dword [0x4a1a34]
cmp eax, 9
jl 0x41ff43
mov dword [esp + 0x14], vtable.Log.0
call fcn.0041ddc0
mov esi, eax
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x1c], esi
call edi
mov ecx, dword [esp + 0xc]
mov dword [esi + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [esi + 0x14], ecx
call fcn.0042f280
mov dword [esi + 0x18], eax
mov byte [esp + 0x48], 9
mov dword [esi + 8], 9
mov eax, dword [esi + 4]
test eax, eax
je 0x41ff25
add eax, 0x10
jmp 0x41ff27
xor eax, eax
push str.DEBUG6_logging_level_active
push eax
call fcn.00407740
add esp, 8
lea ecx, [esp + 0x14]
mov byte [esp + 0x48], 0
call fcn.0041dee0
cmp dword [esp + 0x34], 0x10
jb 0x41ff56
push dword [esp + 0x20]
call fcn.0043d98b
add esp, 4
mov al, 1
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.0043cee8
mov esp, ebp
pop ebp
ret 0xc