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

Disassembly:
sub esp, 0x264
mov eax, dword [0x100a5364]
xor eax, esp
mov dword [esp + 0x260], eax
mov eax, dword [esp + 0x270]
mov ecx, dword [esp + 0x274]
push ebx
movzx ebx, word [esp + 0x280]
push ebp
mov ebp, dword [esp + 0x270]
push esi
mov esi, dword [esp + 0x278]
push edi
mov edi, dword [esp + 0x288]
push 0x200
mov dword [esp + 0x18], eax
lea eax, [esp + 0x74]
push 0
push eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x4c], esi
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edi
mov dword [esp + 0x44], ebx
call fcn.1005fe70
movzx eax, bx
xorps xmm0, xmm0
mov dword [esp + 0x40], eax
lea eax, [esp + 0x50]
push 0xa
push eax
lea eax, [esp + 0x28]
movq qword [esp + 0x58], xmm0
push eax
mov word [esp + 0x64], 0
mov dword [esp + 0x48], 0
call fcn.10022a80
add esp, 0x18
test eax, eax
je 0x10021fb6
push str.Excessive_alt_svc_header__ignoring.
push ebp
call fcn.1001fd00
add esp, 8
jmp 0x1002244e
lea eax, [esp + 0x44]
push str.clear
push eax
call fcn.100237c0
add esp, 8
test eax, eax
je 0x10021fe0
push ebx
push edi
push dword [esp + 0x30]
push esi
call fcn.10022710
add esp, 0x10
jmp 0x1002244e
mov esi, dword [esp + 0x14]
cmp byte [esi], 0x3d
jne 0x1002244e
nop dword [eax]
lea eax, [esp + 0x44]
push 0x10089bec
push eax
call fcn.100237c0
add esp, 8
test eax, eax
je 0x10022011
mov eax, 8
mov dword [esp + 0x24], eax
jmp 0x10022055
lea eax, [esp + 0x44]
push 0x10089bf0
push eax
call fcn.100237c0
add esp, 8
test eax, eax
je 0x10022032
mov eax, 0x10
mov dword [esp + 0x24], eax
jmp 0x10022055
lea eax, [esp + 0x44]
push 0x10089bf4
push eax
call fcn.100237c0
add esp, 8
mov ebp, eax
neg ebp
sbb ebp, ebp
and ebp, 0x20
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x1c]
cmp byte [esi + 1], 0x22
jne 0x1002244e
mov ecx, 0x15180
mov dword [esp + 0x20], 0x1009fa83
mov dword [esp + 0x3c], ecx
xor al, al
lea ecx, [esi + 2]
mov byte [esp + 0x13], al
mov esi, ecx
mov byte [esp + 0x12], 1
xor bl, bl
mov al, byte [esi]
cmp al, 0x3a
je 0x100220f9
test al, al
je 0x100220b8
nop dword [eax]
cmp al, 0x30
jl 0x10022098
cmp al, 0x39
jle 0x100220b0
cmp al, 0x61
jl 0x100220a0
cmp al, 0x7a
jle 0x100220b0
cmp al, 0x41
jl 0x100220a8
cmp al, 0x5a
jle 0x100220b0
cmp al, 0x2e
je 0x100220b0
cmp al, 0x2d
jne 0x100220b8
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x10022090
mov edi, esi
sub edi, ecx
je 0x100220e4
cmp edi, 0x200
jae 0x100220e4
push edi
push ecx
lea eax, [esp + 0x78]
push eax
call fcn.1005f8c0
lea eax, [esp + 0x7c]
mov byte [esp + edi + 0x7c], 0
add esp, 0xc
mov dword [esp + 0x20], eax
jmp 0x100220fd
push str.Excessive_alt_svc_host_name__ignoring.
push ebp
call fcn.1001fd00
add esp, 8
mov byte [esp + 0x12], 0
jmp 0x100220fd
mov dword [esp + 0x20], edi
cmp byte [esi], 0x3a
jne 0x10022163
mov al, byte [esi + 1]
inc esi
cmp al, 0x30
jl 0x1002214c
cmp al, 0x39
jg 0x1002214c
push 0xa
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.1006e73e
add esp, 0xc
test eax, eax
je 0x10022150
cmp eax, 0xffff
ja 0x10022150
mov ecx, dword [esp + 0x18]
cmp ecx, esi
je 0x10022150
cmp byte [ecx], 0x22
jne 0x10022150
push eax
call fcn.10021790
mov esi, dword [esp + 0x1c]
add esp, 4
movzx eax, ax
mov dword [esp + 0x34], eax
jmp 0x10022163
mov dword [esp + 0x18], esi
push str.Unknown_alt_svc_port_number__ignoring.
push ebp
call fcn.1001fd00
add esp, 8
mov byte [esp + 0x12], 0
mov al, byte [esi]
inc esi
cmp al, 0x22
jne 0x1002244e
nop
mov byte [esp + 0x11], bl
mov al, byte [esi]
cmp al, 0x20
je 0x1002217e
cmp al, 9
jne 0x10022181
inc esi
jmp 0x10022174
cmp al, 0x3b
jne 0x10022326
mov al, byte [esi + 1]
inc esi
mov dword [esp + 0x14], esi
test al, al
je 0x10022326
cmp al, 0xa
je 0x10022326
cmp al, 0xd
je 0x10022326
push 0x20
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.10022a80
movzx ecx, byte [esp + 0x5c]
xor edx, edx
mov esi, dword [esp + 0x20]
add esp, 0xc
test eax, eax
cmovne ecx, edx
mov byte [esp + 0x50], cl
mov cl, byte [esi]
test cl, cl
je 0x100221f4
mov al, cl
nop dword [eax]
cmp al, 0x20
je 0x100221ea
mov cl, al
cmp al, 9
jne 0x100221f4
mov cl, byte [esi + 1]
inc esi
mov al, cl
test al, al
jne 0x100221e0
cmp cl, 0x3d
jne 0x1002244e
mov cl, byte [esi + 1]
inc esi
mov edx, esi
test cl, cl
je 0x1002244e
mov al, cl
mov edi, esi
mov ebx, esi
mov ebp, esi
cmp al, 0x20
je 0x10022221
mov edi, ebx
mov cl, al
mov edx, ebp
cmp al, 9
jne 0x10022235
mov cl, byte [edi + 1]
lea esi, [edi + 1]
mov al, cl
mov edi, esi
mov ebx, esi
mov ebp, esi
mov edx, esi
test al, al
jne 0x10022213
test cl, cl
je 0x1002244e
cmp cl, 0x22
jne 0x1002224c
inc esi
mov byte [esp + 0x11], 1
mov ebx, esi
jmp 0x1002225a
mov cl, byte [esp + 0x11]
mov ebx, edx
mov byte [esp + 0x11], cl
test cl, cl
je 0x10022285
mov cl, byte [esi]
mov esi, ebx
test cl, cl
je 0x1002227a
mov al, cl
mov edx, ebx
mov cl, al
cmp al, 0x22
je 0x1002227a
mov cl, byte [edx + 1]
lea esi, [edx + 1]
mov al, cl
mov edx, esi
test al, al
jne 0x10022266
inc esi
test cl, cl
je 0x1002244e
jmp 0x100222ad
mov al, byte [esi]
mov ebx, edx
mov byte [esp + 0x11], cl
test al, al
je 0x100222ad
mov byte [esp + 0x11], cl
cmp al, 0x20
je 0x100222ad
cmp al, 9
je 0x100222ad
cmp al, 0x3b
je 0x100222ad
cmp al, 0x2c
je 0x100222ad
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x10022295
push 0xa
lea eax, [esp + 0x1c]
push eax
push ebx
call fcn.1006e73e
add esp, 0xc
mov edi, eax
cmp dword [esp + 0x18], ebx
mov bl, byte [esp + 0x11]
je 0x10022170
cmp edi, 0xffffffff
jae 0x10022170
lea eax, [esp + 0x50]
push eax
push 0x10089d1c
call fcn.100237c0
add esp, 8
test eax, eax
je 0x100222f5
mov dword [esp + 0x3c], edi
jmp 0x10022170
lea eax, [esp + 0x50]
push eax
push str.persist
call fcn.100237c0
mov bl, byte [esp + 0x19]
add esp, 8
test eax, eax
je 0x10022170
cmp edi, 1
jne 0x10022170
mov byte [esp + 0x13], 1
jmp 0x10022170
mov ebp, dword [esp + 0x24]
test ebp, ebp
je 0x10022406
cmp byte [esp + 0x12], 0
je 0x10022406
mov ecx, dword [esp + 0x30]
mov eax, ecx
mov edi, dword [esp + 0x2c]
inc ecx
mov dword [esp + 0x30], ecx
test eax, eax
jne 0x10022365
push dword [esp + 0x38]
push edi
push dword [esp + 0x30]
push dword [esp + 0x4c]
call fcn.10022710
add esp, 0x10
mov eax, dword [esp + 0x34]
movzx ebx, ax
mov eax, dword [esp + 0x38]
push ebx
movzx eax, ax
push eax
push ebp
push dword [esp + 0x34]
push dword [esp + 0x30]
push edi
call fcn.10022660
mov edi, eax
add esp, 0x18
test edi, edi
je 0x10022406
push 0
call fcn.10066a44
add eax, dword [esp + 0x40]
mov dword [edi + 0x18], eax
mov al, byte [esp + 0x17]
adc edx, 0
mov byte [edi + 0x20], al
lea eax, [edi + 0x28]
push eax
mov eax, dword [esp + 0x48]
push edi
mov dword [edi + 0x1c], edx
push dword [eax + 8]
add eax, 4
push eax
call fcn.10026040
add esp, 0x14
cmp ebp, 8
je 0x100223e7
cmp ebp, 0x10
je 0x100223e0
cmp ebp, 0x20
mov eax, 0x1009fa83
mov ecx, 0x10089bf4
cmove eax, ecx
jmp 0x100223ec
mov eax, 0x10089bf0
jmp 0x100223ec
mov eax, 0x10089bec
mov ebp, dword [esp + 0x1c]
push eax
push ebx
push dword [esp + 0x28]
push str.Added_alt_svc:__s:_d_over__s
push ebp
call fcn.1001fd00
add esp, 0x14
jmp 0x1002240a
mov ebp, dword [esp + 0x1c]
cmp byte [esi], 0x2c
jne 0x10022430
push 0xa
lea eax, [esp + 0x48]
inc esi
push eax
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], esi
push eax
call fcn.10022a80
add esp, 0xc
test eax, eax
jne 0x1002244e
mov esi, dword [esp + 0x14]
mov al, byte [esi]
test al, al
je 0x1002244e
cmp al, 0x3b
je 0x1002244e
cmp al, 0xa
je 0x1002244e
cmp al, 0xd
je 0x1002244e
mov edi, dword [esp + 0x2c]
cmp al, 0x3d
je 0x10021ff0
mov ecx, dword [esp + 0x270]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.1005e116
add esp, 0x264
ret