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

Disassembly:
push 0xffffffffffffffff
push 0x486954
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x54
mov eax, dword [esp + 0x64]
push ebx
push ebp
push esi
mov esi, ecx
push edi
mov ecx, dword [esp + 0x78]
mov edx, dword [esi + 0x228]
mov ebp, dword [esi + 0x224]
lea ebx, [eax + ecx]
lea edi, [esi + 0x21c]
mov dword [esp + 0x18], ebx
sub ebx, eax
mov eax, dword [edi + 8]
sub edx, eax
cmp edx, ebx
jae 0x4560c5
mov edx, dword [edi + 4]
test edx, edx
je 0x455fed
mov ecx, eax
sub ecx, edx
cmp ebx, ecx
jb 0x455fef
mov ecx, ebx
test edx, edx
jne 0x455ff7
xor eax, eax
jmp 0x455ff9
sub eax, edx
add eax, ecx
test eax, eax
mov dword [esp + 0x20], eax
jge 0x456005
xor eax, eax
push eax
call fcn.0047c85e
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], eax
mov eax, dword [edi + 4]
add esp, 4
cmp eax, ebp
mov dword [esp + 0x14], eax
je 0x456049
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
call fcn.0044bb00
mov eax, dword [esp + 0x18]
add esp, 8
inc eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
inc eax
cmp eax, ebp
mov dword [esp + 0x14], eax
jne 0x456021
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x74]
push edx
push eax
push ecx
mov ecx, edi
call fcn.0044bad0
mov edx, dword [edi + 8]
push eax
push edx
push ebp
mov ecx, edi
call fcn.0044bad0
mov eax, dword [edi + 8]
mov ecx, dword [edi + 4]
push eax
push ecx
mov ecx, edi
call fcn.00466630
mov eax, dword [edi + 4]
push eax
call fcn.0047ab00
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
add edx, eax
mov eax, dword [edi + 4]
add esp, 4
mov dword [edi + 0xc], edx
test eax, eax
jne 0x4560b0
mov eax, dword [esp + 0x1c]
xor ecx, ecx
mov ecx, eax
mov dword [edi + 4], eax
add ecx, ebx
mov dword [edi + 8], ecx
jmp 0x456144
mov ecx, dword [edi + 8]
sub ecx, eax
mov eax, dword [esp + 0x1c]
add ecx, eax
mov dword [edi + 4], eax
add ecx, ebx
mov dword [edi + 8], ecx
jmp 0x456144
mov ecx, eax
sub ecx, ebp
cmp ecx, ebx
jae 0x456103
lea edx, [ebx + ebp]
mov ecx, edi
push edx
push eax
push ebp
call fcn.0044bad0
mov eax, dword [edi + 8]
mov ecx, dword [esp + 0x18]
push eax
push ecx
mov ecx, dword [esp + 0x7c]
sub eax, ebp
add eax, ecx
mov ecx, edi
push eax
call fcn.0044bad0
mov edx, dword [edi + 8]
mov eax, dword [esp + 0x74]
sub edx, ebp
push ebp
add edx, eax
push edx
push eax
jmp 0x456134
test ebx, ebx
jbe 0x456144
push eax
push eax
sub eax, ebx
mov ecx, edi
push eax
call fcn.0044bad0
mov ecx, dword [edi + 8]
mov eax, ecx
sub eax, ebx
cmp ebp, eax
je 0x456129
mov dl, byte [eax - 1]
dec eax
dec ecx
cmp eax, ebp
mov byte [ecx], dl
jne 0x45611e
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x74]
push ebp
push eax
push ecx
call fcn.004588b0
mov eax, dword [edi + 8]
add esp, 0xc
add eax, ebx
mov dword [edi + 8], eax
mov ecx, dword [edi + 4]
test ecx, ecx
jne 0x45614f
xor eax, eax
jmp 0x456154
mov eax, dword [edi + 8]
sub eax, ecx
mov ecx, dword [esi + 0x220]
lea ebp, [esi + 0x230]
push eax
push ecx
mov ecx, ebp
call fcn.00477a70
test eax, eax
jne 0x456178
push eax
push 0x5015
jmp 0x456897
mov ecx, ebp
call fcn.00431d70
test eax, eax
je 0x4568a2
mov ecx, esi
call fcn.00458060
mov ecx, ebp
call fcn.00479000
mov dword [esi + 0x108], eax
mov ecx, ebp
mov dword [esi + 0x10c], edx
call fcn.0045ff90
cmp eax, 0xce
jne 0x4561e0
mov ecx, ebp
call fcn.00401170
test eax, eax
je 0x4561e0
mov ecx, ebp
call fcn.00478fe0
mov dword [esi + 0x110], eax
mov ecx, ebp
mov dword [esi + 0x114], edx
call fcn.00478ff0
mov dword [esi + 0x118], eax
mov dword [esi + 0x11c], edx
mov ecx, ebp
call fcn.0045ff90
mov ecx, ebp
mov dword [esi + 0x140], eax
call fcn.00479010
mov edx, dword [0x489228]
mov ecx, dword [edx]
push ecx
push 0
push eax
lea ecx, [esi + 0x74]
call dword [0x489220]
mov ebx, dword [0x489108]
call ebx
mov dword [esi + 0x198], eax
call ebx
mov dword [esi + 0x190], eax
mov edx, dword [esi + 0x15c]
lea eax, [esp + 0x54]
push edx
push eax
call fcn.004422d0
add esp, 8
mov eax, dword [eax + 4]
mov ebx, dword [0x489294]
test eax, eax
mov dword [esp + 0x6c], 0
mov dword [esp + 0x74], ebx
je 0x456250
mov dword [esp + 0x74], eax
mov eax, dword [esi + 0x88]
test eax, eax
je 0x45625c
mov ebx, eax
mov ecx, ebp
call fcn.00479000
push edx
push eax
mov ecx, ebp
call fcn.0045ff90
push eax
mov ecx, ebp
call fcn.00445f30
mov ecx, dword [esp + 0x80]
mov edx, dword [esi + 0xe4]
push eax
push ecx
push ebx
push edx
push str.CID__3d___s__s__Receive_Header_Completed____d_bytes___status_code:_d___Content_Length_:__I64d
push 0x4a43a0
call fcn.00437c20
add esp, 0x24
mov ebx, 1
lea ecx, [esp + 0x54]
mov dword [esp + 0x6c], 0xffffffff
push ebx
call dword [0x489300]
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0xc8
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0xce
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12d
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12e
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12f
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x130
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x133
je 0x456460
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x197
jne 0x456881
cmp dword [esi + 0xd8], ebx
jne 0x456881
mov al, byte [esp + 0x78]
push 0
lea ecx, [esp + 0x48]
mov byte [esp + 0x48], al
call dword [0x489244]
mov eax, dword [esi + 0x3e0]
mov dword [esp + 0x6c], ebx
test eax, eax
jne 0x45643a
mov eax, dword [esi + 0xdc]
cmp eax, 3
je 0x456385
cmp eax, 2
jne 0x45643a
lea ecx, [esp + 0x44]
push ecx
push str.Proxy_Authenticate
mov ecx, ebp
call fcn.00478cf0
test eax, eax
je 0x45643a
push str.Keep_Alive
push str.Proxy_Connection
mov ecx, ebp
call fcn.00478f40
test eax, eax
je 0x4563bb
mov dword [esi + 0x3e4], ebx
jmp 0x4563c5
mov dword [esi + 0x3e4], 0
mov eax, dword [esi + 0xdc]
cmp eax, 2
jne 0x4563f5
mov edx, dword [esp + 0x48]
test edx, edx
jne 0x4563de
mov edx, dword [0x48923c]
mov edi, str.NTLM
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.NTLM
jmp 0x45641d
cmp eax, 3
jne 0x45643a
mov edx, dword [esp + 0x48]
test edx, edx
jne 0x456408
mov edx, dword [0x48923c]
mov edi, str.Negotiate
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.Negotiate
push edx
call dword [0x4893dc]
add esp, 0xc
test eax, eax
jne 0x45643a
mov ecx, esi
mov dword [esi + 0x3e0], ebx
call fcn.004568e0
jmp 0x456448
push 0
push 0x507b
mov ecx, esi
call fcn.004546e0
push ebx
lea ecx, [esp + 0x48]
mov dword [esp + 0x70], 0xffffffff
call dword [0x489244]
jmp 0x45689e
push 6
mov ecx, esi
call fcn.00457260
mov ecx, ebp
call fcn.0045ff90
mov ecx, dword [esi + 0xe4]
mov edx, dword [esi + 0xe0]
push eax
push ecx
push 0x66
push edx
mov ecx, 0x4a4270
call fcn.004356f0
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12d
je 0x4564dd
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12e
je 0x4564dd
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0x12f
je 0x4564dd
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0xc8
je 0x4564d1
mov ecx, ebp
call fcn.0045ff90
cmp eax, 0xce
jne 0x456531
mov dword [esi + 0x174], 0
jmp 0x456531
mov ebx, dword [esi + 0x174]
mov edx, dword [esi + 0x178]
inc ebx
inc edx
mov eax, ebx
mov dword [esi + 0x174], ebx
cmp eax, 5
mov dword [esi + 0x178], edx
jl 0x45650a
push 0
push 0x5017
jmp 0x456897
mov ecx, ebp
call fcn.00479010
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x456890
mov eax, dword [esi + 0x158]
test eax, eax
je 0x45685f
mov ecx, esi
call fcn.004569d0
mov dl, byte [esp + 0x78]
push 0
lea ecx, [esp + 0x38]
mov byte [esp + 0x38], dl
call dword [0x489244]
mov al, byte [esp + 0x78]
push 0
lea ecx, [esp + 0x28]
mov dword [esp + 0x70], 2
mov byte [esp + 0x28], al
call dword [0x489244]
mov ecx, ebp
mov byte [esp + 0x6c], 3
call fcn.00479020
mov ecx, dword [0x489228]
mov edx, dword [ecx]
lea ecx, [esp + 0x34]
push edx
push 0
push eax
call dword [0x489220]
mov ecx, ebp
call fcn.00479030
mov ecx, dword [0x489228]
mov edx, dword [ecx]
lea ecx, [esp + 0x24]
push edx
push 0
push eax
call dword [0x489220]
mov eax, dword [esp + 0x3c]
mov ebx, dword [0x4893dc]
test eax, eax
je 0x4565d0
mov ecx, dword [esp + 0x38]
test ecx, ecx
jne 0x4565bc
mov ecx, dword [0x48923c]
push eax
push str.chunked
push ecx
call ebx
add esp, 0xc
test eax, eax
je 0x4565f9
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x456668
mov eax, dword [esp + 0x28]
test eax, eax
jne 0x4565e5
mov eax, dword [0x48923c]
mov ecx, dword [esp + 0x2c]
push ecx
push str.gzip
push eax
call ebx
add esp, 0xc
test eax, eax
jne 0x456668
xor edi, edi
mov ecx, esi
push edi
push 0x501a
call fcn.004546e0
mov ecx, dword [esp + 0x28]
cmp ecx, edi
je 0x45662c
mov al, byte [ecx - 1]
test al, al
je 0x456622
cmp al, 0xff
je 0x456622
dec al
mov byte [ecx - 1], al
jmp 0x45662c
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x28], edi
cmp ecx, edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
je 0x45689e
mov al, byte [ecx - 1]
test al, al
je 0x456659
cmp al, 0xff
je 0x456659
dec al
mov byte [ecx - 1], al
jmp 0x45689e
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
jmp 0x45689e
mov eax, dword [edi + 4]
test eax, eax
jne 0x456673
xor edi, edi
jmp 0x456678
mov edi, dword [edi + 8]
sub edi, eax
mov ecx, ebp
call fcn.00445f30
mov ebp, dword [esp + 0x78]
xor ebx, ebx
mov edx, ebp
sub edx, edi
add eax, edx
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0x320]
cmp eax, ebx
je 0x456789
mov ecx, dword [esi + 0x140]
xor edi, edi
xor eax, eax
cmp ecx, 0xc8
jne 0x4566bd
mov edi, dword [esi + 0x108]
mov eax, dword [esi + 0x10c]
jmp 0x4566e1
cmp ecx, 0xce
jne 0x4566e1
mov edi, dword [esi + 0x118]
mov edx, dword [esi + 0x110]
mov eax, dword [esi + 0x11c]
mov ecx, dword [esi + 0x114]
sub edi, edx
sbb eax, ecx
cmp eax, dword [esi + 0x32c]
ja 0x4567ae
jb 0x4566fb
cmp edi, dword [esi + 0x328]
jae 0x4567ae
mov ecx, dword [esi + 0x334]
cmp ecx, ebx
jne 0x456709
xor eax, eax
jmp 0x456711
mov eax, dword [esi + 0x33c]
sub eax, ecx
cmp eax, edi
jae 0x456789
cmp edi, ebx
mov eax, edi
jge 0x45671d
xor eax, eax
push eax
call fcn.0047c85e
mov edx, dword [esi + 0x338]
mov ebp, eax
mov eax, dword [esi + 0x334]
add esp, 4
cmp eax, edx
mov ecx, ebp
je 0x45674a
cmp ecx, ebx
je 0x456744
mov bl, byte [eax]
mov byte [ecx], bl
xor ebx, ebx
inc ecx
inc eax
cmp eax, edx
jne 0x45673a
mov eax, dword [esi + 0x334]
push eax
mov dword [esp + 0x78], eax
call fcn.0047ab00
mov eax, dword [esi + 0x334]
add esp, 4
add edi, ebp
cmp eax, ebx
mov dword [esi + 0x33c], edi
jne 0x456773
xor ecx, ecx
jmp 0x45677b
mov ecx, dword [esi + 0x338]
sub ecx, eax
add ecx, ebp
mov dword [esi + 0x334], ebp
mov dword [esi + 0x338], ecx
mov ecx, esi
call fcn.004568c0
mov ecx, dword [esp + 0x28]
cmp ecx, ebx
je 0x456825
mov al, byte [ecx - 1]
test al, al
je 0x45681b
cmp al, 0xff
je 0x45681b
dec al
mov byte [ecx - 1], al
jmp 0x456825
push ebx
push 0x501b
mov ecx, esi
call fcn.004546e0
mov ecx, dword [esp + 0x28]
cmp ecx, ebx
je 0x4567df
mov al, byte [ecx - 1]
test al, al
je 0x4567d5
cmp al, 0xff
je 0x4567d5
dec al
mov byte [ecx - 1], al
jmp 0x4567df
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
cmp ecx, ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
je 0x456814
mov al, byte [ecx - 1]
test al, al
je 0x45680a
cmp al, 0xff
je 0x45680a
dec al
mov byte [ecx - 1], al
mov eax, ebp
jmp 0x4568a2
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
mov eax, ebp
jmp 0x4568a2
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x28], ebx
cmp ecx, ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
je 0x456859
mov al, byte [ecx - 1]
test al, al
je 0x45684f
cmp al, 0xff
je 0x45684f
dec al
mov byte [ecx - 1], al
mov eax, dword [esp + 0x78]
jmp 0x4568a2
dec ecx
push ecx
call fcn.0047ab00
add esp, 4
mov eax, dword [esp + 0x78]
jmp 0x4568a2
mov ecx, ebp
call fcn.0045ff90
mov ecx, dword [esi + 0xe0]
push eax
mov eax, dword [esi + 0xe4]
push eax
push 0x66
push ecx
mov ecx, 0x4a4270
call fcn.004356f0
mov ecx, ebp
call fcn.0045ff90
push eax
push 0x5016
jmp 0x456897
push 0
push 0x5019
mov ecx, esi
call fcn.004546e0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x64]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x60
ret 8