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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x48e836
mov eax, dword fs:[0]
push eax
sub esp, 0xd8
mov eax, dword [0x4ad658]
xor eax, esp
mov dword [esp + 0xd0], eax
push ebx
push esi
push edi
mov eax, dword [0x4ad658]
xor eax, esp
push eax
lea eax, [esp + 0xe8]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea eax, [esp + 0x2c]
mov dword [esp + 0x3c], ecx
push eax
mov ecx, str.HTTP_1.d1__d3_._
mov dword [esp + 0x44], esi
call fcn.00447e30
xor ebx, ebx
mov dword [esp + 0xf0], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x60], bl
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
mov byte [esp + 0x6c], bl
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov byte [esp + 0x78], bl
mov byte [esp + 0xf0], 1
mov eax, dword [esi + 0x14]
cmp eax, 0x10
jb 0x455fdb
mov edi, dword [esi]
jmp 0x455fdd
mov edi, esi
cmp eax, 0x10
jb 0x455fe6
mov edx, dword [esi]
jmp 0x455fe8
mov edx, esi
mov ecx, dword [esi + 0x10]
add ecx, edx
cmp eax, 0x10
jb 0x455ff6
mov eax, dword [esi]
jmp 0x455ff8
mov eax, esi
push edi
lea edx, [esp + 0x30]
push edx
push ecx
push eax
lea ecx, [esp + 0x54]
call fcn.0044b2c0
add esp, 0x10
test al, al
je 0x456135
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
lea eax, [esp + 0x70]
jbe 0x45603a
lea eax, [esi + 0xc]
lea ecx, [esp + 0x8c]
call fcn.00447fa0
mov byte [esp + 0xf0], 2
push 4
mov edi, 0xf
push str.HTTP
lea ecx, [esp + 0xb0]
mov dword [esp + 0xc4], edi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], 0
call fcn.00412da0
mov esi, dword [esp + 0x3c]
lea ecx, [esp + 0x8c]
push ecx
lea edx, [esp + 0xac]
push edx
mov byte [esp + 0xf8], 3
call fcn.00455d80
mov esi, 0x10
cmp dword [esp + 0xbc], esi
jb 0x4560bb
mov eax, dword [esp + 0xa8]
push eax
call fcn.00464d3e
add esp, 4
mov dword [esp + 0xbc], edi
mov dword [esp + 0xb8], ebx
mov byte [esp + 0xa8], 0
cmp dword [esp + 0xa0], esi
jb 0x4560ea
mov ecx, dword [esp + 0x8c]
push ecx
call fcn.00464d3e
add esp, 4
mov eax, dword [esp + 0x48]
cmp eax, ebx
je 0x4560fb
push eax
call fcn.00464d3e
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0xf0], 0xffffffff
call fcn.00447ef0
mov ecx, dword [esp + 0xe8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xd0]
xor ecx, esp
call fcn.00464d49
mov esp, ebp
pop ebp
ret 4
lea edx, [esp + 0x7c]
push edx
mov ecx, str._.__:
call fcn.00447e30
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0xf0], 4
cmp ecx, eax
je 0x456180
mov ecx, dword [esp + 0x2c]
cmp ecx, ebx
je 0x456174
dec dword [ecx + 0x1c]
jne 0x456174
mov eax, dword [esp + 0x2c]
xor edi, edi
call fcn.004431c0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x2c], ebx
mov edx, dword [eax]
mov dword [esp + 0x2c], edx
mov dword [eax], ebx
lea ecx, [esp + 0x7c]
mov byte [esp + 0xf0], 1
call fcn.00447ef0
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x45619d
mov edi, dword [esi]
jmp 0x45619f
mov edi, esi
cmp ecx, 0x10
jb 0x4561a8
mov edx, dword [esi]
jmp 0x4561aa
mov edx, esi
mov eax, dword [esi + 0x10]
add eax, edx
cmp ecx, 0x10
jb 0x4561b6
mov esi, dword [esi]
push edi
lea ecx, [esp + 0x30]
push ecx
push eax
push esi
lea ecx, [esp + 0x54]
call fcn.0044b2c0
add esp, 0x10
test al, al
je 0x4560ea
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
lea eax, [esp + 0x70]
jbe 0x4561f8
lea eax, [esi + 0xc]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
call fcn.00447fa0
lea esi, [esp + 0xe0]
call fcn.004585e0
add esp, 0x1c
mov byte [esp + 0xf0], 5
push 0x3c
mov dword [esp + 0x24], ebx
call fcn.00464e82
add esp, 4
cmp eax, ebx
je 0x456994
mov dword [esp + 0x1c], eax
mov dword [eax], eax
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], eax
mov eax, dword [esp + 0x1c]
mov dword [eax + 8], eax
mov ecx, dword [esp + 0x1c]
mov byte [ecx + 0x38], 1
mov edx, dword [esp + 0x1c]
mov byte [edx + 0x39], 1
mov byte [esp + 0xf0], 6
push 0xd
push str.content_range
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.:_0_1bytes_0_10_1_d__d__d__
mov byte [esp + 0xf4], 7
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 8
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x4562ee
mov eax, dword [esi]
test eax, eax
je 0x4562de
dec dword [eax + 0x1c]
jne 0x4562de
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 7
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x456324
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 0xe
push str.content_length
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.._:___._
mov byte [esp + 0xf4], 9
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0xa
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x4563b3
mov eax, dword [esi]
test eax, eax
je 0x4563a3
dec dword [eax + 0x1c]
jne 0x4563a3
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 9
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x4563e9
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 8
push str.location
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.._:___._
mov byte [esp + 0xf4], 0xb
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0xc
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x456478
mov eax, dword [esi]
test eax, eax
je 0x456468
dec dword [eax + 0x1c]
jne 0x456468
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 0xb
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x4564ae
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 0xa
push str.connection
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.._:___._
mov byte [esp + 0xf4], 0xd
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0xe
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x45653d
mov eax, dword [esi]
test eax, eax
je 0x45652d
dec dword [eax + 0x1c]
jne 0x45652d
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 0xd
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x456573
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 0x11
push str.transfer_encoding
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.._:___._
mov byte [esp + 0xf4], 0xf
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0x10
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x456602
mov eax, dword [esi]
test eax, eax
je 0x4565f2
dec dword [eax + 0x1c]
jne 0x4565f2
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 0xf
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x456638
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 0xd
push str.accept_ranges
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str.._:___._
mov byte [esp + 0xf4], 0x11
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0x12
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x4566c7
mov eax, dword [esi]
test eax, eax
je 0x4566b7
dec dword [eax + 0x1c]
jne 0x4566b7
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 0x11
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x4566fd
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
push 0x13
push str.content_disposition
lea ecx, [esp + 0x94]
mov dword [esp + 0xa8], 0xf
mov dword [esp + 0xa4], 0
mov byte [esp + 0x94], 0
call fcn.00412da0
lea eax, [esp + 0xa8]
push eax
mov ecx, str..____filename__.__
mov byte [esp + 0xf4], 0x13
call fcn.00447e30
mov ebx, eax
lea edx, [esp + 0x8c]
lea ecx, [esp + 0x18]
mov byte [esp + 0xf0], 0x14
call fcn.00456ac0
mov esi, eax
cmp esi, ebx
je 0x45678c
mov eax, dword [esi]
test eax, eax
je 0x45677c
dec dword [eax + 0x1c]
jne 0x45677c
mov eax, dword [esi]
xor edi, edi
call fcn.004431c0
mov dword [esi], 0
mov ecx, dword [ebx]
mov dword [esi], ecx
mov dword [ebx], 0
lea ecx, [esp + 0xa8]
mov byte [esp + 0xf0], 0x13
call fcn.00447ef0
mov byte [esp + 0xf0], 6
cmp dword [esp + 0xa0], 0x10
jb 0x4567c2
mov edx, dword [esp + 0x8c]
push edx
call fcn.00464d3e
add esp, 4
mov edi, dword [esp + 0x1c]
mov eax, dword [edi]
mov dword [esp + 0x14], eax
cmp eax, edi
je 0x45692b
mov ebx, dword [esp + 0xd4]
cmp dword [eax + 0x20], 0x10
mov esi, dword [eax + 0x1c]
jb 0x4567e9
mov ecx, dword [eax + 0xc]
jmp 0x4567ec
lea ecx, [eax + 0xc]
mov eax, ebx
cmp ebx, esi
jb 0x4567f4
mov eax, esi
cmp dword [esp + 0xd8], 0x10
mov edx, dword [esp + 0xc4]
jae 0x45680c
lea edx, [esp + 0xc4]
call fcn.00411b60
test eax, eax
jne 0x456827
cmp ebx, esi
jae 0x45681e
or eax, 0xffffffff
jmp 0x456825
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
sete al
test al, al
jne 0x456844
lea eax, [esp + 0x14]
call fcn.00456e10
mov eax, dword [esp + 0x14]
cmp eax, edi
jne 0x4567db
jmp 0x45692b
lea edx, [esp + 0xc4]
lea ecx, [esp + 0x18]
call fcn.00456ac0
mov esi, dword [eax]
test esi, esi
je 0x45685d
inc dword [esi + 0x1c]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x456875
dec dword [eax + 0x1c]
jne 0x456875
mov eax, dword [esp + 0x2c]
xor edi, edi
call fcn.004431c0
mov eax, dword [esp + 0x40]
mov edx, dword [eax + 0x14]
mov dword [esp + 0x2c], esi
cmp edx, 0x10
jb 0x456889
mov ebx, dword [eax]
jmp 0x45688b
mov ebx, eax
cmp edx, 0x10
jb 0x456894
mov esi, dword [eax]
jmp 0x456896
mov esi, eax
mov ecx, dword [eax + 0x10]
add ecx, esi
cmp edx, 0x10
jb 0x4568a2
mov eax, dword [eax]
push ebx
lea edx, [esp + 0x30]
push edx
push ecx
push eax
lea ecx, [esp + 0x54]
call fcn.0044b2c0
add esp, 0x10
test al, al
je 0x456927
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
lea eax, [esp + 0x70]
jbe 0x4568e0
lea eax, [esi + 0xc]
lea ecx, [esp + 0x8c]
call fcn.00447fa0
mov esi, dword [esp + 0x3c]
lea ecx, [esp + 0x8c]
push ecx
lea edx, [esp + 0xc8]
push edx
mov byte [esp + 0xf8], 0x15
call fcn.00455d80
cmp dword [esp + 0xa0], 0x10
jb 0x456927
mov eax, dword [esp + 0x8c]
push eax
call fcn.00464d3e
add esp, 4
mov edi, dword [esp + 0x1c]
mov byte [esp + 0xf0], 0x16
mov eax, dword [edi]
push edi
push eax
lea edi, [esp + 0x30]
lea esi, [esp + 0x20]
call fcn.00456cd0
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.00464d3e
add esp, 4
cmp dword [esp + 0xd8], 0x10
jb 0x45696b
mov edx, dword [esp + 0xc4]
push edx
call fcn.00464d3e
add esp, 4
mov eax, dword [esp + 0x48]
mov dword [esp + 0xd8], 0xf
mov dword [esp + 0xd4], 0
mov byte [esp + 0xc4], 0
test eax, eax
jmp 0x4560f0
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x80]
mov dword [esp + 0x2c], ebx
call fcn.00464f9b
push 0x4a0c2c
lea ecx, [esp + 0x80]
push ecx
mov dword [esp + 0x84], vtable.std::bad_alloc.0
call fcn.004695d4
int3