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

Disassembly:
sub esp, 0xc
push ebx
push ebp
push esi
mov ebx, dword [esp + 0x24]
push edi
mov edi, dword [esp + 0x20]
mov eax, dword [edi + 0xac]
lea esi, [edi + 0x50]
mov dword [esi + 0x60], eax
push dword [ebx]
push 0xa
push eax
call dword [sym.imp.MSVCRT.dll_memchr]
add esp, 0xc
mov dword [esi + 0x64], eax
test eax, eax
je 0x419be9
mov ebp, dword [esi + 0x64]
sub ebp, dword [esi + 0x5c]
inc ebp
sub dword [ebx], ebp
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
push esi
push edi
call fcn.00419da7
add esp, 0xc
test eax, eax
jne 0x419d39
mov eax, dword [esi + 0x54]
xor edx, edx
cmp dword [esi + 0x50], edx
mov dword [esi + 0x64], eax
mov eax, dword [edi + 0x5ec]
mov dword [esi + 0x68], eax
jne 0x418eb1
cmp dword [esi + 0x58], 5
jbe 0x418eb1
push dword [edi + 0x5ec]
push dword [esp + 0x28]
push edi
call fcn.00419d97
add esp, 0xc
test eax, eax
je 0x419c3e
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x419949
cmp cl, 0xd
je 0x41994e
mov ecx, dword [esi + 0x50]
cmp ecx, edx
lea ebx, [ecx + 1]
mov dword [esi + 0x50], ebx
jne 0x41914b
mov ecx, dword [esp + 0x24]
mov ecx, dword [ecx + 0x32c]
mov ecx, dword [ecx + 0x3c]
test cl, 3
je 0x418f99
mov ecx, dword [esp + 0x24]
lea ebx, [esi + 0x78]
push ebx
lea ebp, [ecx + 0x150]
lea ecx, [esp + 0x14]
push ebp
push ecx
push str._HTTP__d._d__d
push eax
call dword [sym.imp.MSVCRT.dll_sscanf]
add esp, 0x14
cmp eax, 3
jne 0x418f4e
mov eax, dword [esp + 0x10]
lea eax, [eax + eax*4]
shl eax, 1
add dword [ebp], eax
cmp dword [esi + 0x88], 2
mov ebp, dword [ebp]
jne 0x418ff9
cmp ebp, 0x14
je 0x418ff9
push str.Lying_server__not_serving_HTTP_2_n
push edi
call fcn.0040e1a7
pop ecx
pop ecx
jmp 0x418ff9
push ebx
push str._HTTP__3d
push dword [esi + 0x68]
call dword [sym.imp.MSVCRT.dll_sscanf]
add esp, 0xc
mov dword [esp + 0x20], eax
test eax, eax
mov dword [ebp], 0xa
jne 0x418ff9
push dword [esi + 0x68]
push edi
call fcn.00419d41
pop ecx
test eax, eax
pop ecx
je 0x418fee
mov dword [ebx], 0xc8
mov dword [esp + 0x20], 1
mov dword [ebp], 0xa
jmp 0x418fee
test ecx, 0x40000
je 0x419c6a
mov ecx, dword [esp + 0x24]
lea ebx, [esi + 0x78]
push ebx
lea ebp, [ecx + 0x154]
lea ecx, [esp + 0x18]
push ebp
push ecx
push str._RTSP__d._d__3d
push eax
call dword [sym.imp.MSVCRT.dll_sscanf]
add esp, 0x14
cmp eax, 3
jne 0x418fe9
mov eax, dword [esp + 0x14]
lea eax, [eax + eax*4]
shl eax, 1
add dword [ebp], eax
mov eax, dword [esp + 0x24]
mov dword [eax + 0x150], 0xb
jmp 0x418ff9
and dword [esp + 0x20], 0
cmp dword [esp + 0x20], 0
je 0x419c6a
mov eax, dword [ebx]
mov ecx, dword [esp + 0x24]
mov edx, dword [edi + 0x8724]
mov dword [edi + 0x87a4], eax
mov eax, dword [ecx + 0x150]
xor ebp, ebp
mov dword [edi + 0x87ac], eax
lea eax, [edi + 0x8724]
cmp edx, ebp
je 0x41902b
cmp edx, dword [ecx + 0x150]
jle 0x419033
mov edx, dword [ecx + 0x150]
mov dword [eax], edx
cmp dword [edi + 0x300], ebp
je 0x419093
mov edx, dword [ebx]
cmp edx, 0x190
jl 0x419093
cmp edx, 0x191
jne 0x419055
cmp dword [ecx + 0x2bc], ebp
jne 0x419093
cmp edx, 0x197
jne 0x419065
cmp dword [ecx + 0x2c0], ebp
jne 0x419093
mov ebp, dword [edi + 0x8748]
lea eax, [edi + 0x8748]
or ebp, dword [eax + 4]
je 0x419c61
cmp dword [edi + 0x25c], 1
jne 0x419c61
cmp edx, 0x1a0
jne 0x419c61
mov eax, dword [ecx + 0x150]
cmp eax, 0xa
jne 0x4190bb
push str.HTTP_1.0__assume_close_after_body_n
push edi
call fcn.0040e1a7
mov eax, dword [esp + 0x2c]
pop ecx
pop ecx
mov dword [eax + 0x2a4], 1
jmp 0x419113
cmp eax, 0x14
je 0x419107
cmp dword [esi + 0x88], 1
jne 0x4190ce
cmp dword [ebx], 0x65
je 0x419107
cmp eax, 0xb
jl 0x419113
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x2a4], 0
jne 0x419113
cmp dword [eax + 0x628], 0
lea ebp, [eax + 0x628]
je 0x419113
push eax
push edi
call fcn.0041ab35
pop ecx
test eax, eax
pop ecx
jne 0x419113
mov eax, dword [ebp]
mov dword [eax], 1
jmp 0x419113
mov eax, dword [ecx + 0x628]
mov dword [eax], 2
mov ebx, dword [ebx]
sub ebx, 0xcc
je 0x419122
sub ebx, 0x64
jne 0x41914b
xor eax, eax
cmp dword [edi + 0x254], eax
je 0x419136
mov dword [edi + 0x87b4], 1
mov dword [esi], eax
mov dword [esi + 0x10], eax
mov dword [esi + 4], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0xb0], 1
xor ebx, ebx
cmp dword [esi + 0xb0], ebx
jne 0x4191ff
cmp dword [edi + 0x35c], ebx
jne 0x4191ff
mov ebp, str.Content_Length:
push ebp
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4191ff
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push ebx
push eax
call fcn.0041eca3
mov ebx, dword [edi + 0x2c8]
mov ecx, dword [edi + 0x2cc]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x4191b7
cmp edx, ecx
jg 0x419c73
jl 0x4191b7
cmp eax, ebx
ja 0x419c73
test edx, edx
jl 0x4191dc
jg 0x4191c1
test eax, eax
jb 0x4191dc
push edx
push eax
mov dword [esi], eax
mov dword [esi + 0x10], eax
push edi
mov dword [esi + 4], edx
mov dword [esi + 0x14], edx
call fcn.00415203
add esp, 0xc
jmp 0x4198de
mov ecx, dword [esp + 0x24]
push edx
push eax
push str.Negative_content_length:__I64d__closing_after_transfer_n
push edi
mov dword [ecx + 0x2a4], 1
call fcn.0040e1a7
add esp, 0x10
jmp 0x4198de
mov ebp, str.Content_Type:
push ebp
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x41924e
push dword [esi + 0x68]
call fcn.004165fa
mov ebp, eax
pop ecx
cmp ebp, ebx
je 0x419c84
cmp byte [ebp], 0
je 0x4192ab
push dword [edi + 0x87cc]
lea ebx, [edi + 0x87cc]
call dword [0x4236e0]
pop ecx
mov dword [ebx], ebp
jmp 0x4198de
mov ebp, str.Server:
push ebp
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4192b1
mov ebx, dword [esp + 0x24]
cmp dword [ebx + 0x150], 0x14
jge 0x4198de
push dword [esi + 0x68]
call fcn.004165fa
mov ebp, eax
mov eax, dword [ebx + 0x628]
test eax, eax
pop ecx
je 0x4192ab
cmp dword [eax], 1
jne 0x4192ab
push ebp
push edi
call fcn.0041acc3
pop ecx
test eax, eax
pop ecx
je 0x4192ab
mov eax, dword [ebx + 0x628]
or dword [eax], 0xffffffff
push ebp
jmp 0x419889
mov ebp, dword [esp + 0x24]
cmp dword [ebp + 0x150], 0xa
jne 0x4192ec
cmp dword [ebp + 0x2b8], ebx
je 0x4192ec
push str.keep_alive
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.0041735c
add esp, 0xc
test eax, eax
je 0x4192ec
mov dword [ebp + 0x2a4], ebx
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
jmp 0x419354
cmp dword [ebp + 0x150], 0xb
jne 0x419327
cmp dword [ebp + 0x2b8], ebx
je 0x419327
push str.close
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.0041735c
add esp, 0xc
test eax, eax
je 0x419327
mov dword [ebp + 0x2a4], 1
push str.HTTP_1.1_proxy_connection_set_close__n
jmp 0x419354
cmp dword [ebp + 0x150], 0xa
jne 0x419360
push str.keep_alive
push str.Connection:
push dword [esi + 0x68]
call fcn.0041735c
add esp, 0xc
test eax, eax
je 0x419360
mov dword [ebp + 0x2a4], ebx
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
call fcn.0040e1a7
pop ecx
jmp 0x41988f
push str.close
push str.Connection:
push dword [esi + 0x68]
call fcn.0041735c
add esp, 0xc
test eax, eax
je 0x419388
mov dword [ebp + 0x2a4], 1
jmp 0x4198de
mov ebp, str.Transfer_Encoding:
push ebp
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4194e7
mov ebx, dword [esi + 0x68]
mov ebp, str.x_gzip
add ebx, 0x12
mov al, byte [ebx]
test al, al
je 0x4193f1
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x4193d4
movzx eax, al
push 8
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
pop ecx
pop ecx
jmp 0x4193e5
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
movzx eax, al
mov ecx, dword [ecx]
mov al, byte [ecx + eax*2]
and eax, 8
test eax, eax
jne 0x4193ee
cmp byte [ebx], 0x2c
jne 0x4193f1
inc ebx
jmp 0x4193b3
push str.chunked
call sub.MSVCRT.dll_strlen
push eax
push ebx
push str.chunked
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x419425
push dword [esp + 0x24]
mov dword [esi + 0xc4], 1
call fcn.0041f028
pop ecx
add ebx, 7
cmp dword [esi + 0x8c], 0
jne 0x4198de
push str.identity
call sub.MSVCRT.dll_strlen
push eax
push ebx
push str.identity
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x41945e
and dword [esi + 0x8c], 0
add ebx, 8
jmp 0x4193b3
push str.deflate
call sub.MSVCRT.dll_strlen
push eax
push ebx
push str.deflate
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x41948d
mov dword [esi + 0x8c], 1
add ebx, 7
jmp 0x4193b3
push str.gzip
call sub.MSVCRT.dll_strlen
push eax
push ebx
push str.gzip
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4194bc
mov dword [esi + 0x8c], 2
add ebx, 4
jmp 0x4193b3
push ebp
call sub.MSVCRT.dll_strlen
push eax
push ebx
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4198de
mov dword [esi + 0x8c], 2
add ebx, 6
jmp 0x4193b3
mov ebp, str.Content_Encoding:
push ebp
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4195e8
cmp dword [edi + 0x3a4], ebx
je 0x4195e8
mov ebx, dword [esi + 0x68]
add ebx, 0x11
mov al, byte [ebx]
test al, al
je 0x419552
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x41953a
movzx eax, al
push 8
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
pop ecx
pop ecx
jmp 0x41954b
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
movzx eax, al
mov ecx, dword [ecx]
mov al, byte [ecx + eax*2]
and eax, 8
test eax, eax
je 0x419552
inc ebx
jmp 0x419519
mov ebp, str.identity
push ebp
call sub.MSVCRT.dll_strlen
push eax
push ebx
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x419578
and dword [esi + 0x8c], 0
jmp 0x4198de
mov ebp, str.deflate
push ebp
call sub.MSVCRT.dll_strlen
push eax
push ebx
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4195a1
mov dword [esi + 0x8c], 1
jmp 0x4198de
mov ebp, str.gzip
push ebp
call sub.MSVCRT.dll_strlen
push eax
push ebx
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
jne 0x4195d9
mov ebp, str.x_gzip
push ebp
call sub.MSVCRT.dll_strlen
push eax
push ebx
push ebp
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4198de
mov dword [esi + 0x8c], 2
jmp 0x4198de
mov ebx, str.Content_Range:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4196c8
mov ebx, dword [esi + 0x68]
add ebx, 0xe
mov al, byte [ebx]
test al, al
je 0x41964c
mov ecx, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [ecx], 1
jle 0x41962f
movzx eax, al
push 4
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
pop ecx
pop ecx
jmp 0x419640
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
movzx eax, al
mov ecx, dword [ecx]
mov al, byte [ecx + eax*2]
and eax, 4
test eax, eax
jne 0x41964c
cmp byte [ebx], 0x2a
je 0x41964c
inc ebx
jmp 0x41960e
mov eax, dword [sym.imp.MSVCRT.dll___mb_cur_max]
cmp dword [eax], 1
jle 0x419666
movzx eax, byte [ebx]
push 4
push eax
call dword [sym.imp.MSVCRT.dll__isctype]
pop ecx
pop ecx
jmp 0x419677
mov ecx, dword [sym.imp.MSVCRT.dll__pctype]
movzx eax, byte [ebx]
mov ecx, dword [ecx]
mov al, byte [ecx + eax*2]
and eax, 4
xor ecx, ecx
cmp eax, ecx
je 0x4196b7
push 0xa
push ecx
push ebx
call fcn.0041eca3
mov dword [esi + 0x70], eax
lea eax, [edi + 0x8748]
mov dword [esi + 0x74], edx
add esp, 0xc
mov ecx, dword [eax]
cmp ecx, dword [esi + 0x70]
jne 0x4198de
mov eax, dword [eax + 4]
cmp eax, edx
jne 0x4198de
mov dword [esi + 0x6c], 1
jmp 0x4198de
mov dword [edi + 0x8748], ecx
mov dword [edi + 0x874c], ecx
jmp 0x4198de
cmp dword [edi + 0x4c0], 0
je 0x41973a
mov ebx, str.Set_Cookie:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x41973a
push 2
push 2
push edi
call fcn.00415b7b
mov ecx, dword [esp + 0x30]
add esp, 0xc
mov eax, dword [ecx + 0x35c]
test eax, eax
jne 0x41970e
mov eax, dword [ecx + 0x98]
push dword [edi + 0x8734]
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push dword [edi + 0x4c0]
push edi
call fcn.0040ebde
push 2
push edi
call fcn.00415bb4
add esp, 0x20
jmp 0x4198de
mov ebx, str.Last_Modified:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4197a8
xor ebp, ebp
cmp dword [edi + 0x254], ebp
jne 0x419768
cmp dword [edi + 0x2e4], ebp
je 0x4197aa
push ebp
call dword [sym.imp.MSVCRT.dll_time]
mov dword [esp + 0x1c], eax
pop ecx
lea eax, [esp + 0x18]
push eax
push ebx
call sub.MSVCRT.dll_strlen
add eax, dword [esi + 0x68]
pop ecx
push eax
call fcn.0041e6a1
pop ecx
mov dword [esi + 0x90], eax
cmp dword [edi + 0x2e4], ebp
pop ecx
je 0x4198de
mov dword [edi + 0x87b0], eax
jmp 0x4198de
xor ebp, ebp
mov ebx, str.WWW_Authenticate:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4197d0
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x4197f6
mov ebx, str.Proxy_authenticate:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x419839
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x419839
push dword [esi + 0x68]
xor ecx, ecx
cmp eax, 0x197
sete cl
mov ebp, ecx
call fcn.004165fa
mov ebx, eax
pop ecx
test ebx, ebx
je 0x419c84
push ebx
push ebp
push dword [esp + 0x2c]
call fcn.00416d70
push ebx
mov ebp, eax
call dword [0x4236e0]
add esp, 0x10
test ebp, ebp
jne 0x419c88
jmp 0x4198de
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x4198ca
cmp eax, 0x190
jge 0x4198ca
mov ebx, str.Location:
push ebx
call sub.MSVCRT.dll_strlen
push eax
push dword [esi + 0x68]
push ebx
call fcn.004139cf
add esp, 0x10
test eax, eax
je 0x4198ca
cmp dword [edi + 0x104], ebp
jne 0x4198ca
push dword [esi + 0x68]
call fcn.004165fa
cmp eax, ebp
pop ecx
je 0x419c84
cmp byte [eax], 0
jne 0x419892
push eax
call dword [0x4236e0]
pop ecx
jmp 0x4198de
cmp dword [edi + 0x304], ebp
mov dword [edi + 0x104], eax
je 0x4198de
push eax
call dword [0x4236e8]
cmp eax, ebp
pop ecx
mov dword [edi + 0x108], eax
je 0x419c84
push dword [esp + 0x24]
call fcn.004168d6
cmp eax, ebp
pop ecx
jne 0x419d39
jmp 0x4198de
mov eax, dword [esp + 0x24]
mov eax, dword [eax + 0x32c]
test byte [eax + 0x3e], 4
jne 0x419c8f
xor ebp, ebp
push 2
cmp dword [edi + 0x310], ebp
pop ebx
je 0x4198ee
push 3
pop ebx
cmp dword [edi + 0x328], ebp
je 0x41990b
push dword [esp + 0x24]
push dword [esi + 0x58]
push dword [esi + 0x68]
push 1
push edi
call fcn.0040e876
add esp, 0x14
push dword [esi + 0x58]
push dword [esi + 0x68]
push ebx
push dword [esp + 0x30]
call fcn.0040e6f7
add esp, 0x10
cmp eax, ebp
jne 0x419d39
mov eax, dword [esi + 0x58]
add dword [edi + 0x87b8], eax
mov eax, dword [esi + 0x58]
add dword [edi + 0x80], eax
mov eax, dword [edi + 0x5ec]
mov dword [esi + 0x54], eax
mov dword [esi + 0x58], ebp
jmp 0x419b8d
cmp cl, 0xd
jne 0x419952
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x41995e
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x4199a9
cmp eax, 0xc7
jg 0x4199a9
push 1
sub eax, 0x64
pop ecx
mov dword [esi + 0x50], edx
mov dword [esi + 0x48], ecx
je 0x419990
dec eax
jne 0x419a05
cmp dword [esi + 0x88], ecx
je 0x419bcb
jmp 0x419a05
cmp dword [esi + 0x84], edx
lea eax, [esi + 0x84]
je 0x419a05
or dword [esi + 0xa4], 2
mov dword [eax], edx
jmp 0x419a05
mov eax, dword [esi]
mov dword [esi + 0x48], edx
and eax, dword [esi + 4]
cmp eax, 0xffffffff
jne 0x419a05
cmp dword [esi + 0xc4], edx
jne 0x419a05
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x2a4], edx
jne 0x419a05
cmp dword [eax + 0x150], 0xb
jne 0x419a05
mov eax, dword [eax + 0x32c]
test byte [eax + 0x3e], 4
jne 0x419a05
cmp dword [edi + 0x25c], 5
je 0x419a05
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.0040e1a7
mov eax, dword [esp + 0x2c]
pop ecx
pop ecx
xor edx, edx
mov dword [eax + 0x2a4], 1
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x2a4], edx
je 0x419a56
mov eax, dword [edi + 0xc8]
cmp eax, 0x191
jne 0x419a2b
mov ecx, dword [esp + 0x24]
cmp dword [ecx + 0x3c0], 2
je 0x419a3f
cmp eax, 0x197
jne 0x419a56
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x3fc], 2
jne 0x419a56
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push edi
call fcn.0040e1a7
pop ecx
mov dword [edi + 0x86f0], 1
pop ecx
mov ebp, dword [esp + 0x24]
push ebp
call fcn.00416fa5
test eax, eax
pop ecx
jne 0x419c97
cmp dword [edi + 0x310], eax
push 2
pop ecx
je 0x419a77
push 3
pop ecx
mov eax, dword [edi + 0x5ec]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
push ecx
push ebp
call fcn.0040e6f7
add esp, 0x10
test eax, eax
jne 0x419d39
add dword [edi + 0x87b8], ebx
add dword [edi + 0x80], ebx
mov ecx, dword [esi + 0x78]
lea eax, [edi + 0x80]
cmp ecx, 0x64
mov eax, dword [eax]
jl 0x419aba
cmp ecx, 0xc7
jle 0x419abc
xor eax, eax
mov dword [edi + 0x84], eax
mov eax, dword [esp + 0x2c]
cmp dword [eax], 0
jne 0x419b76
push ebp
call fcn.004166dd
test eax, eax
pop ecx
jne 0x419d39
cmp dword [esi + 0x78], 0x12c
jl 0x419b59
cmp dword [ebp + 0x2e4], eax
jne 0x419b59
cmp dword [ebp + 0x2a4], eax
jne 0x419b59
cmp dword [ebp + 0x2e8], eax
jne 0x419b62
mov eax, dword [edi + 0x25c]
cmp eax, 2
jl 0x419b59
cmp eax, 4
jg 0x419b59
cmp dword [esi + 0xa8], 0
lea ebp, [esi + 0xa8]
jne 0x419b55
push str.HTTP_error_before_end_of_send__stop_sending_n
push edi
call fcn.0040e1a7
pop ecx
pop ecx
mov ecx, dword [esp + 0x24]
push 1
pop eax
mov dword [ecx + 0x2a4], eax
and dword [esi + 0xa4], 0xfffffffd
mov dword [ebp], eax
cmp dword [edi + 0x8728], 0
je 0x419b55
mov dword [esi + 0x84], 3
mov ebp, dword [esp + 0x24]
cmp dword [ebp + 0x2e8], 0
je 0x419b76
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.0040e1a7
or dword [esi + 0xa4], 2
pop ecx
pop ecx
xor eax, eax
cmp dword [esi + 0x48], eax
je 0x419cac
mov ecx, dword [edi + 0x5ec]
mov dword [esi + 0x58], eax
mov dword [esi + 0x54], ecx
mov eax, dword [esp + 0x2c]
cmp dword [eax], 0
jne 0x419d37
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0
je 0x419d37
mov ecx, dword [esp + 0x28]
mov dword [esi + 0x60], eax
push dword [ecx]
push 0xa
push eax
call dword [sym.imp.MSVCRT.dll_memchr]
add esp, 0xc
mov dword [esi + 0x64], eax
test eax, eax
je 0x419be9
mov ebx, dword [esp + 0x28]
jmp 0x418e52
push str.Received_101_n
push edi
call fcn.0040e1a7
pop ecx
mov dword [esi + 0x88], 2
pop ecx
push 1
jmp 0x419c91
mov eax, dword [esp + 0x28]
push dword [eax]
push esi
push edi
call fcn.00419da7
add esp, 0xc
test eax, eax
jne 0x419d39
cmp dword [esi + 0x50], eax
jne 0x419d37
cmp dword [esi + 0x58], 5
jbe 0x419d37
push dword [edi + 0x5ec]
push dword [esp + 0x28]
push edi
call fcn.00419d97
add esp, 0xc
test eax, eax
jne 0x419d37
and dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
jmp 0x419d37
and dword [esi + 0x48], 0
cmp dword [ebx], 0
je 0x419c53
mov dword [esi + 0x4c], 1
jmp 0x419d37
mov dword [esi + 0x4c], 2
mov dword [ebx], ebp
jmp 0x419d37
push edi
call fcn.00419e56
pop ecx
jmp 0x419ca8
and dword [esi + 0x48], 0
jmp 0x419d37
push str.Maximum_file_size_exceeded
push edi
call fcn.0040e1fd
pop ecx
pop ecx
push 0x3f
jmp 0x419c91
push 0x1b
jmp 0x419c91
mov eax, ebp
jmp 0x419d39
push 4
pop eax
jmp 0x419d39
push dword [esi + 0x78]
push str.The_requested_URL_returned_error:__d
push edi
call fcn.0040e1fd
add esp, 0xc
push 0x16
jmp 0x419c91
cmp dword [edi + 0x31c], eax
je 0x419cc0
mov eax, dword [esp + 0x2c]
mov dword [eax], 1
jmp 0x419cd6
cmp dword [esi + 0xc4], eax
je 0x419cd6
or eax, 0xffffffff
mov dword [esi], eax
mov dword [esi + 0x10], eax
mov dword [esi + 4], eax
mov dword [esi + 0x14], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, 0xffffffff
jne 0x419ce4
cmp ecx, eax
je 0x419cfa
push ecx
push eax
push edi
call fcn.00415203
mov eax, dword [esi]
add esp, 0xc
mov dword [esi + 0x10], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x14], eax
xor eax, eax
cmp dword [esi + 0x10], eax
jne 0x419d10
cmp dword [esi + 0x14], eax
jne 0x419d10
mov ecx, dword [esp + 0x2c]
mov dword [ecx], 1
mov ecx, dword [esp + 0x2c]
cmp dword [ecx], eax
je 0x419d1f
and dword [esi + 0xa4], 0xfffffffe
cmp dword [edi + 0x328], eax
je 0x419d37
push ebp
push ebx
push dword [esi + 0x60]
push 1
push edi
call fcn.0040e876
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret