Function at 0x41c440
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x28
push ebx
push ebp
push esi
xor ebp, ebp
push edi
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
call fcn.00419200
call fcn.0041cda0
mov eax, dword [0x19611a0]
mov esi, eax
cmp eax, ebp
je 0x41c496
mov eax, str.server:interactive
call fcn.0041cf90
push 0xffffffffffffffff
push eax
push esi
call fcn.00422f70
add esp, 0xc
cmp eax, 0xffffffff
je 0x41c496
push ebp
push ebp
push eax
call fcn.00401dd9
add esp, 0xc
cmp eax, ebp
je 0x41c4aa
call fcn.0041bf80
test eax, eax
jns 0x41c4c0
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.0041c1c0
test eax, eax
jns 0x41c4c0
or eax, 0xffffffff
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00411931
test eax, eax
jne 0x41c54f
lea ecx, [ecx]
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov ecx, dword [esp + 0x28]
sub ecx, dword [0x42f108]
mov edx, dword [esp + 0x2c]
sbb edx, dword [0x42f10c]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], edx
fild qword [esp + 0x30]
fmul dword [0x42eef0]
fstp dword [0x1961f88]
fld dword [0x1961f88]
fld st(0)
fsub dword [0x1961f8c]
fabs
fstp dword [esp + 0x14]
fld dword [esp + 0x14]
fstp dword [0x1961ee8]
fld dword [0x429998]
fcomp dword [0x1961ee8]
fnstsw ax
test ah, 0x41
jne 0x41c5e3
push 1
fstp st(0)
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00411931
test eax, eax
je 0x41c4d0
call fcn.0041a9b0
cmp eax, 0xffffffff
jne 0x41c4c0
mov eax, dword [0x43711c]
cmp eax, ebp
je 0x41c57b
push eax
call fcn.004011f7
add esp, 4
mov dword [0x43711c], ebp
mov dword [0x437118], ebp
mov eax, dword [0x436cbc]
cmp eax, ebp
je 0x41c599
push eax
call fcn.004011f7
add esp, 4
mov dword [0x436cbc], ebp
mov dword [0x436cb8], ebp
cmp dword [0x19610e4], ebp
je 0x41c5bc
cmp dword [0x1961b90], ebp
je 0x41c5ae
call fcn.00415f40
mov eax, dword [0x19610e4]
push eax
call fcn.00421770
add esp, 4
mov ecx, dword [0x1961190]
push ecx
call fcn.00421770
add esp, 4
push 1
call dword [sym.imp.WINMM.dll_timeEndPeriod]
call dword [sym.imp.WS2_32.dll_WSACleanup]
pop edi
xor eax, eax
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
fstp dword [0x1961f8c]
call fcn.0041b880
call fcn.0041b790
push ebp
call fcn.00401444
add esp, 4
mov ebx, eax
mov edi, edx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], edi
cmp dword [0x1961b50], ebp
jl 0x41c6b8
cmp edi, dword [0x196119c]
jl 0x41c6b8
jg 0x41c62e
cmp ebx, dword [0x1961198]
jbe 0x41c6b8
push 0x14
mov word [esp + 0x14], 0xff1b
mov byte [esp + 0x16], 0x5d
call dword [0x42d364]
mov esi, eax
add esp, 4
cmp esi, ebp
jne 0x41c655
call dword [0x42d36c]
xor eax, eax
jmp 0x41c6a9
push 3
call dword [0x42d364]
mov edi, eax
add esp, 4
cmp edi, ebp
jne 0x41c66c
call dword [0x42d36c]
mov dword [esi + 8], edi
cmp edi, ebp
jne 0x41c681
push esi
call dword [0x42d368]
add esp, 4
xor eax, eax
jmp 0x41c6a5
mov ax, word [esp + 0x10]
mov word [edi], ax
mov cl, byte [esp + 0x12]
mov byte [edi + 2], cl
mov dword [esi], ebp
mov dword [esi + 4], 1
mov dword [esi + 0xc], 3
mov dword [esi + 0x10], ebp
mov eax, esi
mov edi, dword [esp + 0x1c]
call fcn.004214f0
mov dword [0x1961b50], 0xffffffff
cmp ebx, dword [0x1961b40]
jne 0x41c6cc
cmp edi, dword [0x1961b44]
je 0x41c7e2
mov ecx, dword [0x1961308]
mov eax, dword [0x196130c]
mov edx, ecx
or edx, eax
mov dword [0x1961b40], ebx
mov dword [0x1961b44], edi
mov dword [esp + 0x14], 1
je 0x41c785
cmp edi, eax
jl 0x41c785
jg 0x41c707
cmp ebx, ecx
jb 0x41c785
push 0x429394
push 0x1961200
call fcn.004011e0
add esp, 8
mov dword [0x1961b8c], eax
cmp eax, ebp
je 0x41c772
push eax
mov esi, eax
mov eax, dword [eax + 0x10]
push 1
push eax
call fcn.00402fa8
add esp, 4
push eax
push 0x948cc4
call fcn.004026b7
push esi
call fcn.004020eb
add esp, 0x14
call fcn.00415b60
call fcn.00415eb0
call fcn.004162b0
call dword [0x1961cd0]
push ebp
call fcn.0041b190
add esp, 4
push ebp
call fcn.00417e70
add esp, 4
push 0x30
jmp 0x41c774
push 0x16
call fcn.0041cc50
add esp, 4
push eax
call fcn.004023b0
add esp, 4
mov eax, 0x42fa34
lea ebx, [ebx]
mov ecx, dword [eax - 0x3a0]
cmp ecx, ebp
jle 0x41c7a3
add ecx, 0xfffffffd
mov dword [eax - 0x3a0], ecx
mov ecx, dword [eax]
cmp ecx, ebp
jle 0x41c7ae
add ecx, 0xfffffffd
mov dword [eax], ecx
mov ecx, dword [eax + 0x3a0]
cmp ecx, ebp
jle 0x41c7c1
add ecx, 0xfffffffd
mov dword [eax + 0x3a0], ecx
mov ecx, dword [eax + 0x740]
cmp ecx, ebp
jle 0x41c7d4
add ecx, 0xfffffffd
mov dword [eax + 0x740], ecx
add eax, 0xe80
cmp eax, 0x436e34
jl 0x41c790
jmp 0x41c7e6
mov dword [esp + 0x14], ebp
cmp dword [0x196118c], ebp
je 0x41c867
cmp edi, dword [esp + 0x24]
jl 0x41c867
jg 0x41c7fc
cmp ebx, dword [esp + 0x20]
jbe 0x41c867
cmp dword [0x1961b90], ebp
je 0x41c850
push 0x14
call dword [0x42d364]
add esp, 4
cmp eax, ebp
jne 0x41c81d
call dword [0x42d36c]
xor eax, eax
jmp 0x41c837
mov dword [eax + 8], 0x1961ee4
mov dword [eax], ebp
mov dword [eax + 4], 5
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], ebp
mov ecx, dword [0x1961b90]
push ecx
mov ebx, eax
call fcn.00420400
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x20]
add esp, 4
mov eax, ebx
add eax, 0xa
mov dword [esp + 0x20], eax
mov eax, edi
adc eax, ebp
mov dword [esp + 0x24], eax
mov dword [0x196118c], ebp
mov edx, dword [esp + 0x14]
push edx
push edi
push ebx
call fcn.004198b0
add esp, 0xc
call dword [0x1961b94]
call fcn.00419aa0
call fcn.00415350
call fcn.00416330
call fcn.00415db0
jmp 0x41c4c0