Function at 0x414430
Capabilities:
Check for time delay via gettickcount
Read file on windows
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x428d04
push eax
mov eax, 0x1086c
mov dword fs:[0], esp
call fcn.004277d0
push ebx
push ebp
push esi
push edi
mov esi, ecx
xor eax, eax
xor ebp, ebp
mov dword [esp + 0x6c], eax
mov dword [esp + 0x10884], ebp
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov byte [esp + 0x24], al
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi + 0x91c]
push 0x433bcc
push ecx
push 0x433cec
mov dword [esp + 0x58], eax
mov byte [esp + 0x27], 0
call fcn.00403020
add esp, 0xc
cmp eax, ebp
jne 0x4144a9
mov byte [esp + 0x1b], 1
mov edx, dword [esp + 0x1088c]
push ebp
push ebp
push 3
push ebp
push 3
push connect
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov ebx, eax
cmp ebx, ebp
mov dword [esp + 0x3c], ebx
je 0x414d96
or edi, 0xffffffff
cmp ebx, edi
je 0x414d99
lea eax, [esp + 0x30]
push ebp
push eax
lea ecx, [esp + 0x484]
push 0x46
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
je 0x414517
lea edx, [esp + 0x24]
lea eax, [esp + 0x6c]
push edx
push eax
lea ecx, [esp + 0x484]
push 0x46
push ecx
call fcn.00413210
add esp, 0x10
cmp eax, ebp
je 0x41453b
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], edi
call sub.MFC42.DLL_CString::CString
mov eax, 2
jmp 0x414db7
mov dl, byte [0x433ae8]
mov ecx, 0x10
xor eax, eax
lea edi, [esp + 0xad]
mov byte [esp + 0xac], dl
mov byte [esp + 0xf0], dl
rep stosd dword es:[edi], eax
mov ecx, 0x20
lea edi, [esp + 0xf1]
rep stosd dword es:[edi], eax
mov dword [esp + 0x61], eax
mov ecx, 0x20
mov dword [esp + 0x65], eax
lea edi, [esp + 0x175]
mov byte [esp + 0x174], dl
mov word [esp + 0x69], ax
rep stosd dword es:[edi], eax
mov ecx, 0x3f
lea edi, [esp + 0x1f9]
mov byte [esp + 0x1f8], dl
mov byte [esp + 0x2f8], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x2f9]
mov byte [esp + 0x88], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 8
xor eax, eax
lea edi, [esp + 0x89]
mov byte [esp + 0x60], dl
mov edx, dword [esp + 0x24]
mov dword [esp + 0x34], ebp
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x3f8]
lea eax, [esp + 0x54]
push ecx
push edx
push ebp
lea ecx, [esp + 0x54]
push eax
lea edx, [esp + 0x54]
push ecx
lea eax, [esp + 0x188]
push edx
lea ecx, [esp + 0xa0]
push eax
lea edx, [esp + 0x54]
push ecx
lea eax, [esp + 0x54]
push edx
lea ecx, [esp + 0x74]
push eax
lea edx, [esp + 0x320]
push ecx
lea eax, [esp + 0x224]
push edx
lea ecx, [esp + 0x90]
push eax
lea edx, [esp + 0x124]
push ecx
lea eax, [esp + 0xe4]
push edx
lea ecx, [esp + 0xa8]
push eax
push ecx
push ebx
mov ecx, esi
mov dword [esp + 0x98], ebp
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x80], ebp
mov dword [esp + 0x90], ebp
mov dword [esp + 0x9c], ebp
call fcn.00416f10
cmp eax, ebp
je 0x4146a3
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 3
jmp 0x414db7
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x7c]
sub edx, eax
je 0x414d71
lea eax, [esp + 0x30]
push ebp
push eax
lea ecx, [esp + 0x60]
push 3
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
jne 0x4146f3
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 5
jmp 0x414db7
mov eax, dword [esp + 0x59]
mov edx, dword [esp + 0x5a]
and eax, 0xff
and edx, 0xff
shl eax, 8
add eax, edx
cmp eax, ebp
jg 0x414737
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 6
jmp 0x414db7
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x7c]
sub eax, edx
lea ecx, [esp + 0x14]
sub eax, 3
mov dword [esp + 0x14], ebp
push eax
push ecx
mov ecx, dword [esi + 0x14594]
push ebx
call fcn.00424de0
cmp dword [esp + 0x14], ebp
jne 0x414788
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 7
jmp 0x414db7
mov edx, dword [esi + 0x14594]
lea eax, [esi + 0x4e]
lea ecx, [esi + 0xd]
push eax
mov eax, dword [edx + 0x44]
push ecx
push eax
call fcn.00401260
mov ebx, dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
cmp eax, ebp
jne 0x414826
push 0x50c
call sub.MFC42.DLL_operatornew
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x414824
mov ecx, 0x143
xor eax, eax
mov edi, ebp
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xac]
push ecx
push 0x431080
push ebp
call ebx
lea edx, [esp + 0xfc]
lea eax, [ebp + 0x41]
push edx
push 0x431080
push eax
call ebx
lea eax, [esi + 0xd]
lea ecx, [ebp + 0xc2]
push eax
push 0x431080
push ecx
call ebx
lea eax, [esi + 0x4e]
lea edx, [ebp + 0x103]
push eax
push 0x431080
push edx
call ebx
mov eax, dword [esi + 0x14594]
add eax, 0x44
push eax
push ebp
call fcn.00401210
add esp, 0x38
xor ebp, ebp
mov eax, dword [esi + 0x14594]
lea ecx, [esp + 0xf0]
push ecx
lea edx, [esp + 0xb0]
mov ecx, dword [eax + 0x48]
push edx
push ecx
call fcn.00401340
add esp, 0xc
cmp eax, ebp
jne 0x4149b4
push 0x594
call sub.MFC42.DLL_operatornew
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x4149b2
lea edx, [esp + 0xac]
mov ecx, 0x165
xor eax, eax
mov edi, ebp
push edx
push 0x431080
rep stosd dword es:[edi], eax
push ebp
call ebx
lea eax, [esp + 0xfc]
lea ecx, [ebp + 0x41]
push eax
push 0x431080
push ecx
call ebx
lea edx, [esp + 0xa0]
lea eax, [ebp + 0xc2]
push edx
push 0x431080
push eax
call ebx
mov ecx, dword [esp + 0x5c]
lea edx, [esp + 0x84]
push edx
lea eax, [ebp + 0x148]
push 0x431080
push eax
mov dword [ebp + 0x144], ecx
call ebx
mov ecx, dword [esp + 0x74]
mov dword [ebp + 0x154], ecx
mov edx, dword [esp + 0x80]
mov dword [ebp + 0x158], edx
mov eax, dword [esp + 0x64]
mov dword [ebp + 0x15c], eax
mov ecx, dword [esp + 0x84]
mov dword [ebp + 0x3e8], ecx
mov dword [ebp + 0x3ec], 0
mov edx, dword [esp + 0x78]
lea ecx, [esp + 0x1a4]
mov dword [ebp + 0x3e4], edx
mov eax, dword [esp + 0x54]
push ecx
lea edx, [ebp + 0x160]
and eax, 0xff
push 0x431080
push edx
mov dword [ebp + 0x3f0], eax
call ebx
lea eax, [esp + 0x234]
lea ecx, [ebp + 0x1e1]
push eax
push 0x431080
push ecx
call ebx
add esp, 0x48
lea edx, [esp + 0x2f8]
lea eax, [ebp + 0x2e1]
push edx
push 0x431080
push eax
call ebx
lea ecx, [esp + 0x404]
lea edx, [ebp + 0x3f4]
push ecx
push 0x431080
push edx
call ebx
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 4]
mov dword [ebp + 0x580], ecx
mov edx, dword [esp + 0x2c]
xor ecx, ecx
mov eax, dword [edx + 8]
mov dword [ebp + 0x584], eax
mov edx, dword [esp + 0x2c]
mov cl, byte [edx]
mov dword [ebp + 0x588], ecx
mov eax, dword [esi + 0x14594]
add eax, 0x48
push eax
push ebp
call fcn.004012f0
add esp, 0x20
xor ebp, ebp
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x14]
push edx
mov cl, byte [eax]
mov edi, dword [eax + 4]
and ecx, 0x7f
sub edi, ecx
mov dword [esp + 0x84], edi
call fcn.00401070
add esp, 4
mov ecx, esi
mov dword [esi + 0x8e8], 0xc8
push 0xc8
call fcn.00413760
mov ecx, esi
call fcn.00413d20
push edi
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push str.Content_length
call sub.MFC42.DLL_CString::CString_2
mov ecx, esi
call fcn.00413530
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str.no_cache_no_store_max_age0_s_maxage0_must_revalidate
call sub.MFC42.DLL_CString::CString_2
push ecx
mov byte [esp + 0x1088c], 1
mov ecx, esp
mov dword [esp + 0x24], esp
push str.Cache_Control
call sub.MFC42.DLL_CString::CString_2
mov ecx, esi
mov byte [esp + 0x1088c], 0
call fcn.00413460
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str.bytes
call sub.MFC42.DLL_CString::CString_2
push ecx
mov byte [esp + 0x1088c], 2
mov ecx, esp
mov dword [esp + 0x24], esp
push str.Accept_Ranges
call sub.MFC42.DLL_CString::CString_2
mov ecx, esi
mov byte [esp + 0x1088c], 0
call fcn.00413460
push 0x432820
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x20]
mov ecx, esi
push eax
mov byte [esp + 0x10888], 3
call fcn.004133e0
lea ecx, [esp + 0x20]
mov byte [esp + 0x10884], 0
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esi + 0x14550]
mov eax, dword [esi + 0x14540]
push ecx
mov ecx, dword [esi + 4]
push eax
call fcn.00426820
mov edx, dword [esi + 0x14550]
mov eax, dword [esi + 0x8f8]
mov ebx, edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x40], ebp
mov byte [esp + 0x13], 1
mov dword [esp + 0x28], ebp
cmp eax, ebp
jne 0x414af4
mov dword [esi + 0x8f8], edi
mov eax, edi
and eax, 0xf
je 0x414b06
sub edi, eax
add edi, 0x10
mov dword [esp + 0x2c], edi
mov ebx, edi
mov edi, dword [esi + 0x904]
mov eax, dword [esp + 0x3c]
push 1
push ebp
push edi
push eax
mov dword [esp + 0x24], edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp edi, ebx
jae 0x414d37
mov al, byte [esi + 0xc]
test al, al
jne 0x414d37
mov al, byte [0x433e54]
test al, al
jne 0x414d37
mov ecx, ebx
sub ecx, edi
cmp ecx, 0x2800
jbe 0x414b52
mov ebx, 0x2800
jmp 0x414b54
sub ebx, edi
xor edi, edi
cmp ebx, ebp
jle 0x414b98
mov al, byte [esi + 0xc]
test al, al
jne 0x414b98
mov al, byte [0x433e54]
test al, al
jne 0x414b98
mov ecx, dword [esp + 0x3c]
lea edx, [esp + 0x30]
push ebp
push edx
lea eax, [esp + edi + 0x484]
push ebx
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_ReadFile]
cmp eax, ebp
je 0x414d32
mov eax, dword [esp + 0x30]
sub ebx, eax
add edi, eax
cmp ebx, ebp
jg 0x414b5a
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x28]
mov al, byte [esp + 0x1b]
add edx, edi
add ecx, edi
mov dword [esp + 0x14], edx
test al, al
mov dword [esp + 0x28], ecx
je 0x414c2c
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x44]
push edx
push ebp
push eax
mov eax, dword [esp + 0x44]
lea edx, [esp + 0x6c]
push ecx
push edx
lea ecx, [esp + 0x9c]
push eax
push ecx
push ecx
lea edx, [esp + 0x110]
mov ecx, esp
mov dword [esp + 0xa4], esp
push edx
call sub.MFC42.DLL_CString::CString_2
push ecx
lea eax, [esp + 0xd0]
mov ecx, esp
mov dword [esp + 0x7c], esp
push eax
mov byte [esp + 0x108ac], 4
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [esp + 0x48]
lea edx, [esp + 0x4a0]
and ecx, 0xff
mov byte [esp + 0x108a8], 0
push ecx
push edi
push edx
mov ecx, esi
call fcn.00414de0
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x14]
cmp ecx, eax
mov ebx, edi
jbe 0x414c6e
mov edx, ecx
sub ebx, edx
add ebx, eax
cmp ebx, ebp
jle 0x414d37
mov eax, dword [esi + 0x8f8]
mov edx, dword [esp + 0x28]
cmp edx, eax
ja 0x414c84
mov eax, dword [esi + 0x8fc]
mov ecx, ebx
sub ecx, eax
lea edx, [esp + eax + 0x47c]
push ecx
push edx
jmp 0x414cac
cmp edi, ebp
jle 0x414d37
mov eax, dword [esi + 0x8f8]
mov edx, dword [esp + 0x28]
cmp edx, eax
jbe 0x414c9b
mov ecx, dword [esi + 0x8fc]
sub eax, ecx
sub eax, edx
add eax, edi
push eax
lea eax, [esp + ecx + 0x480]
push eax
jmp 0x414cac
mov eax, dword [esi + 0x8fc]
sub edi, eax
lea ecx, [esp + eax + 0x47c]
push edi
push ecx
mov ecx, dword [esi + 4]
call fcn.00426820
mov ecx, dword [esp + 0x40]
mov edi, eax
add ecx, ebx
mov dword [esi + 0x8f4], ebp
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x1c]
add ecx, ebx
mov dword [esi + 0x8fc], ebp
mov dword [esp + 0x1c], ecx
je 0x414d12
mov eax, dword [esi + 0x14594]
mov edx, dword [esp + 0x4c]
push ecx
push edx
mov ebx, dword [eax + 0x14]
add ebx, ecx
mov dword [eax + 0x14], ebx
mov eax, dword [esi + 0x14594]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
push ecx
push edx
push 1
call fcn.00414330
add esp, 0x14
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x4c], eax
mov dword [esp + 0x1c], ebp
cmp edi, 0xffffffff
je 0x414d2c
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
cmp ecx, eax
jae 0x414d37
mov edi, ecx
mov ebx, eax
jmp 0x414b27
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov byte [esp + 0x13], 0
mov ecx, dword [esp + 0x3c]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, byte [esp + 0x13]
mov dword [esp + 0x10884], 0xffffffff
test al, al
lea ecx, [esp + 0x1088c]
je 0x414d65
call sub.MFC42.DLL_CString::CString
xor eax, eax
jmp 0x414db7
call sub.MFC42.DLL_CString::CString
mov eax, 0x64
jmp 0x414db7
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov eax, 8
jmp 0x414db7
or edi, 0xffffffff
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0x1088c]
mov dword [esp + 0x10884], edi
call sub.MFC42.DLL_CString::CString
mov eax, 1
mov ecx, dword [esp + 0x1087c]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x10878
ret 4