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

Disassembly:
sub esp, 0x54
push ebx
mov ebx, dword [esp + 0x5c]
push ebp
push esi
mov esi, dword [esp + 0x6c]
xor ebp, ebp
mov edx, dword [ebx + 0x234]
push edi
mov edi, dword [ebx + 0x230]
mov eax, edi
or eax, edx
mov dword [esp + 0x24], ebp
mov byte [esp + 0x12], 0
mov dword [esp + 0x34], 0x64
mov dword [esp + 0x20], edi
mov dword [esp + 0x1c], edx
jne 0x100d59dc
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], closesocket
mov eax, dword [ebx + 0x8c8]
lea ecx, [esi + 0xc2]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x2c], ecx
mov byte [eax], 0
mov eax, dword [esp + 0x7c]
mov byte [eax], 0
lea eax, [esi + 0x10]
mov edi, dword [esi + 4]
mov edx, dword [ebx + 0x4b8]
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], ecx
mov ecx, dword [esi]
mov dword [esp + 0x28], eax
mov eax, ecx
and eax, edi
cmp eax, 0xffffffff
je 0x100d5a3f
mov eax, dword [esp + 0x2c]
cmp byte [eax], 0
jne 0x100d5a3f
mov eax, dword [esp + 0x28]
sub ecx, dword [eax]
sbb edi, dword [eax + 4]
test edi, edi
jg 0x100d5a3f
jl 0x100d5a3d
cmp ecx, edx
jae 0x100d5a3f
mov edx, ecx
mov edi, dword [esp + 0x30]
test edx, edx
je 0x100d5a7a
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x70]
push edx
push edi
push dword [eax + 0x200]
push ebx
call fcn.100cfa80
mov ebp, eax
add esp, 0x14
cmp ebp, 0x51
je 0x100d5f48
test ebp, ebp
jg 0x100d6093
mov ecx, dword [esp + 0x14]
jmp 0x100d5a80
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x28]
mov eax, dword [edx]
or eax, dword [edx + 4]
jne 0x100d5ab9
push 7
lea eax, [esp + 0x48]
push ebx
push eax
call fcn.100de760
add esp, 0xc
cmp dword [esi + 0x78], 0
jle 0x100d5ab5
lea eax, [esp + 0x54]
push eax
call fcn.100c4d60
add esp, 4
movups xmm0, xmmword [eax]
movups xmmword [esi + 0x68], xmm0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
or dword [eax], 1
test ecx, ecx
jne 0x100d5ad0
cmp dword [esi + 0x90], ecx
jne 0x100d5ad0
mov al, 1
jmp 0x100d5ad2
xor al, al
mov byte [esp + 0x11], al
test ecx, ecx
jg 0x100d5ae2
test al, al
je 0x100d5f4f
mov byte [ecx + edi], 0
mov ecx, dword [esp + 0x6c]
mov dword [esi + 0x50], edi
mov eax, dword [ecx + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x100d5b23
lea edx, [esp + 0x12]
push edx
lea edx, [esp + 0x18]
push edx
push ecx
push ebx
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x100d6093
mov ecx, dword [esp + 0x6c]
cmp byte [esp + 0x12], al
jne 0x100d6049
mov edi, dword [esp + 0x38]
mov dword [esp + 0x2c], edi
cmp byte [edi], 0
je 0x100d5bb4
lea eax, [esp + 0x13]
mov byte [esp + 0x13], 0
push eax
lea eax, [esp + 0x18]
push eax
push ecx
push ebx
call fcn.100db8b0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x100d6093
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx + 0x1e8]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x100d5ba0
cmp dword [esi + 0xc], ebp
jg 0x100d5ba0
jl 0x100d5b74
cmp dword [esi + 8], ebp
ja 0x100d5ba0
cmp dword [esp + 0x14], 0
jle 0x100d5ba0
lea edx, [esp + 0x12]
push edx
lea edx, [esp + 0x18]
push edx
push ecx
push ebx
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x100d6093
cmp byte [esp + 0x12], al
jne 0x100d6045
cmp byte [esp + 0x13], 0
jne 0x100d5f58
cmp byte [edi], 0
jne 0x100d5eaa
cmp dword [esp + 0x14], 0
mov dl, byte [esp + 0x11]
jg 0x100d5bc7
test dl, dl
je 0x100d5eae
cmp byte [ebx + 0x154], 0
jne 0x100d5fc3
cmp dword [esi + 0x90], 0
jne 0x100d5c15
test dl, dl
jne 0x100d5c15
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx + 0x1e8]
test dword [eax + 0x44], 0x40003
je 0x100d5c15
mov edi, dword [esp + 0x78]
push edi
push ecx
push ebx
call fcn.100da7f0
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x100d6093
cmp byte [edi], al
jne 0x100d6093
inc dword [esi + 0x90]
cmp byte [ebx + 0x6db], 0
je 0x100d5c67
cmp dword [esi + 0x48], 0
je 0x100d5c55
lea edi, [ebx + 0x8b8]
push edi
call fcn.100c5840
add esp, 4
push eax
push edi
call fcn.100c5850
add esp, 4
push eax
push 3
push ebx
call fcn.100cf870
add esp, 0x10
cmp dword [esi + 0x48], 1
jne 0x100d5c67
push dword [esp + 0x14]
push dword [esi + 0x50]
push 3
push ebx
call fcn.100cf870
add esp, 0x10
cmp byte [esi + 0xc7], 0
je 0x100d5cbb
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x1c]
push dword [esi + 0x50]
push ebx
call fcn.10100860
add esp, 0x14
test eax, eax
jg 0x100d5f7e
cmp eax, 0xffffffff
jne 0x100d5cbb
mov eax, dword [esp + 0x6c]
and dword [esi + 0x64], 0xfffffffe
mov edx, dword [eax + 0x10]
mov ecx, dword [eax + 0x14]
mov eax, edx
or eax, ecx
je 0x100d5cbb
push ecx
push edx
push str.Leftovers_after_chunking:___I64du_bytes
push ebx
call fcn.100cf9e0
add esp, 0x10
cmp dword [esi + 0x48], 1
jne 0x100d5ce3
cmp byte [esi + 0xc5], 0
jne 0x100d5ce3
lea eax, [ebx + 0x8b8]
push eax
call fcn.100c5840
mov edx, dword [esp + 0x1c]
add esp, 4
add dword [edx], eax
adc dword [edx + 4], 0
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
cmp ecx, 0xffffffff
jne 0x100d5cf6
cmp edi, ecx
je 0x100d5d7c
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cdq
add eax, dword [ebx]
adc edx, dword [ebx + 4]
mov ebx, dword [esp + 0x68]
cmp edx, edi
jl 0x100d5d7c
jg 0x100d5d12
cmp eax, ecx
jb 0x100d5d7c
mov edx, dword [esp + 0x18]
mov eax, dword [edx]
mov esi, eax
sub esi, ecx
add esi, dword [esp + 0x14]
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x70]
je 0x100d5d5f
cmp byte [esi + 0xc5], 0
jne 0x100d5d5f
push dword [edx + 4]
push eax
push edi
push ecx
push dword [esi + 4]
push dword [esi]
push dword [esp + 0x3c]
push str.Excess_found_in_a_read:_excess___zu__size___I64d__maxdownload___I64d__bytecount___I64d
push ebx
call fcn.100cf9e0
mov eax, dword [esp + 0x90]
push 1
push eax
call fcn.100d06c0
add esp, 0x2c
mov ecx, dword [esp + 0x18]
mov eax, dword [esi + 8]
sub eax, dword [ecx]
mov dword [esp + 0x14], eax
jns 0x100d5d76
mov dword [esp + 0x14], 0
and dword [esi + 0x64], 0xfffffffe
jmp 0x100d5d80
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cdq
add dword [ecx], eax
adc dword [ecx + 4], edx
push dword [ecx + 4]
sub dword [esp + 0x24], eax
push dword [ecx]
sbb dword [esp + 0x24], edx
push ebx
call fcn.100de4c0
add esp, 0xc
cmp byte [esi + 0xc7], 0
jne 0x100d5eaa
cmp dword [esp + 0x14], 0
jne 0x100d5dc6
cmp dword [esi + 0x48], 0
jne 0x100d5dcc
mov dl, byte [esp + 0x11]
test dl, dl
je 0x100d5eae
cmp dword [esi + 0x48], 0
je 0x100d5e1e
cmp byte [esi + 0xc5], 0
jne 0x100d5e1e
lea ebp, [ebx + 0x8b8]
push ebp
call fcn.100c5840
mov edi, dword [esi + 8]
add esp, 4
mov edx, dword [esi + 0xc]
mov ecx, edi
and ecx, edx
cmp ecx, 0xffffffff
je 0x100d5dff
xor ecx, ecx
cmp ecx, edx
jl 0x100d5dff
jg 0x100d5e01
cmp eax, edi
ja 0x100d5e01
mov edi, eax
push ebp
call fcn.100c5850
push edi
push eax
push 1
push ebx
call fcn.100cfa70
mov ebp, eax
add esp, 0x14
test ebp, ebp
jne 0x100d6093
cmp dword [esi + 0x48], 2
jge 0x100d5e9b
cmp byte [ebx + 0x6e3], 0
jne 0x100d5e55
mov eax, dword [esi + 0x80]
test eax, eax
je 0x100d5e55
cmp byte [esi + 0xc5], 0
jne 0x100d5e9b
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x100d5e9b
push ecx
push dword [esi + 0x50]
push eax
push ebx
call fcn.100d3f50
jmp 0x100d5e96
cmp byte [esi + 0xc5], 0
jne 0x100d5e9b
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x100d5e9b
mov eax, dword [esp + 0x6c]
mov edx, dword [esi + 0x50]
mov eax, dword [eax + 0x1e8]
test dword [eax + 0x44], 0xc000
je 0x100d5e89
push ecx
push edx
push ebx
call fcn.100ed0c0
add esp, 0xc
jmp 0x100d5e99
push dword [esp + 0x14]
push edx
push 1
push ebx
call fcn.100cfa70
add esp, 0x10
mov ebp, eax
mov dword [esi + 0x48], 0
test ebp, ebp
jne 0x100d6093
mov dl, byte [esp + 0x11]
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx + 0x1e8]
cmp dword [eax + 0x34], 0
je 0x100d5eca
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x100d5fea
test dl, dl
je 0x100d5ed2
and dword [esi + 0x64], 0xfffffffe
mov eax, dword [esi + 0x64]
test al, 0x10
jne 0x100d6049
test al, 1
je 0x100d6049
cmp dword [esp + 0x1c], 0
jl 0x100d6045
jg 0x100d5efd
cmp dword [esp + 0x20], 0
jbe 0x100d6045
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 0x1e8]
mov eax, dword [eax + 0x44]
test al, 0xc
je 0x100d5f11
push 1
jmp 0x100d5f17
test al, 0x30
jne 0x100d5f28
push 0
push ebx
call fcn.100cf1e0
add esp, 8
test al, al
je 0x100d6045
mov ecx, dword [esp + 0x34]
mov eax, ecx
dec ecx
mov dword [esp + 0x34], ecx
test eax, eax
je 0x100d6045
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
jmp 0x100d5a01
xor ebp, ebp
jmp 0x100d6045
and dword [esi + 0x64], 0xfffffffe
jmp 0x100d6045
mov ecx, dword [esp + 0x14]
test ecx, ecx
jle 0x100d6045
push dword [ebx + 0xcb4]
push ecx
push str.Excess_found:_excess___zd_url___s__zero_length_body_
push ebx
call fcn.100cf9e0
add esp, 0x10
jmp 0x100d6045
cmp eax, 6
jne 0x100d5f9f
push str.Failed_reading_the_chunked_encoded_stream
push ebx
call fcn.100cf910
mov ebp, dword [esp + 0x48]
add esp, 8
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
push eax
call fcn.101007d0
push eax
push str._s_in_chunked_encoding
push ebx
call fcn.100cf910
add esp, 0x10
mov ebp, 0x38
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret
push 2
push dword [esp + 0x70]
call fcn.100d06c0
mov eax, dword [esp + 0x80]
add esp, 8
mov ebp, 8
pop edi
pop esi
mov byte [eax], 1
mov eax, ebp
pop ebp
pop ebx
add esp, 0x54
ret
mov edx, dword [esi + 0x50]
add edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x30]
add eax, edx
mov dword [esi + 0x50], edx
mov edi, dword [ebx + 0x4b8]
lea ecx, [edi + ebp]
cmp eax, ecx
jbe 0x100d600f
mov eax, edi
sub eax, edx
add eax, ebp
jmp 0x100d6013
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x6c]
lea edx, [esp + 0x12]
push edx
mov dword [esp + 0x18], eax
lea edx, [esp + 0x18]
push edx
mov eax, dword [ecx + 0x1e8]
push ecx
push ebx
mov eax, dword [eax + 0x34]
call eax
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x100d6093
cmp byte [esp + 0x12], al
je 0x100d6045
or dword [esi + 0x64], 1
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x34]
test eax, eax
jle 0x100d6061
cmp dword [esp + 0x1c], 0
jg 0x100d606f
jl 0x100d6061
cmp dword [esp + 0x20], 0
ja 0x100d606f
mov eax, dword [esp + 0x7c]
mov byte [ebx + 0xd5f], 1
mov byte [eax], 1
mov eax, dword [esi + 0x64]
and al, 3
cmp al, 2
jne 0x100d6093
cmp byte [ecx + 0x1ce], 0
je 0x100d6093
push str.we_are_done_reading_and_this_is_set_to_close__stop_send
push ebx
call fcn.100cf9e0
add esp, 8
and dword [esi + 0x64], 0xfffffffd
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x54
ret