Function at 0x305ee8
Capabilities:
Check for time delay via gettickcount
Write file on windows

Disassembly:
mov eax, 0x323c69
call fcn.003200c8
sub esp, 0x98
push ebx
push esi
push edi
lea ecx, [ebp - 0x4c]
call fcn.003052bd
and dword [ebp - 4], 0
mov esi, str..exe
mov ecx, esi
call fcn.003016b8
push eax
push esi
lea ecx, [ebp - 0x4c]
call fcn.00303c18
and dword [ebp - 0x14], 0
cmp dword [ebp - 0x38], 8
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
push 0x32cc00
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.00311885
add esp, 0xc
cmp dword [ebp - 0x14], 0
jne 0x305fb7
push 0x2333bd8
call fcn.00302c70
mov esi, dword [0x333510]
mov eax, esi
imul eax, esi
push 0x13
cdq
pop ecx
idiv ecx
cmp edx, 2
jne 0x305fb3
mov eax, esi
cdq
sub eax, edx
push 0x48
mov edi, eax
xor ecx, ecx
pop ebx
sar edi, 1
test edi, edi
jle 0x305fae
mov eax, esi
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [ebp - 0x18], eax
xor edx, edx
mov esi, edi
mov dword [ebp - 0x1c], edi
test eax, eax
jle 0x305fa0
mov esi, dword [ebp - 0x18]
mov eax, edx
add ebx, eax
dec eax
dec esi
jne 0x305f94
mov eax, dword [ebp - 0x18]
mov esi, dword [ebp - 0x1c]
add edx, ecx
dec esi
mov dword [ebp - 0x1c], esi
jne 0x305f8b
mov esi, dword [0x333510]
inc ecx
cmp ecx, ebx
jl 0x305f72
push 0xfffffffffffffffd
jmp 0x30602e
mov eax, dword [0x23339dc]
push dword [ebp - 0x14]
mov esi, dword [0x23339e0]
sub esi, eax
push esi
push 1
push eax
call fcn.00311f1d
push dword [ebp - 0x14]
cmp eax, esi
sete bl
call fcn.00312007
add esp, 0x14
test bl, bl
jne 0x306036
mov ecx, dword [0x333510]
push 0x14
lea eax, [ecx + 1]
imul eax, ecx
cdq
pop esi
idiv esi
cmp edx, 9
jne 0x306022
mov eax, ecx
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x63]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00310bdb
pop ecx
push eax
call fcn.00311664
pop ecx
push 0x2334010
call fcn.00302c70
push 0xfffffffffffffffc
pop esi
xor ebx, ebx
jmp 0x3061c0
push 0x3c
pop esi
push esi
xor ebx, ebx
lea eax, [ebp - 0xa0]
push ebx
push eax
call fcn.0031a9d0
add esp, 0xc
cmp dword [ebp - 0x38], 8
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
mov dword [ebp - 0xa0], esi
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x84], 5
mov dword [ebp - 0x9c], 0x400
call fcn.00304fc2
test al, al
jne 0x3060aa
mov eax, dword [0x333510]
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x63]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00310bdb
pop ecx
push eax
call fcn.00311664
pop ecx
mov eax, dword [0x2333850]
mov dword [ebp - 0x8c], eax
call fcn.00305091
test al, al
jne 0x3060c4
dec dword [0x2333930]
call fcn.003050d8
lea edx, [ebp - 0xa0]
mov ecx, eax
call fcn.00303f33
test eax, eax
jne 0x30616b
push 0x2333cf4
call fcn.00302c70
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 1
jne 0x306166
push 7
pop esi
xor eax, eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
push str.leak_of_res
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], ebx
mov word [ebp - 0x34], ax
call fcn.003021ab
mov byte [ebp - 4], 1
xor eax, eax
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x50], ebx
push 0x32cbec
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], ebx
mov word [ebp - 0x64], ax
call fcn.003021ab
mov byte [ebp - 4], 2
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00302930
mov byte [ebp - 4], 1
push ebx
push 1
lea ecx, [ebp - 0x64]
call fcn.0030222a
mov byte [ebp - 4], bl
push ebx
push 1
lea ecx, [ebp - 0x34]
call fcn.0030222a
push 0xfffffffffffffffb
pop esi
jmp 0x3061c0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, 1
jne 0x3061b4
xor eax, eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], ebx
push str.ttl_to_get_8
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], ebx
mov word [ebp - 0x34], ax
call fcn.003021ab
mov byte [ebp - 4], 3
lea eax, [ebp - 0x34]
push eax
call fcn.00302c70
mov byte [ebp - 4], bl
push ebx
push 1
lea ecx, [ebp - 0x34]
call fcn.0030222a
push 0x23340bc
call fcn.00302c70
mov esi, ebx
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x4c]
call fcn.0030222a
mov ecx, dword [ebp - 0xc]
pop edi
mov eax, esi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret