Function at 0x47f210
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 0x47f22f
call esi
mov dword [0x55ad74], eax
mov eax, dword [ebp + 8]
call fcn.0048b590
cmp byte [0x554092], 0
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
je 0x47f2ad
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x523544
push 0x5200e4
call fcn.004597f0
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f29d
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
cmp byte [0x554092], 0
je 0x47f2ad
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.00483360
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f318
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push str._rY6R
push 0x5200e4
call fcn.004597f0
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f318
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
call fcn.0048c1c0
mov ecx, dword [ebp + 8]
call fcn.0048c800
cmp byte [0x554092], 0
je 0x47f341
call esi
mov dword [0x55ad74], eax
call fcn.00483d30
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f3a9
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x523574
push 0x5200e4
call fcn.004597f0
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f3a9
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
mov edi, dword [ebp + 8]
mov ecx, edi
call fcn.00485bb0
cmp byte [0x554092], 0
je 0x47f3cf
call esi
mov dword [0x55ad74], eax
mov ecx, edi
call fcn.00486020
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f439
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x523584
push 0x5200e4
call fcn.004597f0
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f439
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
cmp byte [0x554092], 0
je 0x47f455
call esi
mov dword [0x55ad74], eax
mov eax, dword [ebp + 8]
push eax
call fcn.00486f90
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f4c1
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x523594
push 0x5200e4
call fcn.004597f0
mov ecx, dword [0x55ae78]
add esp, 0xc
push ecx
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f4c1
push eax
mov eax, dword [0x55ae78]
mov edx, dword [eax - 0xc]
push edx
push 2
push eax
call fcn.004e84a4
mov eax, dword [0x55ad7c]
push eax
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
cmp byte [0x554092], 0
je 0x47f4dd
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.00487040
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f548
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x5235c0
push 0x5200e4
call fcn.004597f0
mov ecx, dword [0x55ae78]
add esp, 0xc
push ecx
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f548
push eax
mov eax, dword [0x55ae78]
mov edx, dword [eax - 0xc]
push edx
push 2
push eax
call fcn.004e84a4
mov eax, dword [0x55ad7c]
push eax
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
call esi
mov ecx, dword [ebp + 8]
push ecx
mov edi, eax
call fcn.004871f0
mov dword [ebp - 4], eax
call esi
cmp byte [0x554092], 0
je 0x47f5bc
sub eax, edi
push eax
push 0x5235d0
push 0x5200e4
mov edi, 0x55ae78
call fcn.004597f0
mov edx, dword [0x55ae78]
add esp, 0xc
push edx
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f5bc
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
cmp byte [0x554092], 0
je 0x47f5d8
call esi
mov dword [0x55ad74], eax
mov ecx, dword [ebp + 8]
call fcn.004885e0
cmp byte [0x554092], 0
mov dword [ebp - 4], eax
je 0x47f643
call esi
mov dword [0x55ad78], eax
sub eax, dword [0x55ad74]
mov edi, 0x55ae78
push eax
push 0x5235e4
push 0x5200e4
call fcn.004597f0
mov eax, dword [0x55ae78]
add esp, 0xc
push eax
call ebx
mov eax, dword [0x55ad7c]
test eax, eax
je 0x47f643
push eax
mov eax, dword [0x55ae78]
mov ecx, dword [eax - 0xc]
push ecx
push 2
push eax
call fcn.004e84a4
mov edx, dword [0x55ad7c]
push edx
call fcn.004e59f8
add esp, 0x14
mov eax, dword [ebp - 4]
cmp eax, 1
jne 0x47f64b
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4