Function at 0x10003600
Capabilities:
Print debug messages
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x1008fab0
push 0x1005aa50
mov eax, dword fs:[0]
push eax
sub esp, 8
mov eax, 0x1740
call fcn.10055c30
mov eax, dword [0x1009cbc0]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x173c], ecx
mov edi, 5
xor eax, eax
mov word [ebp - 0x1688], ax
mov dword [ebp - 0x1686], eax
mov dword [ebp - 0x1682], eax
mov dword [ebp - 0x167e], eax
mov word [ebp - 0x167a], ax
mov dword [ebp - 0x1738], eax
push 0xa8
push eax
lea eax, [ebp - 0x1734]
push eax
call fcn.10055aa0
add esp, 0xc
mov dword [ebp - 0x1748], 0xffffffff
mov dword [ebp - 0x174c], 0
mov dword [ebp - 4], 0
mov dword [ebp - 4], 1
lea eax, [ebp - 0x1688]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
lea eax, [ebp - 0x1738]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
mov dword [ebp - 0x1750], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ebx, [eax + 0x1e]
mov dword [ebp - 0x1744], ebx
mov dword [ebp - 0x1754], 0
push 0x1000a
call fcn.1005218a
add esp, 4
mov dword [ebp - 0x1740], eax
push 0x2000a
call fcn.1005218a
add esp, 4
mov esi, eax
cmp dword [ebp - 0x1740], 0
je 0x100037db
test esi, esi
je 0x100037db
push dword [ebp - 0x1750]
movzx ecx, word [ebp - 0x1680]
push ecx
push dword [ebp - 0x16e4]
push dword [ebp - 0x1690]
push dword [ebp - 0x1738]
push str.Bias:__d___DaylightBias:__d___StandardBias:__d___Hour:__d___Mode:__d
push 0xffff
push esi
call fcn.1005211a
add esp, 0x20
test eax, eax
jle 0x100037c6
xor eax, eax
mov word [esi + 0x1fffe], ax
push 0xffffffffffffffff
push esi
mov ecx, esi
call fcn.10001b80
inc eax
push eax
push dword [ebp - 0x1740]
lea eax, [ebp - 0x1754]
push eax
call fcn.10052d14
add esp, 0x14
test eax, eax
je 0x10003799
push ebx
push esi
push str.wcstombs_s_error_in_log_file:__s____d_n
call fcn.10052604
add esp, 0xc
push esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call ebx
jmp 0x1000379f
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
push dword [ebp - 0x1744]
push dword [ebp - 0x1740]
push str.MbaeSystemLog
push 4
mov edx, 0x28c
mov ecx, str.....mbae_commonMbaeLog.cpp
call fcn.10001cf0
add esp, 0x10
jmp 0x100037f5
push ebx
push str.Error__d_in_swprintf_s_n
call fcn.10052604
add esp, 8
push str.Error_in_swprintf_s_n
jmp 0x100037ed
push str.Memory_allocation_error_in_log_file_n
call fcn.10052604
add esp, 4
push str.Memory_allocation_error_in_log_file_n
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call ebx
mov eax, dword [ebp - 0x1740]
test eax, eax
je 0x10003808
push eax
call fcn.10052152
add esp, 4
test esi, esi
je 0x10003815
push esi
call fcn.10052152
add esp, 4
cmp dword [ebp - 0x1750], 2
mov eax, dword [ebp - 0x1690]
je 0x1000382a
mov eax, dword [ebp - 0x16e4]
mov esi, dword [ebp - 0x1738]
add esi, eax
mov dword [ebp - 0x1738], esi
xor eax, eax
test esi, esi
setg al
lea eax, [eax*2 + 0x2b]
movzx eax, ax
mov dword [ebp - 0x1744], eax
test esi, esi
jg 0x10003855
neg esi
push str.mbae_service.log
lea eax, [ebp - 0x228]
cmp word [0x100e1fb0], 0
jne 0x1000387a
push 0x104
push eax
call fcn.10053320
add esp, 0xc
jmp 0x1000388d
push 0x100e1fb0
push 0x10086350
push eax
call fcn.10004ed0
add esp, 0x10
mov eax, 0x88888889
imul esi
add edx, esi
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [ebp - 0x173c]
lea eax, [edx + 0x450]
push eax
lea eax, [edx + 0xc70]
push eax
push 0x100e22c0
push dword [edx]
lea eax, [edx + 0xcb4]
push eax
mov eax, ecx
shl eax, 4
sub eax, ecx
shl eax, 2
sub esi, eax
push esi
push ecx
mov eax, dword [ebp - 0x1744]
movzx eax, ax
push eax
movzx eax, word [ebp - 0x167a]
push eax
movzx eax, word [ebp - 0x167c]
push eax
movzx eax, word [ebp - 0x167e]
push eax
movzx eax, word [ebp - 0x1680]
push eax
movzx eax, word [ebp - 0x1682]
push eax
movzx eax, word [ebp - 0x1686]
push eax
movzx eax, word [ebp - 0x1688]
push eax
push str.__04d__02d__02dT_02d:_02d:_02d._03d_c_02d:_02d____s____d____s____s____s__r_n
lea eax, [ebp - 0x1678]
push eax
call fcn.10004f20
add esp, 0x44
push 0
push 0x80
push 4
push 0
push 1
push 4
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
mov dword [ebp - 0x1748], esi
cmp esi, 0xffffffff
jne 0x10003a37
push str.Retry_System_file_open_n
call ebx
push 0x12c
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp esi, esi
jne 0x10003a37
mov eax, edi
dec edi
mov dword [ebp - 0x1758], edi
test eax, eax
jne 0x10003926
cmp esi, esi
jne 0x10003a37
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
add eax, 0x1e
mov dword [ebp - 0x173c], eax
call esi
lea edi, [eax + 0x1e]
push 0x1000a
call fcn.1005218a
add esp, 4
mov esi, eax
test esi, esi
jne 0x100039c1
push str.Memory_allocation_error_in_log_file_n
call fcn.10052604
add esp, 4
push str.Memory_allocation_error_in_log_file_n
call ebx
jmp 0x10003a19
push 0x100865c0
push 0xffff
push esi
call fcn.10052136
add esp, 0xc
push edi
test eax, eax
jle 0x100039fc
mov byte [esi + 0xffff], 0
push esi
push str.MbaeSystemLog
push 1
mov edx, 0x2ab
mov ecx, str.....mbae_commonMbaeLog.cpp
call fcn.10001cf0
add esp, 0x10
jmp 0x10003a10
push str.Error__d_in_swprintf_s_n
call fcn.10052604
add esp, 8
push str.Error_in_swprintf_s_n
call ebx
push esi
call fcn.10052152
add esp, 4
push 0xfffffffffffffffe
lea eax, [ebp - 0x10]
push eax
push 0x1009cbc0
call fcn.10062b20
add esp, 0xc
mov eax, dword [ebp - 0x173c]
jmp 0x10003bcf
lea ecx, [ebp - 0x1678]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10003a40
sub ecx, edx
sar ecx, 1
push 0
lea eax, [ebp - 0x174c]
push eax
lea eax, [ecx + ecx]
push eax
lea eax, [ebp - 0x1678]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x10003aab
lea ecx, [ebp - 0x1678]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10003a77
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
cmp dword [ebp - 0x174c], eax
jne 0x10003aab
mov dword [ebp - 4], 0
call fcn.10003b20
mov dword [ebp - 4], 0xfffffffe
xor eax, eax
jmp 0x10003bcf
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
add eax, 0x1e
mov dword [ebp - 0x173c], eax
call esi
lea edi, [eax + 0x1e]
push 0x1000a
call fcn.1005218a
add esp, 4
mov esi, eax
test esi, esi
je 0x100039ab
push 0x100865c0
push 0xffff
push esi
call fcn.10052136
add esp, 0xc
push edi
test eax, eax
jle 0x100039fc
mov byte [esi + 0xffff], 0
push esi
push str.MbaeSystemLog
push 1
mov edx, 0x2af
mov ecx, str.....mbae_commonMbaeLog.cpp
call fcn.10001cf0
add esp, 0x10
jmp 0x10003a10
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.1005132c
mov esp, ebp
pop ebp
ret