Function at 0x401f3c
Capabilities:
Resolve function by parsing pe exports

Disassembly:
jmp 0x41a234
mov eax, 0x8053b5
call fcn.0072bca0
sub esp, 0x5fc
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0x28]
call sub.MFC42.DLL_CString::CString_3
and dword [ebp - 4], 0
cmp dword [ebp + 8], 0
je 0x41a262
push str.HEAD
jmp 0x41a267
push str.GET
lea ecx, [ebp - 0x28]
call sub.MFC42.DLL_CString::operator_3
push 1
or ebx, 0xffffffff
pop edi
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString_3
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString_3
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString_3
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString_3
and dword [esi + 0x20], 0
and dword [esi + 0x24], 0
push 0x8bd670
lea ecx, [esi + 0x30]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::operator_3
and dword [esi + 0x2c], 0
mov ecx, esi
call fcn.00401a14
test eax, eax
je 0x41ac87
cmp dword [esi + 0x10], 0
jne 0x41ac8c
mov eax, dword [esi + 0x88]
sub eax, 0
je 0x41a76a
dec eax
je 0x41a757
dec eax
dec eax
je 0x41a67d
dec eax
je 0x41a59d
dec eax
jne 0x41ac87
movzx ecx, word [esi + 0x84]
mov eax, dword [esi + 0x80]
push edi
push dword [esi + 0x40]
push ecx
push eax
push dword [esi + 0xa8]
call fcn.004025d6
add esp, 0x14
cmp eax, ebx
je 0x41ac94
cmp dword [esi + 0x8c], 0
push 0x8bd670
lea ecx, [ebp - 0x14]
je 0x41a350
call sub.MFC42.DLL_CString::operator_3
push 0
lea ecx, [ebp - 0x14]
call fcn.0072b104
push 2
jmp 0x41a357
call sub.MFC42.DLL_CString::operator_3
push 0
lea ecx, [ebp - 0x14]
call fcn.0072b104
mov eax, dword [ebp - 0x14]
push dword [esi + 0x48]
mov edx, dword [esi + 0xa8]
mov dword [ebp - 0xe8], eax
mov ecx, dword [eax - 8]
lea eax, [ebp - 0xec]
push 3
push eax
push edx
mov byte [ebp - 0xec], 5
mov byte [ebp - 0xeb], cl
call fcn.004018a2
add esp, 0x10
cmp eax, ebx
je 0x41ac94
push 0xc
lea eax, [ebp - 0x34]
push 0
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x34]
push 0x23
push eax
push dword [esi + 0xac]
call fcn.004014e2
add esp, 0x1c
cmp eax, ebx
je 0x41ac94
lea eax, [ebp - 0x34]
push 0x23
push eax
call fcn.004027f7
pop ecx
test eax, eax
pop ecx
je 0x41ac94
movzx eax, byte [ebp - 0x33]
sub eax, 0
je 0x41a462
dec eax
dec eax
jne 0x41ac87
cmp dword [esi + 0x8c], 0
je 0x41ac87
push dword [esi + 0x48]
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x90]
push eax
push ecx
push dword [esi + 0xa8]
call fcn.004018de
add esp, 0x10
cmp eax, ebx
je 0x41ac94
push 0xc
lea eax, [ebp - 0x34]
push 0
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x34]
push 0x24
push eax
push dword [esi + 0xac]
call fcn.004014e2
add esp, 0x1c
cmp eax, ebx
je 0x41ac94
lea eax, [ebp - 0x34]
push 0x24
push eax
call fcn.004027f7
pop ecx
test eax, eax
pop ecx
je 0x41ac94
mov eax, dword [esi + 0x98]
lea edi, [esi + 0x98]
push 1
push eax
call fcn.00402216
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 0x20], eax
je 0x41a4ce
push 0x8bd670
lea ecx, [ebp - 0x18]
mov byte [ebp + 0xb], 1
call sub.MFC42.DLL_CString::operator_3
push dword [ebp - 0x20]
call dword [sym.imp.WS2_32.dll_htonl]
mov edi, eax
lea ecx, [ebp - 0x18]
shr eax, 0x18
push eax
call fcn.0072b104
mov eax, edi
lea ecx, [ebp - 0x18]
shr eax, 0x10
push eax
call fcn.0072b104
mov eax, edi
lea ecx, [ebp - 0x18]
shr eax, 8
push eax
call fcn.0072b104
push edi
lea ecx, [ebp - 0x18]
call fcn.0072b104
jmp 0x41a4fb
mov eax, dword [edi]
push 0x8bd670
lea ecx, [ebp - 0x18]
mov byte [ebp + 0xb], 3
mov eax, dword [eax - 8]
mov dword [ebp - 0x20], eax
call sub.MFC42.DLL_CString::operator_3
push dword [ebp - 0x20]
lea ecx, [ebp - 0x18]
call fcn.0072b104
push edi
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::operator_2
mov ax, word [esi + 0xa4]
mov edi, dword [esi + 0x48]
mov dl, byte [ebp + 0xb]
mov ecx, dword [esi + 0xa8]
and byte [ebp - 0xba], 0
mov word [ebp - 0xb4], ax
push edi
lea eax, [ebp - 0xbc]
mov byte [ebp - 0xb9], dl
mov edx, dword [ebp - 0x18]
push 5
push eax
push ecx
mov byte [ebp - 0xbc], 5
mov byte [ebp - 0xbb], 1
mov dword [ebp - 0xb8], edx
call fcn.004018a2
add esp, 0x10
cmp eax, ebx
je 0x41ac90
push 0xc
lea eax, [ebp - 0x34]
push 0
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x34]
push 0x25
push eax
push dword [esi + 0xac]
call fcn.004014e2
add esp, 0x1c
cmp eax, ebx
je 0x41ac90
lea eax, [ebp - 0x34]
push 0x25
push eax
call fcn.004027f7
pop ecx
pop ecx
test eax, eax
push 1
je 0x41ac89
pop edi
jmp 0x41a793
mov eax, dword [esi + 0x98]
push edi
push eax
call fcn.00402216
pop ecx
cmp eax, ebx
pop ecx
jne 0x41a67d
movzx ecx, word [esi + 0x84]
mov eax, dword [esi + 0x80]
push edi
push dword [esi + 0x40]
push ecx
push eax
push dword [esi + 0xa8]
call fcn.004025d6
add esp, 0x14
cmp eax, ebx
je 0x41ac94
mov eax, dword [esi + 0x90]
push 1
mov ecx, dword [esi + 0x98]
mov dx, word [esi + 0xa4]
pop edi
and byte [ebp - 0x98], 0
push dword [esi + 0x48]
and byte [ebp - 0x90], 0
mov dword [ebp - 0x9c], eax
lea eax, [ebp - 0xa4]
push 2
push eax
push dword [esi + 0xa8]
mov byte [ebp - 0xa4], 4
mov byte [ebp - 0xa3], 1
mov word [ebp - 0xa2], dx
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0x94], ecx
call fcn.004018a2
add esp, 0x10
cmp eax, ebx
je 0x41ac94
push 0xc
lea eax, [ebp - 0x34]
push 0
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x34]
push 0x22
push eax
push dword [esi + 0xac]
call fcn.004014e2
add esp, 0x1c
cmp eax, ebx
je 0x41ac94
push 0x22
jmp 0x41a748
mov eax, dword [esi + 0x98]
push edi
push eax
call fcn.00402216
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 0x20], eax
je 0x41ac94
movzx ecx, word [esi + 0x84]
mov eax, dword [esi + 0x80]
push edi
push dword [esi + 0x40]
push ecx
push eax
push dword [esi + 0xa8]
call fcn.004025d6
add esp, 0x14
cmp eax, ebx
je 0x41ac94
mov eax, dword [esi + 0x90]
push dword [esi + 0x48]
mov cx, word [esi + 0xa4]
mov edx, dword [esi + 0xa8]
and byte [ebp - 0xc8], 0
mov dword [ebp - 0xcc], eax
lea eax, [ebp - 0xd4]
mov word [ebp - 0xd2], cx
mov ecx, dword [ebp - 0x20]
push edi
push eax
push edx
mov byte [ebp - 0xd4], 4
mov byte [ebp - 0xd3], 1
mov dword [ebp - 0xd0], ecx
call fcn.004018a2
add esp, 0x10
cmp eax, ebx
je 0x41ac94
push 0xc
lea eax, [ebp - 0x34]
push 0
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x34]
push 0x21
push eax
push dword [esi + 0xac]
call fcn.004014e2
add esp, 0x1c
cmp eax, ebx
je 0x41ac94
push 0x21
lea eax, [ebp - 0x34]
push eax
call fcn.004027f7
pop ecx
pop ecx
test eax, eax
jmp 0x41a78d
mov eax, dword [esi + 0x80]
push edi
push dword [esi + 0x40]
movzx ecx, word [esi + 0x84]
jmp 0x41a77b
mov eax, dword [esi + 0x98]
push edi
push dword [esi + 0x40]
movzx ecx, word [esi + 0xa4]
push ecx
push eax
push dword [esi + 0xa8]
call fcn.004025d6
add esp, 0x14
cmp eax, ebx
je 0x41ac94
xor ebx, ebx
cmp dword [esi + 0x10], ebx
jne 0x41ac8c
cmp dword [esi + 0x88], edi
jne 0x41a8b3
lea eax, [esi + 4]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x74]
push eax
call sub.MFC42.DLL_operator_4
push str._HTTP_1.1_r_n
push eax
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 5
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 6
call sub.MFC42.DLL_CString::operator
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
cmp dword [esi + 0x8c], ebx
je 0x41a905
push 0x8bd670
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::operator_3
lea eax, [esi + 0x90]
push 0x8aaf00
push eax
lea eax, [ebp - 0x84]
push eax
call sub.MFC42.DLL_operator_3
lea ecx, [esi + 0x94]
mov byte [ebp - 4], 7
push ecx
push eax
lea eax, [ebp - 0x40]
push eax
call sub.MFC42.DLL_operator_4
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push ecx
push eax
mov byte [ebp - 4], 8
call fcn.00401762
pop ecx
mov byte [ebp - 4], 7
pop ecx
lea ecx, [ebp - 0x40]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x78]
push str.Proxy_Authorization:_Basic
push eax
call sub.MFC42.DLL_operator
mov edi, 0x8aaed8
mov byte [ebp - 4], 9
push edi
push eax
lea eax, [ebp - 0x48]
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xa
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 9
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x78]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
jmp 0x41a90a
lea eax, [esi + 0x9c]
push eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x8c]
push eax
call sub.MFC42.DLL_operator_4
push str._HTTP_1.1_r_n
push eax
lea eax, [ebp - 0x50]
mov byte [ebp - 4], 0xb
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xc
call sub.MFC42.DLL_CString::operator
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0xb
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
mov edi, 0x8aaed8
cmp dword [esi + 0x70], ebx
je 0x41a9ba
push 0x8bd670
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::operator_3
lea eax, [esi + 0x74]
push 0x8aaf00
push eax
lea eax, [ebp - 0x80]
push eax
call sub.MFC42.DLL_operator_3
lea ecx, [esi + 0x78]
mov byte [ebp - 4], 0xd
push ecx
push eax
lea eax, [ebp - 0x58]
push eax
call sub.MFC42.DLL_operator_4
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push ecx
push eax
mov byte [ebp - 4], 0xe
call fcn.00401762
pop ecx
mov byte [ebp - 4], 0xd
pop ecx
lea ecx, [ebp - 0x58]
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x88]
push str.Authorization:_Basic
push eax
call sub.MFC42.DLL_operator
push edi
push eax
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 0xf
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x10
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0xf
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea eax, [esi + 0x98]
push eax
lea eax, [ebp - 0x7c]
push str.Host:
push eax
call sub.MFC42.DLL_operator
push edi
push eax
lea eax, [ebp - 0x68]
mov byte [ebp - 4], 0x11
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x12
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x11
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
push str.Accept:___r_n
lea ecx, [ebp - 0x10]
call fcn.0072b10a
push str.Pragma:_no_cache_r_n
lea ecx, [ebp - 0x10]
call fcn.0072b10a
push str.Cache_Control:_no_cache_r_n
lea ecx, [ebp - 0x10]
call fcn.0072b10a
lea eax, [esi + 0x3c]
push eax
lea eax, [ebp - 0x3c]
push str.User_Agent:
push eax
call sub.MFC42.DLL_operator
push edi
push eax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x13
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x14
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x13
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esi + 0x38]
lea eax, [esi + 0x38]
cmp dword [ecx - 8], ebx
je 0x41aabe
push eax
lea eax, [ebp - 0x4c]
push str.Referer:
push eax
call sub.MFC42.DLL_operator
push edi
push eax
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x15
push eax
call sub.MFC42.DLL_operator_3
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x16
call sub.MFC42.DLL_CString::operator_2
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x15
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
push str.Connection:_close_r_n
lea ecx, [ebp - 0x10]
call fcn.0072b10a
lea ecx, [ebp - 0x24]
call sub.MFC42.DLL_CString::CString_3
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x17
call sub.MFC42.DLL_CString::Empty
mov eax, dword [esi + 0xc]
lea ecx, [ebp - 0x204]
push ecx
push eax
call sub.MFC42.DLL_CFile::GetStatus
test eax, eax
je 0x41ab17
cmp dword [esi + 0x14], ebx
jne 0x41ab17
mov eax, dword [ebp - 0x1f8]
cmp eax, ebx
mov dword [esi + 0x20], eax
jbe 0x41ab17
push eax
lea eax, [ebp - 0x24]
push str.Range:_bytes_d__r_n
push eax
call sub.MFC42.DLL_CString::Format_1
add esp, 0xc
lea eax, [ebp - 0x24]
lea ecx, [ebp - 0x10]
push eax
call sub.MFC42.DLL_CString::operator_2
push 0x8aaed8
lea ecx, [ebp - 0x10]
call fcn.0072b10a
mov eax, dword [ebp - 0x10]
mov ecx, dword [esi + 0x48]
mov dword [ebp + 8], ecx
mov ecx, dword [esi + 0xa8]
mov edi, dword [eax - 8]
xor ebx, ebx
test edi, edi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x54], ecx
jle 0x41ab74
push dword [ebp + 8]
mov eax, edi
sub eax, ebx
push eax
mov eax, dword [ebp - 0x20]
add eax, ebx
push eax
push dword [ebp - 0x54]
call fcn.00402a68
add esp, 0x10
test eax, eax
jl 0x41ab71
add ebx, eax
cmp ebx, edi
jl 0x41ab4e
mov eax, dword [ebp - 0x10]
cmp ebx, dword [eax - 8]
jge 0x41abd0
cmp dword [0x8beb1c], 0x274c
jne 0x41ac98
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
and byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString
push 1
or ebx, 0xffffffff
pop edi
jmp 0x41a275
cmp dword [esi + 0x10], 0
jne 0x41ac9d
lea ecx, [ebp - 0x1c]
call sub.MFC42.DLL_CString::Empty
xor ebx, ebx
push 0x401
lea eax, [ebp - 0x608]
push ebx
push eax
call sub.MSVCRT.dll_memset
push dword [esi + 0x44]
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x608]
push 0x400
push eax
push dword [esi + 0xac]
call fcn.0040207c
add esp, 0x20
cmp eax, 0xffffffff
je 0x41ac98
cmp byte [ebp - 0x608], 0
je 0x41ac48
lea eax, [ebp - 0x608]
lea ecx, [ebp - 0x1c]
push eax
call fcn.0072b10a
cmp dword [ebp - 0x5c], ebx
jne 0x41abe4
push 0x8aaed8
lea ecx, [ebp - 0x1c]
call fcn.0072b10a
jmp 0x41abe4
lea eax, [ebp - 0x1c]
lea edi, [esi + 0x30]
push eax
mov ecx, edi
call sub.MFC42.DLL_CString::operator
mov eax, dword [edi]
mov ecx, esi
mov eax, dword [eax - 8]
mov dword [esi + 0x2c], eax
lea eax, [esi + 0x34]
push eax
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0x1c]
call fcn.00401d66
sub eax, ebx
je 0x41aca1
dec eax
je 0x41ac98
dec eax
je 0x41ab89
dec eax
push 3
jmp 0x41ac9a
push 3
pop esi
jmp 0x41ace0
push 2
jmp 0x41ac89
push 1
jmp 0x41ac89
mov esi, edi
jmp 0x41ace0
push 1
pop esi
jmp 0x41acd4
push 2
jmp 0x41ac9a
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x24]
mov dword [esi + 0x24], eax
cmp dword [ecx - 8], ebx
je 0x41accf
cmp dword [ebp - 0x6c], 0xce
jne 0x41acc9
mov ecx, dword [esi + 0x20]
mov dword [esi + 0x18], 1
add ecx, eax
mov dword [esi + 0x1c], ecx
jmp 0x41acd2
mov dword [esi + 0x18], ebx
mov dword [esi + 0x20], ebx
mov dword [esi + 0x1c], eax
xor esi, esi
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 3
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 2
call sub.MFC42.DLL_CString::CString
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call sub.MFC42.DLL_CString::CString
and byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call sub.MFC42.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4