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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x260
mov ebp, dword [esp + 0x274]
call 0x685c16
pop eax
mov dword [esp + 0x144], edx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x44], eax
cmp dword [ebp + 0x30], 0
je 0x685d51
mov ecx, dword [ebp + 0x44]
xor eax, eax
mov edx, ebp
mov esi, 0
mov edi, 0
mov ebp, 0
test ecx, ecx
je 0x685c72
mov edi, dword [edx + 0x38]
mov esi, dword [edx + 0x40]
xor edx, edx
mov ebp, ecx
cmp esi, edi
mov ebx, edi
cmovb ebx, edx
mov edx, edi
sub esi, ebx
sub edx, esi
sub ebp, edx
ja 0x685c6b
add ecx, esi
xor ebp, ebp
mov edi, ecx
mov edx, dword [esp + 0x274]
mov ecx, dword [edx + 0x34]
mov edx, dword [edx + 0x3c]
lea edi, [edi + edi*2]
lea esi, [esi + esi*2]
lea ebx, [edx + edi*4]
lea edi, [ebp + ebp*2]
lea esi, [edx + esi*4]
lea edi, [edx + edi*4]
jmp 0x685ca2
mov ebp, esi
mov esi, edi
mov edi, ebx
add eax, dword [ebp + 8]
add ebp, 0xc
mov ebx, edi
mov edi, esi
mov esi, ebp
cmp esi, ebx
jne 0x685c90
cmp edx, edi
mov ebp, edx
mov edx, esi
jne 0x685c96
mov ebp, dword [esp + 0x274]
cmp eax, ecx
jbe 0x685d51
lea ecx, [esp + 0x1e0]
mov edx, 0x27
push 0x1e
push 0x92675b
call fcn.005b9230
add esp, 8
movzx ebx, byte [esp + 0x1e0]
cmp bl, 4
je 0x685f3b
lea ecx, [esp + 0x1e0]
call fcn.00475840
cmp al, 0xd
jne 0x685e02
mov eax, dword [esp + 0x60]
cmp bl, 3
mov byte [eax], 5
jne 0x687cb9
mov esi, dword [esp + 0x1e4]
mov edi, dword [esi]
mov ebx, dword [esi + 4]
push edi
call dword [ebx]
add esp, 4
cmp dword [ebx + 4], 0
je 0x685d3d
cmp dword [ebx + 8], 9
jb 0x685d2e
mov edi, dword [edi - 4]
push edi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x687cb9
cmp dword [ebp + 0x250], 2
mov ecx, dword [ebp + 0x2dc]
mov edx, 0x4805
mov eax, 0xffff
cmove eax, edx
cmp ecx, eax
jae 0x685dce
lea edi, [ecx + 0x1000]
mov esi, dword [ebp + 0x2d8]
cmp eax, edi
cmovb edi, eax
mov ebx, edi
sub ebx, esi
jbe 0x685e18
mov eax, dword [ebp + 0x2d0]
sub eax, esi
cmp eax, ebx
jb 0x6876dc
mov edi, dword [ebp + 0x2d4]
cmp ebx, 2
lea eax, [edi + esi]
jb 0x685dbf
lea ecx, [ebx - 1]
push ecx
push 0
push eax
call fcn.007bdf30
add esp, 0xc
lea esi, [esi + ebx - 1]
add edi, esi
mov eax, edi
inc esi
mov byte [eax], 0
mov dword [ebp + 0x2d8], esi
jmp 0x685e61
lea ecx, [esp + 0x74]
mov edx, 0x15
push 0x13
push str.message_buffer_full
call fcn.0056cc80
add esp, 8
mov ebx, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov eax, ebx
shrd eax, ecx, 8
cmp bl, 4
je 0x685f02
jmp 0x685f1c
movsd xmm0, qword [esp + 0x1e0]
mov eax, dword [esp + 0x60]
movsd qword [eax], xmm0
jmp 0x687cb9
test ecx, ecx
je 0x685e20
cmp esi, eax
jbe 0x685e61
mov dword [ebp + 0x2d8], edi
cmp dword [ebp + 0x2d0], edi
jbe 0x685e5f
push edi
push dword [ebp + 0x2d4]
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapReAlloc]
test eax, eax
je 0x687f73
mov dword [ebp + 0x2d4], eax
mov dword [ebp + 0x2d0], edi
mov esi, dword [ebp + 0x2d8]
jmp 0x685e61
mov esi, edi
mov edi, dword [ebp + 0x2dc]
mov eax, esi
sub eax, edi
jb 0x687f0e
mov ecx, dword [ebp + 0x2d4]
mov edx, dword [esp + 0x144]
add ecx, edi
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], eax
lea eax, [esp + 0x74]
lea ecx, [esp + 0x148]
push eax
push dword [esp + 0x27c]
call fcn.00726280
add esp, 8
movzx eax, byte [esp + 0x148]
cmp eax, 4
je 0x685eca
cmp eax, 5
jne 0x685ee0
mov bl, 1
mov bh, 0xd
jmp 0x685f14
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
cmp ecx, edx
jbe 0x685ef3
push 0x8a6e9c
call fcn.007c1c40
mov ebx, dword [esp + 0x148]
mov ecx, dword [esp + 0x14c]
cmp bl, 4
jne 0x685f0f
add edi, ecx
mov bl, 4
mov dword [ebp + 0x2dc], edi
cmp bl, 4
jne 0x685f1c
test ecx, ecx
jne 0x685f1c
mov byte [ebp + 0x24b], 1
jmp 0x685f1c
mov edx, ebx
shr edx, 0x10
shl edx, 8
movzx eax, bh
or eax, edx
shl eax, 8
movzx edx, bl
mov dword [esp + 0x1e4], ecx
or edx, eax
mov dword [esp + 0x1e0], edx
cmp bl, 4
jne 0x685ce9
mov eax, dword [esp + 0x1e4]
movzx ecx, byte [ebp + 0x280]
mov edx, dword [ebp + 0x284]
mov esi, dword [ebp + 0x288]
mov dword [esp + 0x1cc], eax
lea eax, [ebp + 0x280]
cmp cl, 0x14
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x28c]
mov byte [ebp + 0x280], 0xf
jne 0x687441
mov dword [esp + 0x18], edx
mov eax, dword [ebp + 0x2dc]
mov edx, dword [ebp + 0x2d8]
mov dword [esp + 0x20], esi
cmp eax, edx
mov dword [esp + 0x2c], eax
ja 0x687f5b
mov eax, dword [ebp + 0x2d4]
xor esi, esi
mov dword [esp + 0x140], eax
lea eax, [ebp + 0x290]
mov dword [esp + 0x1c8], eax
lea eax, [ebp + 0x270]
mov dword [esp + 0x50], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x134], eax
mov dword [esp + 0xf8], eax
mov dword [esp + 0xf4], eax
movzx eax, word [ebp + 0x23c]
cmp byte [ebp + 0x270], 0x14
mov word [esp + 0x126], ax
je 0x686012
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x74]
call fcn.0056c900
movzx eax, byte [esp + 0x74]
cmp eax, 0x14
jne 0x687734
cmp esi, dword [esp + 0x2c]
ja 0x687ec8
mov edx, dword [esp + 0x10]
je 0x687a85
mov eax, dword [esp + 0x2c]
mov ebx, ecx
sub eax, esi
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0x140]
add eax, esi
mov dword [esp + 0x11c], eax
mov eax, dword [ebp + 0x250]
mov byte [esp + 0x57], bl
cmp eax, 1
je 0x686060
xor ecx, ecx
cmp eax, 2
je 0x686097
jmp 0x686084
mov edi, dword [ebp + 0x264]
mov eax, dword [ebp + 0x268]
mov ebx, dword [ebp + 0x254]
mov ecx, 0
sub eax, edi
cmovb eax, ecx
cmp ebx, eax
jbe 0x6868da
cmp byte [ebp + 0x26c], 0
jne 0x687a85
mov ecx, dword [ebp + 0x260]
mov ebx, dword [esp + 0x2c]
sub ebx, esi
jb 0x687ec8
cmp ebx, ecx
mov dword [esp + 0x10], edx
jb 0x687ed8
mov edx, ebx
sub edx, ecx
je 0x687521
mov eax, dword [esp + 0x140]
mov dword [esp + 0x5c], ecx
add eax, esi
lea edi, [eax + ecx]
mov dword [esp + 0x13c], eax
movzx ecx, byte [edi]
mov eax, ecx
mov dword [esp + 0x120], ecx
add ecx, 0xffffffec
cmp ecx, 4
ja 0x687713
mov ecx, dword [ecx*4 + 0x687f9c]
mov al, 1
mov dword [esp + 0x28], 0
mov dword [esp + 4], eax
add ecx, dword [esp + 0x44]
jmp ecx
mov eax, dword [esp + 0x2c]
sub eax, esi
jb 0x687ec8
mov ebp, edi
add ebp, ebx
jb 0x687ed8
cmp eax, ebp
jb 0x687ed8
mov eax, dword [esp + 0x274]
test ebx, ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
movzx ecx, word [eax + 0x258]
movzx eax, word [eax + 0x25a]
mov word [esp + 4], cx
mov word [esp + 0x28], ax
je 0x68698b
js 0x687f7f
movzx eax, byte [0x94bfc5]
xor ecx, ecx
mov edx, ebx
call fcn.0071ee80
mov esi, eax
test eax, eax
jne 0x686990
jmp 0x687f84
mov esi, 1
mov eax, dword [esp + 0x11c]
add eax, edi
push ebx
push eax
push esi
call fcn.007bd9b0
add esp, 0xc
mov edx, dword [esp + 0x274]
mov ecx, dword [edx + 0x268]
mov eax, ecx
sub eax, edi
mov edi, 0
cmovb eax, edi
cmp eax, ebx
ja 0x6869dd
mov ecx, dword [esp + 0xc]
mov dword [edx + 0x250], 2
mov ebp, edx
add ecx, dword [edx + 0x260]
mov dword [esp + 0xc], ecx
jmp 0x686a4c
mov dword [edx + 0x264], ebp
mov edx, dword [esp + 0x2c]
sub edx, dword [esp + 0xc]
jb 0x687ef0
mov edi, ecx
sub edi, ebp
jb 0x687ed8
cmp edx, ecx
jb 0x687ed8
xor edx, edx
cmp edi, 4
jb 0x686a39
mov edx, dword [esp + 0x11c]
movzx ecx, byte [ebp + edx + 1]
movzx edx, word [ebp + edx + 2]
shl edx, 0x10
shl ecx, 8
or ecx, edx
bswap ecx
cmp ecx, 0xffff
ja 0x687e85
add ecx, 4
mov edx, 1
mov ebp, dword [esp + 0x274]
mov dword [ebp + 0x250], edx
mov dword [ebp + 0x254], ecx
cmp eax, ebx
mov al, 1
mov cl, 2
mov dword [esp + 0x1c], esi
mov dword [esp + 0x34], ebx
mov dword [esp + 0xf8], eax
movzx eax, word [esp + 0x28]
setbe ch
mov edx, eax
movzx eax, word [esp + 4]
mov dword [esp + 0x4c], eax
movzx eax, word [esp + 0xa]
lea esi, [esp + 0x74]
cmp ebx, 0x80000000
jne 0x686aea
jmp 0x687a81
cmp ebx, 0x80000001
mov dword [esp + 0x30], edx
je 0x687cc4
cmp byte [esp + 0xf8], 0
mov word [esp + 0xa], ax
je 0x686b10
mov dword [ebp], 0
mov byte [ebp + 0x245], ch
mov eax, ecx
mov byte [esp + 3], cl
mov byte [esp + 0x43], ch
mov ah, byte [ebp + 0x247]
movzx ebp, word [ebp + 0x23c]
or al, ah
mov byte [esp + 4], ah
sete al
cmp bp, 5
sete ah
and ah, al
mov byte [esp + 0x28], ah
je 0x686c71
cmp dword [esp + 0x34], 1
mov ebp, dword [esp + 0x274]
jne 0x686d65
mov eax, dword [esp + 0x1c]
cmp byte [eax], 1
jne 0x686d65
movzx eax, byte [ebp + 0x24e]
cmp al, 3
jae 0x686d65
inc al
mov byte [ebp + 0x24e], al
mov eax, dword [0x94bfb4]
mov byte [esp + 4], 0x14
cmp eax, 5
jne 0x686c64
mov eax, dword [0x94be3c]
mov ecx, 0x83d3d8
mov edx, 0x93d1f8
mov dword [esp + 0xa0], 0x9266e4
mov dword [esp + 0xa4], 1
mov dword [esp + 0xa8], 0x93d1f8
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x94], 5
mov dword [esp + 0x98], str.rustls::connC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.22.4_srcconn.rsreceived_plaintext_buffer_fullAddrParseError
mov dword [esp + 0x9c], 0xc
mov dword [esp + 0x7c], 0
mov dword [esp + 0x84], 0xc
mov dword [esp + 0x80], str.rustls::connC:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.22.4_srcconn.rsreceived_plaintext_buffer_fullAddrParseError
mov dword [esp + 0x88], 0
mov dword [esp + 0x90], 0x63
mov dword [esp + 0x8c], 0x9266f8
mov dword [esp + 0x74], 1
mov dword [esp + 0x78], 0x2f6
cmp eax, 2
mov eax, dword [0x94a8fc]
cmovne eax, ecx
mov ecx, dword [0x94a8f8]
cmovne ecx, edx
push esi
push ecx
call dword [eax + 0x10]
add esp, 8
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
jmp 0x68714f
mov eax, edx
mov edx, ecx
movzx ecx, word [esp + 0x4c]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x74], ebx
shl eax, 0x10
or ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], ecx
mov byte [esp + 0x84], dl
movzx edx, byte [esp + 2]
movzx ecx, word [esp + 0xa]
lea edi, [esp + 0x148]
mov byte [esp + 0x85], dl
mov word [esp + 0x86], cx
mov ecx, edi
mov edx, esi
call fcn.00575200
cmp dword [esp + 0x148], 0x80000004
jne 0x686db9
movzx eax, byte [esp + 0x14c]
mov ebp, dword [esp + 0x274]
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x100001
mov edx, esi
mov esi, dword [esp + 0x154]
mov byte [esp + 4], al
movzx eax, byte [esp + 0x14d]
mov ecx, ebp
mov byte [esp + 0x16], al
movzx eax, word [esp + 0x14e]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x118], eax
xor eax, eax
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
add esp, 4
mov byte [ebp + 0x249], 1
jmp 0x687108
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x10001
xor eax, eax
mov ecx, ebp
mov edx, esi
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
add esp, 4
mov edi, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov byte [ebp + 0x249], 1
mov byte [esp + 4], 8
mov byte [esp + 0x16], 0x14
mov esi, edi
mov dword [esp + 0x24], eax
jmp 0x687110
mov edx, edi
lea eax, [esp + 0x1e0]
mov ecx, 0x20
mov edi, eax
mov esi, edx
rep movsd dword es:[edi], dword [esi]
cmp dword [esp + 0x1e0], 0x80000000
jne 0x686e5f
lea eax, [esp + 0x1e4]
mov dword [esp + 0x1dc], eax
movzx eax, byte [esp + 0x1e4]
cmp al, 2
jne 0x687033
movzx eax, byte [esp + 0x1e6]
mov ebp, dword [esp + 0x274]
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0xd0001
lea edx, [esp + 0x74]
mov byte [esp + 0x48], al
mov eax, dword [esp + 0x134]
mov al, byte [esp + 0x1e7]
mov ecx, ebp
mov esi, eax
xor eax, eax
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
mov ecx, esi
add esp, 4
mov byte [ebp + 0x249], 1
jmp 0x6870b5
cmp byte [esp + 4], 0
mov ecx, 0x20
mov edi, edx
mov esi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x74]
je 0x687194
cmp bp, 5
je 0x687194
mov eax, dword [esp + 0x148]
mov ecx, 0x80000000
xor eax, ecx
cmp eax, 4
setae cl
cmp eax, 1
sete al
or al, cl
mov ecx, dword [esp + 0x274]
cmp byte [ecx + 0x244], 0
movzx ecx, byte [esp + 0x1c0]
je 0x687185
cmp cl, 1
sete cl
test al, cl
je 0x687194
mov byte [esp + 0x100], 0x18
xor eax, eax
mov ecx, dword [0x94bfb4]
cmp ecx, 2
mov ecx, 0xff
setne al
cmova eax, ecx
cmp al, 0xff
je 0x686ef6
movzx eax, al
test eax, eax
jne 0x686fdb
lea eax, [esp + 0x100]
mov ecx, 0x83d3d8
mov edx, 0x93d1f8
lea esi, [esp + 0x64]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], fcn.0057c460
mov eax, dword [0x94be3c]
mov dword [esp + 0xa0], 0x89f1d0
mov dword [esp + 0xa4], 1
mov dword [esp + 0xa8], esi
mov dword [esp + 0xac], 1
mov dword [esp + 0xb0], 0
mov dword [esp + 0x94], 2
mov dword [esp + 0x98], str.rustls::common_state_r
mov dword [esp + 0x9c], 0x14
mov dword [esp + 0x7c], 0
mov dword [esp + 0x84], 0x14
mov dword [esp + 0x80], str.rustls::common_state_r
mov dword [esp + 0x88], 0
mov dword [esp + 0x90], 0x6b
mov dword [esp + 0x8c], str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.22.4_srccommon_state.rsSending_warning_alert
mov dword [esp + 0x74], 1
mov dword [esp + 0x78], 0x1ac
cmp eax, 2
mov eax, dword [0x94a8fc]
cmovne eax, ecx
mov ecx, dword [0x94a8f8]
cmovne ecx, edx
push edi
push ecx
call dword [eax + 0x10]
add esp, 8
movzx eax, word [esp + 0x100]
mov ebp, dword [esp + 0x274]
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov edx, edi
shl eax, 0x10
mov ecx, ebp
mov dword [esp + 0x78], eax
xor eax, eax
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
add esp, 4
lea ecx, [esp + 0x148]
call fcn.00687fe0
mov eax, dword [esp + 0x18]
mov byte [esp + 4], 0x14
jmp 0x68716b
mov ebp, dword [esp + 0x274]
mov ah, byte [esp + 0x1e6]
cmp byte [ebp + 0x247], 0
je 0x68706a
test ah, ah
jne 0x68706a
mov byte [ebp + 0x24a], 1
mov esi, dword [esp + 0xc]
lea ecx, [esp + 0x1e0]
call fcn.00687fe0
jmp 0x685fdf
movzx ecx, byte [esp + 0x1e7]
test al, al
lea edx, [esp + 0x74]
mov byte [esp + 0x65], ah
mov byte [esp + 0x66], cl
mov byte [esp + 0x64], 9
je 0x687272
mov edx, dword [esp + 0x68]
movzx ecx, word [esp + 0x66]
mov esi, dword [esp + 0x6c]
mov byte [esp + 0x48], ah
mov dword [esp + 0x130], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0x12c], esi
mov dword [esp + 0x128], edx
movzx eax, ch
mov dword [esp + 0x134], ecx
movzx ecx, cl
shl eax, 8
or ecx, eax
mov dword [esp + 0xf4], ecx
lea ecx, [esp + 0x1e0]
call fcn.00687fe0
mov eax, dword [esp + 0x130]
movzx edx, byte [esp + 0x48]
mov esi, dword [esp + 0x12c]
mov ecx, dword [esp + 0x128]
mov byte [esp + 4], 9
mov dword [esp + 0x24], eax
mov byte [esp + 0x16], dl
mov dword [esp + 0x118], ecx
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
push eax
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x68713e
cmp dword [edi + 8], 9
jae 0x687128
mov eax, dword [esp + 0x18]
jmp 0x68712f
mov eax, dword [esp + 0x18]
mov eax, dword [eax - 4]
push eax
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
mov edi, dword [esp + 0x24]
cmp byte [esp + 0x28], 0
mov dword [esp + 0x20], esi
mov eax, edi
je 0x68716b
test ebx, ebx
je 0x687165
push dword [esp + 0x1c]
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
mov eax, edi
mov dword [esp + 0x20], esi
mov dword [esp + 0x18], eax
movzx eax, byte [esp + 4]
mov esi, dword [esp + 0xc]
cmp al, 0x14
je 0x685fdf
jmp 0x687cd5
test cl, cl
sete cl
and al, cl
cmp al, 1
je 0x686ec9
mov ebp, dword [esp + 0x274]
mov eax, dword [esp + 0x1c8]
mov ecx, 0x20
lea esi, [esp + 0x1e0]
mov dword [esp + 0x100], ebp
mov dword [esp + 0x104], eax
lea eax, [esp + 0x74]
rep movsd dword es:[edi], dword [esi]
push eax
lea eax, [esp + 0x104]
push eax
push dword [esp + 0x20]
lea eax, [esp + 0x70]
push eax
mov eax, dword [esp + 0x30]
call dword [eax + 0xc]
add esp, 0x10
movzx eax, byte [esp + 0x64]
cmp al, 0x14
mov byte [esp + 4], al
jne 0x6871fc
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
mov dword [esp + 0x20], ecx
jmp 0x68716b
cmp al, 2
movzx eax, byte [esp + 0x65]
mov ecx, dword [esp + 0x6c]
mov byte [esp + 0x16], al
movzx eax, word [esp + 0x66]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0xf4], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x118], ecx
jae 0x68716b
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x10001
mov esi, eax
xor eax, eax
mov ecx, ebp
lea edx, [esp + 0x74]
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
mov eax, esi
add esp, 4
mov byte [ebp + 0x249], 1
jmp 0x68716b
cmp word [ebp + 0x23c], 5
jne 0x6872cc
cmp ah, 0x17
je 0x6872cc
mov byte [esp + 0x48], ah
mov eax, dword [esp + 0x68]
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x100001
movzx esi, word [esp + 0x66]
mov ecx, ebp
mov dword [esp + 0x130], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x12c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x128], eax
jmp 0x686e3f
mov ecx, dword [0x94bfb4]
xor eax, eax
cmp ecx, 2
mov ecx, 0xff
setne al
cmova eax, ecx
test al, al
je 0x6872f4
movzx eax, al
cmp eax, 0xff
jne 0x68742f
lea eax, [esp + 0x1dc]
mov dword [esp + 0x148], 2
mov dword [esp + 0x150], 2
mov dword [esp + 0x158], 0x20
mov dword [esp + 0x15c], 0
mov dword [esp + 0x160], 4
mov byte [esp + 0x164], 3
mov ecx, 0x83d3d8
mov esi, 0x93d1f8
lea ebx, [esp + 0x100]
lea edi, [esp + 0x148]
mov dword [esp + 0x100], eax
mov dword [esp + 0x104], 0x57dbf0
mov eax, dword [0x94be3c]
mov dword [esp + 0xa0], 0x89f20c
mov dword [esp + 0xa4], 1
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], 1
mov dword [esp + 0xb0], edi
mov dword [esp + 0xb4], 1
mov dword [esp + 0x94], 2
mov dword [esp + 0x98], str.rustls::common_state_r
mov dword [esp + 0x9c], 0x14
mov dword [esp + 0x7c], 0
mov dword [esp + 0x84], 0x14
mov dword [esp + 0x80], str.rustls::common_state_r
mov dword [esp + 0x88], 0
mov dword [esp + 0x90], 0x6b
mov dword [esp + 0x8c], str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.22.4_srccommon_state.rsSending_warning_alert
mov dword [esp + 0x74], 1
mov dword [esp + 0x78], 0x1c7
cmp eax, 2
mov eax, dword [0x94a8fc]
cmovne eax, ecx
mov ecx, dword [0x94a8f8]
cmovne ecx, esi
push edx
push ecx
call dword [eax + 0x10]
add esp, 8
lea eax, [esp + 0x64]
push eax
call fcn.0056cbc0
add esp, 4
jmp 0x687055
mov byte [esp + 0x148], cl
movzx ecx, word [ebp + 0x281]
mov word [esp + 0x149], cx
movzx ecx, byte [ebp + 0x283]
mov byte [esp + 0x14b], cl
mov dword [esp + 0x14c], edx
lea ecx, [esp + 0x74]
lea edx, [esp + 0x148]
mov dword [esp + 0x150], esi
mov dword [esp + 0x154], eax
call fcn.0056c900
cmp byte [ebp + 0x280], 0x14
jne 0x6874c5
mov esi, dword [ebp + 0x284]
mov edi, dword [ebp + 0x288]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x6874d1
cmp dword [edi + 8], 9
jb 0x6874b4
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x6874d1
push dword [esp + 0x58]
call fcn.0056cbc0
add esp, 4
movsd xmm0, qword [esp + 0x74]
movsd xmm1, qword [esp + 0x7c]
mov eax, dword [esp + 0x58]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
movsd xmm0, qword [esp + 0x148]
movsd xmm1, qword [esp + 0x150]
movsd qword [esp + 0x108], xmm0
movsd qword [esp + 0x110], xmm1
cmp byte [esp + 0x108], 0x14
jne 0x6879e0
jmp 0x687c41
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
mov edx, 6
and eax, 0xffffff00
movzx eax, al
add ecx, dword [eax*4 + 0x687fc4]
jmp ecx
lea ecx, [ebp + 0x2d0]
mov edx, esi
push ebx
call fcn.007c54d0
add esp, 4
mov esi, dword [ebp + 0x2d8]
mov edi, dword [ebp + 0x2d4]
cmp ebx, 2
lea eax, [edi + esi]
jae 0x685da8
jmp 0x685dbf
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
mov edx, 6
and eax, 0xffffff00
or eax, 4
movzx eax, al
add ecx, dword [eax*4 + 0x687fc4]
jmp ecx
movzx ecx, byte [esp + 0x77]
movzx edx, word [esp + 0x75]
mov esi, dword [esp + 0x7c]
movzx ebx, byte [esp + 0x80]
mov bh, byte [esp + 0x81]
shl ecx, 0x10
mov edi, esi
or edx, ecx
mov ecx, dword [esp + 0x78]
shr edi, 0x10
shl edx, 8
mov dword [esp + 0x30], edi
mov edi, esi
or edx, eax
mov dword [esp + 0x34], ecx
movzx ecx, word [esp + 0x82]
mov eax, ecx
mov ch, bh
mov cl, bl
jmp 0x68782a
cmp dl, 2
mov dword [esp + 0x1c], edx
je 0x687898
mov word [esp + 0xa], ax
movzx eax, dl
cmp eax, 5
je 0x6878ad
cmp eax, 0x10
jne 0x687904
mov eax, dword [esp + 0x30]
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
movzx esi, di
mov dword [esp + 0x78], 0x40001
mov ebx, ecx
mov bh, ch
mov ecx, ebp
lea edx, [esp + 0x74]
shl eax, 0x10
or esi, eax
xor eax, eax
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
mov ch, bh
mov cl, bl
add esp, 4
mov byte [ebp + 0x249], 1
jmp 0x687910
cmp byte [ebp + 0x24c], 0
je 0x687917
mov byte [ebp + 0x20c], 0x10
jmp 0x68795c
push dword [esp + 0x18]
mov eax, dword [esp + 0x24]
mov byte [esp + 7], cl
mov byte [esp + 6], ch
call dword [eax + 0x18]
add esp, 4
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x20001
xor eax, eax
mov ecx, ebp
lea edx, [esp + 0x74]
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
mov ch, byte [esp + 6]
mov cl, byte [esp + 7]
add esp, 4
mov byte [ebp + 0x249], 1
mov eax, dword [esp + 0x30]
movzx esi, di
shl eax, 0x10
or esi, eax
movzx eax, word [esp + 0xa]
jmp 0x687968
mov word [esp + 0xf0], 4
mov dword [esp + 0x74], 0x80000000
mov dword [esp + 0x78], 0x100001
mov esi, eax
xor eax, eax
mov ebx, ecx
mov bh, ch
mov ecx, ebp
lea edx, [esp + 0x74]
cmp byte [ebp + 0x29], 2
sete al
push eax
call fcn.0057c7a0
mov ch, bh
mov cl, bl
mov eax, esi
add esp, 4
mov byte [ebp + 0x249], 1
mov edx, dword [esp + 0x30]
movzx esi, di
shl edx, 0x10
or esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10c], edx
mov dword [esp + 0x110], esi
mov byte [esp + 0x114], cl
mov byte [esp + 0x115], ch
mov ecx, dword [esp + 0x1c]
mov word [esp + 0x116], ax
mov dword [esp + 0x108], ecx
push dword [esp + 0x18]
mov esi, dword [esp + 0x24]
call dword [esi]
add esp, 4
cmp dword [esi + 4], 0
je 0x6879d2
cmp dword [esi + 8], 9
mov eax, esi
jae 0x6879bc
mov eax, dword [esp + 0x18]
jmp 0x6879c3
mov eax, dword [esp + 0x18]
mov eax, dword [eax - 4]
push eax
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
cmp byte [esp + 0x108], 0x14
je 0x687c41
add ebp, 0x60
lea ecx, [esp + 0x74]
mov edx, ebp
push dword [esp + 0x278]
push dword [esp + 0x148]
call fcn.0057dec0
add esp, 8
movzx ebx, byte [esp + 0x74]
cmp bl, 4
je 0x687a1d
lea ecx, [esp + 0x74]
call fcn.00475840
cmp al, 0xd
jne 0x687a1d
cmp bl, 3
je 0x687a24
jmp 0x687a60
cmp byte [esp + 0x74], 3
jne 0x687a60
mov esi, dword [esp + 0x78]
mov edi, dword [esi]
mov ebx, dword [esi + 4]
push edi
call dword [ebx]
add esp, 4
cmp dword [ebx + 4], 0
je 0x687a51
cmp dword [ebx + 8], 9
jb 0x687a42
mov edi, dword [edi - 4]
push edi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
lea eax, [esp + 0x108]
lea ecx, [esp + 0x1d0]
mov edx, 0x15
push eax
call fcn.00688810
add esp, 4
jmp 0x687c5f
mov esi, dword [esp + 0xc]
mov ecx, dword [ebp + 0x2dc]
mov eax, esi
mov esi, ecx
sub esi, eax
jbe 0x687ab8
mov edx, dword [ebp + 0x2d8]
cmp ecx, edx
ja 0x687f69
mov edi, eax
mov eax, dword [ebp + 0x2d4]
add edi, eax
push esi
push edi
push eax
call fcn.007bd9b0
add esp, 0xc
jmp 0x687abe
xor esi, esi
cmp ecx, eax
jne 0x687ac4
mov dword [ebp + 0x2dc], esi
mov eax, dword [esp + 0x58]
cmp byte [eax], 0x14
jne 0x687aff
mov esi, dword [ebp + 0x284]
mov edi, dword [ebp + 0x288]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x687b08
cmp dword [edi + 8], 9
jb 0x687aee
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x687b08
push eax
call fcn.0056cbc0
add esp, 4
mov eax, dword [esp + 0x18]
mov byte [ebp + 0x280], 0x14
mov edx, 0
mov esi, 0
mov ebx, 0
mov dword [ebp + 0x284], eax
mov eax, dword [esp + 0x20]
mov dword [ebp + 0x288], eax
xor eax, eax
mov ecx, dword [ebp + 0x74]
test ecx, ecx
je 0x687b5c
mov esi, dword [ebp + 0x68]
mov edx, dword [ebp + 0x70]
xor edi, edi
cmp edx, esi
mov ebx, esi
cmovb ebx, edi
mov edi, esi
sub edx, ebx
mov ebx, ecx
sub edi, edx
sub ebx, edi
ja 0x687b5c
add ecx, edx
xor ebx, ebx
mov esi, ecx
mov ecx, dword [ebp + 0x6c]
lea esi, [esi + esi*2]
lea edx, [edx + edx*2]
lea edi, [ecx + esi*4]
lea esi, [ebx + ebx*2]
lea edx, [ecx + edx*4]
lea esi, [ecx + esi*4]
jmp 0x687b92
mov ebx, edx
mov edx, esi
mov esi, edi
add eax, dword [ebx + 8]
add ebx, 0xc
mov edi, esi
mov esi, edx
mov edx, ebx
cmp edx, edi
jne 0x687b80
cmp ecx, esi
mov ebx, ecx
mov ecx, edx
jne 0x687b86
mov edx, dword [ebp + 0x44]
xor ecx, ecx
mov ebx, ebp
mov esi, 0
mov edi, 0
mov ebp, 0
test edx, edx
je 0x687be0
mov edi, dword [ebx + 0x38]
mov esi, dword [ebx + 0x40]
xor ebx, ebx
cmp esi, edi
mov ebp, edi
cmovb ebp, ebx
mov ebx, edi
sub esi, ebp
mov ebp, edx
sub ebx, esi
sub ebp, ebx
ja 0x687bd9
add edx, esi
xor ebp, ebp
mov edi, edx
mov ebx, dword [esp + 0x274]
mov edx, dword [ebx + 0x3c]
lea edi, [edi + edi*2]
lea esi, [esi + esi*2]
lea ebx, [edx + edi*4]
lea edi, [ebp + ebp*2]
lea esi, [edx + esi*4]
lea edi, [edx + edi*4]
jmp 0x687c12
mov ebp, esi
mov esi, edi
mov edi, ebx
add ecx, dword [ebp + 8]
add ebp, 0xc
mov ebx, edi
mov edi, esi
mov esi, ebp
cmp esi, ebx
jne 0x687c00
cmp edx, edi
mov ebp, edx
mov edx, esi
jne 0x687c06
mov ebp, dword [esp + 0x274]
movzx edx, byte [ebp + 0x24a]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], ecx
mov byte [esp + 0x114], dl
movzx eax, byte [esp + 0x114]
movsd xmm0, qword [esp + 0x10c]
cmp al, 2
movsd qword [esp + 0x1d0], xmm0
jne 0x687c78
mov eax, dword [esp + 0x1d0]
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x1d4]
mov dword [edx], eax
mov dword [edx + 4], ecx
jmp 0x687cb9
test al, 1
je 0x687c8e
cmp byte [ebp + 0x246], 0
je 0x687ca1
cmp byte [ebp + 0x247], 0
je 0x687ca1
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x1cc]
mov byte [eax], 4
mov dword [eax + 4], ecx
jmp 0x687cb9
mov ecx, dword [esp + 0x60]
mov edx, 0x25
push 0x13
push str.tls_handshake_alerttls_handshake_eof
call fcn.005b9230
add esp, 8
add esp, 0x260
pop esi
pop edi
pop ebx
pop ebp
ret
mov ch, byte [esp + 2]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x4c]
jmp 0x68782a
mov byte [esp + 0x148], al
movzx eax, byte [esp + 0x16]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov byte [esp + 0x149], al
mov eax, dword [esp + 0xf4]
mov word [esp + 0x14a], ax
mov dword [esp + 0x14c], ecx
mov ecx, dword [esp + 0x118]
mov dword [esp + 0x150], edx
lea edx, [esp + 0x148]
mov dword [esp + 0x154], ecx
lea ecx, [esp + 0x74]
call fcn.0056c900
mov eax, dword [esp + 0x58]
cmp byte [eax], 0x14
jne 0x687d66
mov esi, dword [ebp + 0x284]
mov edi, dword [ebp + 0x288]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x687d6f
cmp dword [edi + 8], 9
jb 0x687d55
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
jmp 0x687d6f
push eax
call fcn.0056cbc0
add esp, 4
movsd xmm0, qword [esp + 0x74]
movsd xmm1, qword [esp + 0x7c]
mov eax, dword [esp + 0x58]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
mov eax, dword [esp + 0xc]
mov ecx, dword [ebp + 0x2dc]
mov esi, ecx
sub esi, eax
jbe 0x687dbf
mov edx, dword [ebp + 0x2d8]
cmp ecx, edx
ja 0x687f69
mov eax, dword [ebp + 0x2d4]
mov ecx, dword [esp + 0xc]
add ecx, eax
push esi
push ecx
push eax
call fcn.007bd9b0
add esp, 0xc
jmp 0x687dc5
xor esi, esi
cmp ecx, eax
jne 0x687dcb
mov dword [ebp + 0x2dc], esi
movsd xmm0, qword [esp + 0x148]
movsd xmm1, qword [esp + 0x150]
movsd qword [esp + 0x110], xmm1
movsd qword [esp + 0x108], xmm0
cmp byte [esp + 0x108], 0x14
jne 0x6879e0
jmp 0x687c41
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x34], 0
and edi, 0xffffff00
or edi, 2
test ebx, ebx
je 0x687ead
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
mov ebp, dword [esp + 0x274]
mov ch, byte [esp + 2]
movzx eax, word [esp + 0xa]
mov cl, byte [esp + 3]
mov edx, edi
jmp 0x687ccc
mov ecx, esi
mov edx, dword [esp + 0x2c]
push 0x89eee4
call fcn.007c1b80
mov ecx, 0x89ef04
call fcn.007c1fe0
mov ecx, dword [esp + 4]
push 0x89edb4
call fcn.007c1c40
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x2c]
push 0x89eee4
call fcn.007c1b80
mov ecx, 1
mov edx, esi
call fcn.007c1490
mov ecx, edi
mov edx, esi
push 0x89eeb4
call fcn.007c1b80
mov edx, ebp
push 0x89eef4
call fcn.007c1e60
mov ecx, ebp
mov edx, ebx
push 0x89eef4
call fcn.007c1c40
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x2c]
push 0x89eed4
call fcn.007c1b80
mov edx, dword [esp + 0x138]
mov ecx, ebx
push 0x89eef4
call fcn.007c1c40
mov ecx, dword [esp + 0x2c]
push 0x89ee80
call fcn.007c1c40
push 0x89eea4
call fcn.007c1c40
mov ecx, 1
mov edx, edi
call fcn.007c1490
call fcn.00418cb0
mov ecx, 1
mov edx, ebx
call fcn.007c1490
mov ecx, 0x89ee6c
call fcn.007c1fe0
nop
or eax, 0xed000005
add al, 0
add bh, dh
add al, 0
add bl, bh
add al, 0
add byte [edi], al
add eax, 0x54a0000
add byte [eax], al
mov al, byte [0xa6000005]
add eax, 0x5ac0000
add byte [eax], al
mov dl, 5
add byte [eax], al
outsd dx, dword [esi]
push ds
add byte [eax], al
outsd dx, dword [esi]
push ds
add byte [eax], al
cwde
sbb eax, dword [eax]
add dh, bl
sbb dword [eax], eax
add byte [ebx + ebx + 0x1b930000], cl
add byte [eax], al
int3