Function at 0x407040
Capabilities:
Contain obfuscated stackstrings
Resolve dns

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49b318
mov eax, dword fs:[0]
push eax
mov eax, 0x14a8
call fcn.0049ab70
mov eax, dword [0x4c40e4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x11f4], ecx
mov dword [ebp - 0x1204], 0
lea eax, [ebp + 0x18]
push eax
lea ecx, [ebp - 0x14a0]
push ecx
call fcn.00403bd0
add esp, 4
push eax
lea edx, [ebp - 0x1244]
push edx
call fcn.0041c740
add esp, 0xc
push str.http
mov eax, dword [ebp - 0x11f4]
add eax, 4
push eax
call fcn.0041c780
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x4070e1
push str.Only_HTTP_scheme_is_supported
lea ecx, [ebp - 0x1474]
call fcn.00406390
push 0x4c004c
lea edx, [ebp - 0x1474]
push edx
call sub.MSVCR120.dll__CxxThrowException
xor eax, eax
mov dword [ebp - 0x1368], eax
mov dword [ebp - 0x1364], eax
mov dword [ebp - 0x1360], eax
mov dword [ebp - 0x135c], eax
mov dword [ebp - 0x1358], eax
mov dword [ebp - 0x1354], eax
mov dword [ebp - 0x1350], eax
mov dword [ebp - 0x134c], eax
mov ecx, dword [ebp - 0x11f4]
movzx edx, byte [ecx + 1]
push edx
call fcn.00406540
add esp, 4
mov dword [ebp - 0x1364], eax
mov dword [ebp - 0x1360], 1
lea eax, [ebp - 0x12dc]
push eax
lea ecx, [ebp - 0x1368]
push ecx
mov ecx, dword [ebp - 0x11f4]
add ecx, 0x34
call fcn.0040f570
push eax
mov ecx, dword [ebp - 0x11f4]
add ecx, 0x1c
call fcn.0040f570
push eax
call dword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
je 0x4071e1
mov edx, dword [ebp - 0x11f4]
add edx, 0x1c
push edx
push str.Failed_to_get_address_info_of
lea eax, [ebp - 0xec]
push eax
call fcn.0041c1b0
add esp, 0xc
mov dword [ebp - 0x132c], eax
mov ecx, dword [ebp - 0x132c]
mov dword [ebp - 0x12d4], ecx
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x12d4]
push edx
call fcn.004035c0
push eax
call fcn.00406530
push eax
lea ecx, [ebp - 0x14b4]
call fcn.004031e0
push 0x4bff28
lea eax, [ebp - 0x14b4]
push eax
call sub.MSVCR120.dll__CxxThrowException
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xec]
call fcn.0040f220
mov ecx, dword [sym.imp.WS2_32.dll_freeaddrinfo]
mov dword [ebp - 0x1330], ecx
lea edx, [ebp - 0x1330]
push edx
mov eax, dword [ebp - 0x12dc]
push eax
lea ecx, [ebp - 0x123c]
call fcn.00411360
mov dword [ebp - 4], 2
push 0x4aee9c
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x194]
push edx
call fcn.0041c2b0
add esp, 0xc
mov dword [ebp - 0x1318], eax
mov eax, dword [ebp - 0x1318]
mov dword [ebp - 0x12e4], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x11f4]
add ecx, 0x4c
push ecx
mov edx, dword [ebp - 0x12e4]
push edx
lea eax, [ebp - 0x134]
push eax
call fcn.0041c370
add esp, 0xc
mov dword [ebp - 0x1340], eax
mov ecx, dword [ebp - 0x1340]
mov dword [ebp - 0x12a0], ecx
mov byte [ebp - 4], 4
push str._HTTP_1.1_r_n
mov edx, dword [ebp - 0x12a0]
push edx
lea eax, [ebp - 0x58]
push eax
call fcn.0041c270
add esp, 0xc
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x134]
call fcn.0040f220
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x194]
call fcn.0040f220
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x1248], ecx
lea edx, [ebp - 0x1214]
push edx
mov ecx, dword [ebp - 0x1248]
call fcn.00410b50
lea eax, [ebp - 0x12a8]
push eax
mov ecx, dword [ebp - 0x1248]
call fcn.00410bb0
jmp 0x4072e1
lea ecx, [ebp - 0x1214]
call fcn.004113e0
lea ecx, [ebp - 0x12a8]
push ecx
lea ecx, [ebp - 0x1214]
call fcn.0040fcf0
movzx edx, al
test edx, edx
je 0x40735f
lea ecx, [ebp - 0x1214]
call fcn.00402e50
mov dword [ebp - 0x12b0], eax
push 0x4aeea0
mov eax, dword [ebp - 0x12b0]
push eax
lea ecx, [ebp - 0x164]
push ecx
call fcn.0041c2b0
add esp, 0xc
mov dword [ebp - 0x12b8], eax
mov edx, dword [ebp - 0x12b8]
mov dword [ebp - 0x12c0], edx
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x12c0]
push eax
lea ecx, [ebp - 0x58]
call fcn.0040f2e0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x164]
call fcn.0040f220
jmp 0x4072d6
mov ecx, dword [ebp + 0x10]
call fcn.00410be0
push eax
lea ecx, [ebp - 0x1ac]
push ecx
call fcn.00403960
add esp, 8
mov dword [ebp - 0x12c8], eax
mov edx, dword [ebp - 0x12c8]
mov dword [ebp - 0x12e8], edx
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x11f4]
add eax, 0x1c
push eax
push str.Host:
lea ecx, [ebp - 0x17c]
push ecx
call fcn.0041c1b0
add esp, 0xc
mov dword [ebp - 0x12d0], eax
mov edx, dword [ebp - 0x12d0]
mov dword [ebp - 0x12d8], edx
mov byte [ebp - 4], 0xa
push str._r_nContent_Length:
mov eax, dword [ebp - 0x12d8]
push eax
lea ecx, [ebp - 0x14c]
push ecx
call fcn.0041c270
add esp, 0xc
mov dword [ebp - 0x12e0], eax
mov edx, dword [ebp - 0x12e0]
mov dword [ebp - 0x12f4], edx
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x12e8]
push eax
mov ecx, dword [ebp - 0x12f4]
push ecx
lea edx, [ebp - 0x11c]
push edx
call fcn.0041c3b0
add esp, 0xc
mov dword [ebp - 0x12fc], eax
mov eax, dword [ebp - 0x12fc]
mov dword [ebp - 0x1304], eax
mov byte [ebp - 4], 0xc
push str._r_n_r_n
mov ecx, dword [ebp - 0x1304]
push ecx
lea edx, [ebp - 0x104]
push edx
call fcn.0041c270
add esp, 0xc
mov dword [ebp - 0x130c], eax
mov eax, dword [ebp - 0x130c]
mov dword [ebp - 0x1314], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x1314]
push ecx
lea ecx, [ebp - 0x58]
call fcn.0040f2e0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x104]
call fcn.0040f220
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x11c]
call fcn.0040f220
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x14c]
call fcn.0040f220
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x17c]
call fcn.0040f220
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1ac]
call fcn.0040f220
lea edx, [ebp - 0x1400]
push edx
lea ecx, [ebp - 0x58]
call fcn.0040f490
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x13f4]
push ecx
lea ecx, [ebp - 0x58]
call fcn.0040f430
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x1264]
call fcn.0041c7c0
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x144c]
push eax
lea ecx, [ebp - 0x1264]
call fcn.00410b80
mov ecx, dword [eax]
mov dword [ebp - 0x131c], ecx
lea edx, [ebp - 0x1370]
push edx
mov ecx, dword [ebp + 0x10]
call fcn.00410bb0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x1378]
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.00410b50
mov edx, dword [eax]
push edx
mov eax, dword [ebp - 0x131c]
push eax
lea ecx, [ebp - 0x1380]
push ecx
lea ecx, [ebp - 0x1264]
call fcn.0041c800
mov edx, dword [ebp - 0x11f4]
movzx eax, byte [edx + 1]
push eax
lea ecx, [ebp - 0x1284]
call fcn.004065f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp + 0x18]
call fcn.0040fa80
mov dword [ebp - 0x12f0], eax
mov dword [ebp - 0x12ec], edx
cmp dword [ebp - 0x12ec], 0
jl 0x4075a0
jg 0x40757c
cmp dword [ebp - 0x12f0], 0
jb 0x4075a0
mov ecx, dword [ebp - 0x1240]
push ecx
mov edx, dword [ebp - 0x1244]
push edx
call fcn.00408410
add esp, 8
mov dword [ebp - 0x1270], eax
mov dword [ebp - 0x126c], edx
jmp 0x4075b4
mov dword [ebp - 0x1270], 0xffffffff
mov dword [ebp - 0x126c], 0xffffffff
mov eax, dword [ebp - 0x126c]
push eax
mov ecx, dword [ebp - 0x1270]
push ecx
lea ecx, [ebp - 0x123c]
call fcn.004113c0
mov edx, dword [eax + 0x10]
push edx
lea ecx, [ebp - 0x123c]
call fcn.004113c0
mov eax, dword [eax + 0x18]
push eax
lea ecx, [ebp - 0x1284]
call fcn.004066e0
lea ecx, [ebp - 0x1264]
call fcn.00410be0
mov dword [ebp - 0x120c], eax
lea ecx, [ebp - 0x1264]
call fcn.00402e50
mov dword [ebp - 0x121c], eax
cmp dword [ebp - 0x120c], 0
jbe 0x4076d0
lea ecx, [ebp + 0x18]
call fcn.0040fa80
mov dword [ebp - 0x1290], eax
mov dword [ebp - 0x128c], edx
cmp dword [ebp - 0x128c], 0
jl 0x407666
jg 0x407642
cmp dword [ebp - 0x1290], 0
jb 0x407666
mov ecx, dword [ebp - 0x1240]
push ecx
mov edx, dword [ebp - 0x1244]
push edx
call fcn.00408410
add esp, 8
mov dword [ebp - 0x1258], eax
mov dword [ebp - 0x1254], edx
jmp 0x40767a
mov dword [ebp - 0x1258], 0xffffffff
mov dword [ebp - 0x1254], 0xffffffff
mov eax, dword [ebp - 0x1254]
push eax
mov ecx, dword [ebp - 0x1258]
push ecx
mov edx, dword [ebp - 0x120c]
push edx
mov eax, dword [ebp - 0x121c]
push eax
lea ecx, [ebp - 0x1284]
call fcn.00406820
mov dword [ebp - 0x1268], eax
mov ecx, dword [ebp - 0x120c]
sub ecx, dword [ebp - 0x1268]
mov dword [ebp - 0x120c], ecx
mov edx, dword [ebp - 0x121c]
add edx, dword [ebp - 0x1268]
mov dword [ebp - 0x121c], edx
jmp 0x40760d
mov byte [ebp - 0x11e0], 0xd
mov byte [ebp - 0x11df], 0xa
lea ecx, [ebp - 0x8c]
call fcn.00408500
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x11f0]
call fcn.004109a0
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x1208], 0
mov byte [ebp - 0x11e2], 0
mov dword [ebp - 0x1218], 0
mov byte [ebp - 0x11e3], 0
mov dword [ebp - 0x11fc], 0
mov byte [ebp - 0x11e1], 0
lea ecx, [ebp + 0x18]
call fcn.0040fa80
mov dword [ebp - 0x1298], eax
mov dword [ebp - 0x1294], edx
cmp dword [ebp - 0x1294], 0
jl 0x40777b
jg 0x407757
cmp dword [ebp - 0x1298], 0
jb 0x40777b
mov eax, dword [ebp - 0x1240]
push eax
mov ecx, dword [ebp - 0x1244]
push ecx
call fcn.00408410
add esp, 8
mov dword [ebp - 0x1278], eax
mov dword [ebp - 0x1274], edx
jmp 0x40778f
mov dword [ebp - 0x1278], 0xffffffff
mov dword [ebp - 0x1274], 0xffffffff
mov edx, dword [ebp - 0x1274]
push edx
mov eax, dword [ebp - 0x1278]
push eax
lea ecx, [ebp - 0x11dc]
call fcn.00411460
push eax
lea ecx, [ebp - 0x11dc]
call fcn.00402980
push eax
lea ecx, [ebp - 0x1284]
call fcn.004068c0
mov dword [ebp - 0x124c], eax
cmp dword [ebp - 0x124c], 0
jne 0x40784c
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00408580
mov edx, dword [ebp - 0x1204]
or edx, 1
mov dword [ebp - 0x1204], edx
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x11f0]
call fcn.00410ac0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x8c]
call fcn.004084d0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1284]
call fcn.004066c0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1264]
call fcn.00410ac0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call fcn.0040f220
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x123c]
call fcn.00411390
mov eax, dword [ebp + 8]
jmp 0x4083ee
lea eax, [ebp - 0x1388]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
mov ecx, dword [eax]
mov dword [ebp - 0x1324], ecx
mov edx, dword [ebp - 0x124c]
push edx
lea eax, [ebp - 0x1390]
push eax
lea ecx, [ebp - 0x1398]
push ecx
lea ecx, [ebp - 0x11dc]
call fcn.00411430
mov ecx, eax
call fcn.00411400
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x13b0]
push eax
lea ecx, [ebp - 0x11dc]
call fcn.00411430
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1324]
push edx
lea eax, [ebp - 0x13b8]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.0041c870
cmp dword [ebp - 0x1208], 2
je 0x407e5c
lea ecx, [ebp - 0x13c0]
push ecx
lea ecx, [ebp - 0x11e0]
call fcn.00411470
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x13e0]
push eax
lea ecx, [ebp - 0x11e0]
call fcn.00411430
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x13e8]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x13f0]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x1224]
push eax
call fcn.0041c8e0
add esp, 0x14
lea ecx, [ebp - 0x13f8]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
push eax
lea ecx, [ebp - 0x1224]
call fcn.0040fcb0
movzx edx, al
test edx, edx
je 0x407958
jmp 0x407e5c
mov eax, dword [ebp - 0x1224]
push eax
lea ecx, [ebp - 0x136c]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x28]
call fcn.0041c920
mov byte [ebp - 4], 0x12
push 2
lea eax, [ebp - 0x1408]
push eax
lea ecx, [ebp - 0x1224]
call fcn.00411400
mov ecx, dword [eax]
mov dword [ebp - 0x1288], ecx
lea edx, [ebp - 0x1410]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov eax, dword [eax]
mov dword [ebp - 0x1334], eax
mov ecx, dword [ebp - 0x1288]
push ecx
mov edx, dword [ebp - 0x1334]
push edx
lea eax, [ebp - 0x1418]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410c30
lea ecx, [ebp - 0x28]
call fcn.0040f5d0
movzx ecx, al
test ecx, ecx
je 0x407a05
mov dword [ebp - 0x1208], 2
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x28]
call fcn.0040f220
jmp 0x407e5c
cmp dword [ebp - 0x1208], 0
jne 0x407b72
mov dword [ebp - 0x1208], 1
mov dword [ebp - 0x122c], 0
lea edx, [ebp - 0x1210]
push edx
lea ecx, [ebp - 0x28]
call fcn.0040f460
lea eax, [ebp - 0x1420]
push eax
lea ecx, [ebp - 0x28]
call fcn.0040f4c0
push eax
lea ecx, [ebp - 0x1210]
call fcn.0040fcf0
movzx ecx, al
test ecx, ecx
je 0x407b6d
mov byte [ebp - 0x11f5], 0x20
lea edx, [ebp - 0x11f5]
push edx
lea eax, [ebp - 0x1428]
push eax
lea ecx, [ebp - 0x28]
call fcn.0040f4c0
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1210]
push edx
lea eax, [ebp - 0x1234]
push eax
call fcn.0041c980
add esp, 0x10
mov ecx, dword [ebp - 0x1234]
push ecx
mov edx, dword [ebp - 0x1210]
push edx
lea ecx, [ebp - 0xa4]
call fcn.0040f0c0
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x122c]
add eax, 1
mov dword [ebp - 0x122c], eax
mov ecx, dword [ebp - 0x122c]
mov dword [ebp - 0x1250], ecx
cmp dword [ebp - 0x1250], 2
je 0x407add
cmp dword [ebp - 0x1250], 3
je 0x407af8
jmp 0x407b0a
push 0xa
push 0
lea edx, [ebp - 0xa4]
push edx
call fcn.00403830
add esp, 0xc
mov dword [ebp - 0x8c], eax
jmp 0x407b0a
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x88]
call fcn.0040f240
lea ecx, [ebp - 0x1430]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040f4c0
push eax
lea ecx, [ebp - 0x1234]
call fcn.0040fcb0
movzx edx, al
test edx, edx
je 0x407b3d
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xa4]
call fcn.0040f220
jmp 0x407b6d
push 1
lea eax, [ebp - 0x1438]
push eax
lea ecx, [ebp - 0x1234]
call fcn.0040fc80
mov ecx, dword [eax]
mov dword [ebp - 0x1210], ecx
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xa4]
call fcn.0040f220
jmp 0x407a35
jmp 0x407e4b
cmp dword [ebp - 0x1208], 1
jne 0x407e4b
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x70]
call fcn.00411250
push 0
push 0x3a
lea ecx, [ebp - 0x28]
call fcn.0040f630
mov dword [ebp - 0x1228], eax
mov eax, dword [ebp - 0x1228]
cmp eax, dword [0x4af7d4]
jne 0x407c0b
lea ecx, [ebp - 0x28]
push ecx
push str.Invalid_header:
lea edx, [ebp - 0x1dc]
push edx
call fcn.0041c1b0
add esp, 0xc
mov dword [ebp - 0x133c], eax
mov eax, dword [ebp - 0x133c]
mov dword [ebp - 0x1344], eax
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x1344]
push ecx
lea ecx, [ebp - 0x1498]
call fcn.004063f0
push 0x4c011c
lea edx, [ebp - 0x1498]
push edx
call sub.MSVCR120.dll__CxxThrowException
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1dc]
call fcn.0040f220
mov eax, dword [ebp - 0x1228]
push eax
push 0
lea ecx, [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040f650
mov byte [ebp - 4], 0x15
mov edx, dword [0x4af7d4]
push edx
mov eax, dword [ebp - 0x1228]
add eax, 1
push eax
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0040f650
mov byte [ebp - 4], 0x16
movzx edx, byte [ebp - 0x11fd]
push edx
lea eax, [ebp - 0x1440]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040f490
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x1448]
push edx
lea ecx, [ebp - 0x40]
call fcn.0040f430
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x1450]
push ecx
call fcn.0041c9c0
add esp, 0x10
mov edx, dword [eax]
mov dword [ebp - 0x1320], edx
lea eax, [ebp - 0x1458]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040f430
mov ecx, dword [eax]
mov dword [ebp - 0x129c], ecx
mov edx, dword [ebp - 0x1320]
push edx
mov eax, dword [ebp - 0x129c]
push eax
lea ecx, [ebp - 0x1460]
push ecx
lea ecx, [ebp - 0x40]
call fcn.0040f3a0
lea edx, [ebp - 0x1468]
push edx
lea ecx, [ebp - 0x40]
call fcn.0040f490
mov eax, dword [eax]
mov dword [ebp - 0x12f8], eax
lea ecx, [ebp - 0x13cc]
push ecx
movzx edx, byte [ebp - 0x11fd]
push edx
lea eax, [ebp - 0x13a4]
push eax
lea ecx, [ebp - 0x40]
call fcn.0040f520
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x1374]
push edx
lea ecx, [ebp - 0x40]
call fcn.0040f4f0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x13fc]
push ecx
call fcn.0041ca00
add esp, 0x10
mov ecx, eax
call fcn.004114a0
mov edx, dword [eax]
mov dword [ebp - 0x12a4], edx
mov eax, dword [ebp - 0x12f8]
push eax
mov ecx, dword [ebp - 0x12a4]
push ecx
lea edx, [ebp - 0x137c]
push edx
lea ecx, [ebp - 0x40]
call fcn.0040f3a0
push str.Content_Length
lea eax, [ebp - 0xd4]
push eax
call fcn.0041ca60
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x407d90
push 0xa
push 0
lea edx, [ebp - 0x40]
push edx
call fcn.004038e0
add esp, 0xc
mov dword [ebp - 0x1218], eax
mov byte [ebp - 0x11e2], 1
mov eax, dword [ebp - 0x1218]
push eax
lea ecx, [ebp - 0x64]
call fcn.00410ae0
jmp 0x407e30
push str.Transfer_Encoding
lea ecx, [ebp - 0xd4]
push ecx
call fcn.0041ca60
add esp, 8
movzx edx, al
test edx, edx
je 0x407e30
push str.chunked
lea eax, [ebp - 0x40]
push eax
call fcn.0041ca60
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x407dd0
mov byte [ebp - 0x11e3], 1
jmp 0x407e30
lea edx, [ebp - 0x40]
push edx
push str.Unsupported_transfer_encoding:
lea eax, [ebp - 0x1c4]
push eax
call fcn.0041c1b0
add esp, 0xc
mov dword [ebp - 0x1338], eax
mov ecx, dword [ebp - 0x1338]
mov dword [ebp - 0x12ac], ecx
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x12ac]
push edx
lea ecx, [ebp - 0x148c]
call fcn.004063f0
push 0x4c011c
lea eax, [ebp - 0x148c]
push eax
call sub.MSVCR120.dll__CxxThrowException
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x1c4]
call fcn.0040f220
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x40]
call fcn.0040f220
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0xd4]
call fcn.0040f220
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x28]
call fcn.0040f220
jmp 0x4078cb
cmp dword [ebp - 0x1208], 2
jne 0x408392
movzx ecx, byte [ebp - 0x11e3]
test ecx, ecx
je 0x408297
cmp dword [ebp - 0x11fc], 0
jbe 0x407fc0
lea ecx, [ebp - 0x11f0]
call fcn.00410be0
mov dword [ebp - 0x1300], eax
lea edx, [ebp - 0x1300]
push edx
lea eax, [ebp - 0x11fc]
push eax
call fcn.0041ca90
add esp, 8
mov ecx, dword [eax]
mov dword [ebp - 0x1220], ecx
lea edx, [ebp - 0x1434]
push edx
lea ecx, [ebp - 0x64]
call fcn.00410b80
mov eax, dword [eax]
mov dword [ebp - 0x12b4], eax
mov ecx, dword [ebp - 0x1220]
push ecx
lea edx, [ebp - 0x1384]
push edx
lea eax, [ebp - 0x1404]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov ecx, eax
call fcn.00411400
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x138c]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov eax, dword [eax]
push eax
mov ecx, dword [ebp - 0x12b4]
push ecx
lea edx, [ebp - 0x145c]
push edx
lea ecx, [ebp - 0x64]
call fcn.0041cac0
mov eax, dword [ebp - 0x1220]
push eax
lea ecx, [ebp - 0x1394]
push ecx
lea edx, [ebp - 0x140c]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov ecx, eax
call fcn.00411400
mov eax, dword [eax]
mov dword [ebp - 0x1328], eax
lea ecx, [ebp - 0x139c]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov edx, dword [eax]
mov dword [ebp - 0x12bc], edx
mov eax, dword [ebp - 0x1328]
push eax
mov ecx, dword [ebp - 0x12bc]
push ecx
lea edx, [ebp - 0x13a0]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410c30
mov eax, dword [ebp - 0x11fc]
sub eax, dword [ebp - 0x1220]
mov dword [ebp - 0x11fc], eax
jne 0x407fa4
mov byte [ebp - 0x11e1], 1
lea ecx, [ebp - 0x11f0]
call fcn.00410c00
movzx ecx, al
test ecx, ecx
je 0x407fbb
jmp 0x408292
jmp 0x40828d
movzx edx, byte [ebp - 0x11e1]
test edx, edx
je 0x4080be
lea ecx, [ebp - 0x11f0]
call fcn.00410be0
cmp eax, 2
jae 0x407fe4
jmp 0x408292
lea eax, [ebp - 0x13a8]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x143c]
push edx
lea ecx, [ebp - 0x11e0]
call fcn.00411470
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x13ac]
push ecx
lea ecx, [ebp - 0x11e0]
call fcn.00411430
mov edx, dword [eax]
push edx
call fcn.0041cb30
add esp, 0xc
movzx eax, al
test eax, eax
jne 0x408053
push str.Invalid_chunk
lea ecx, [ebp - 0x1480]
call fcn.004063c0
push 0x4c011c
lea ecx, [ebp - 0x1480]
push ecx
call sub.MSVCR120.dll__CxxThrowException
mov byte [ebp - 0x11e1], 0
push 2
lea edx, [ebp - 0x1414]
push edx
lea eax, [ebp - 0x13b4]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov ecx, eax
call fcn.00411400
mov ecx, dword [eax]
mov dword [ebp - 0x1308], ecx
lea edx, [ebp - 0x1454]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov eax, dword [eax]
mov dword [ebp - 0x12c4], eax
mov ecx, dword [ebp - 0x1308]
push ecx
mov edx, dword [ebp - 0x12c4]
push edx
lea eax, [ebp - 0x13bc]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410c30
lea ecx, [ebp - 0x13c8]
push ecx
lea ecx, [ebp - 0x11e0]
call fcn.00411470
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x13c4]
push eax
lea ecx, [ebp - 0x11e0]
call fcn.00411430
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x13d0]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x13d8]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x1230]
push eax
call fcn.0041c8e0
add esp, 0x14
lea ecx, [ebp - 0x141c]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
push eax
lea ecx, [ebp - 0x1230]
call fcn.0040fcb0
movzx edx, al
test edx, edx
je 0x40814b
jmp 0x408292
mov eax, dword [ebp - 0x1230]
push eax
lea ecx, [ebp - 0x13d4]
push ecx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0xbc]
call fcn.0041c920
mov byte [ebp - 4], 0x18
push 2
lea eax, [ebp - 0x1444]
push eax
lea ecx, [ebp - 0x1230]
call fcn.00411400
mov ecx, dword [eax]
mov dword [ebp - 0x1348], ecx
lea edx, [ebp - 0x13dc]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov eax, dword [eax]
mov dword [ebp - 0x12cc], eax
mov ecx, dword [ebp - 0x1348]
push ecx
mov edx, dword [ebp - 0x12cc]
push edx
lea eax, [ebp - 0x1424]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410c30
push 0x10
push 0
lea ecx, [ebp - 0xbc]
push ecx
call fcn.004038e0
add esp, 0xc
mov dword [ebp - 0x11fc], eax
cmp dword [ebp - 0x11fc], 0
jne 0x40827e
lea edx, [ebp - 0x8c]
push edx
mov ecx, dword [ebp + 8]
call fcn.00408580
mov eax, dword [ebp - 0x1204]
or eax, 1
mov dword [ebp - 0x1204], eax
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xbc]
call fcn.0040f220
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x11f0]
call fcn.00410ac0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x8c]
call fcn.004084d0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1284]
call fcn.004066c0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1264]
call fcn.00410ac0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call fcn.0040f220
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x123c]
call fcn.00411390
mov eax, dword [ebp + 8]
jmp 0x4083ee
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xbc]
call fcn.0040f220
jmp 0x407e78
jmp 0x408392
lea ecx, [ebp - 0x13e4]
push ecx
lea ecx, [ebp - 0x64]
call fcn.00410b80
mov edx, dword [eax]
mov dword [ebp - 0x1310], edx
lea eax, [ebp - 0x1464]
push eax
lea ecx, [ebp - 0x11f0]
call fcn.00410b80
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x13ec]
push edx
lea ecx, [ebp - 0x11f0]
call fcn.00410b20
mov eax, dword [eax]
push eax
mov ecx, dword [ebp - 0x1310]
push ecx
lea edx, [ebp - 0x142c]
push edx
lea ecx, [ebp - 0x64]
call fcn.0041cac0
lea ecx, [ebp - 0x11f0]
call fcn.00410d10
movzx eax, byte [ebp - 0x11e2]
test eax, eax
je 0x408392
lea ecx, [ebp - 0x64]
call fcn.00410be0
cmp eax, dword [ebp - 0x1218]
jb 0x408392
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, dword [ebp + 8]
call fcn.00408580
mov edx, dword [ebp - 0x1204]
or edx, 1
mov dword [ebp - 0x1204], edx
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x11f0]
call fcn.00410ac0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x8c]
call fcn.004084d0
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1284]
call fcn.004066c0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x1264]
call fcn.00410ac0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x58]
call fcn.0040f220
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x123c]
call fcn.00411390
mov eax, dword [ebp + 8]
jmp 0x4083ee
jmp 0x40772f
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00499716
mov esp, ebp
pop ebp
ret 0x18