Function at 0x47f540
Capabilities:
Check for time delay via gettickcount
Print debug messages
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
cmp byte [0x554092], 0
push ebx
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
push edi
je 0x47f55f
call esi
mov dword [0x55ad74], eax
mov eax, dword [ebp + 8]
call fcn.0048b5c0
cmp byte [0x554092], 0
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
je 0x47f5dd
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x5234fc
push 0x52009c
call fcn.00459820
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f5cd
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e8840
mov edx, dword [0x55ad7c]
push edx
call fcn.004e5d97
add esp, 0x14
cmp byte [0x554092], 0
je 0x47f5dd
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.00483600
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f648
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push str._rY6R
push 0x52009c
call fcn.00459820
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f648
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e8840
mov edx, dword [0x55ad7c]
push edx
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
call fcn.0048c450
mov ecx, dword [ebp + 8]
call fcn.0048ca90
cmp byte [0x554092], 0
je 0x47f671
call esi
mov dword [0x55ad74], eax
call fcn.00483fc0
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f6d9
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x52352c
push 0x52009c
call fcn.00459820
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f6d9
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e8840
mov edx, dword [0x55ad7c]
push edx
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
mov edi, dword [ebp + 8]
mov ecx, edi
call fcn.00485e40
cmp byte [0x554092], 0
je 0x47f6ff
call esi
mov dword [0x55ad74], eax
mov ecx, edi
call fcn.004862b0
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f769
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x52353c
push 0x52009c
call fcn.00459820
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f769
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e8840
mov edx, dword [0x55ad7c]
push edx
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
cmp byte [0x554092], 0
je 0x47f785
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.004871a0
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f7f0
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x52354c
push 0x52009c
call fcn.00459820
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f7f0
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e8840
mov edx, dword [0x55ad7c]
push edx
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
call esi
mov edi, eax
mov eax, dword [ebp + 8]
push eax
call fcn.00487340
mov dword [ebp - 4], eax
call esi
cmp byte [0x554092], 0
je 0x47f863
sub eax, edi
push eax
push 0x52355c
push 0x52009c
mov edi, 0x55ae78
call fcn.00459820
mov ecx, dword [0x55ae78]
add esp, 0xc
push ecx
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f863
push eax
mov eax, dword [0x55ae78]
mov edx, dword [eax - 0xc]
push edx
push 2
push eax
call fcn.004e8840
mov eax, dword [0x55ad7c]
push eax
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
cmp byte [0x554092], 0
je 0x47f87f
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.00488730
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f8ea
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x523570
push 0x52009c
call fcn.00459820
mov ecx, dword [0x55ae78]
add esp, 0xc
push ecx
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f8ea
push eax
mov eax, dword [0x55ae78]
mov edx, dword [eax - 0xc]
push edx
push 2
push eax
call fcn.004e8840
mov eax, dword [0x55ad7c]
push eax
call fcn.004e5d97
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f8f2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4