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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x3b0
mov dword [esp + 0xb0], ecx
mov ecx, dword [edx + 0x18]
mov eax, dword [edx + 0x14]
mov edi, dword [esp + 0x3cc]
mov ebx, edx
lea esi, [esp + 0x36c]
mov dword [esp + 0x10], ecx
mov ecx, dword [ecx + 0xc]
mov dword [esp + 8], eax
push eax
push esi
mov dword [esp + 0xc], ecx
call ecx
add esp, 8
mov ebp, dword [edi + 8]
lea eax, [edi + 0x50]
lea edi, [esp + 0x328]
mov ecx, edi
mov edx, dword [ebp + 8]
push esi
push eax
push dword [ebp + 0xc]
call fcn.00587330
add esp, 0xc
mov esi, dword [esp + 0x368]
cmp esi, 0x41
jae 0x59624e
test esi, esi
je 0x595802
movzx eax, byte [0x94bfc5]
xor ecx, ecx
mov edx, esi
call fcn.0071ee80
mov ebp, eax
test eax, eax
jne 0x595807
mov ecx, 1
mov edx, esi
call fcn.007c1490
mov ebp, 1
push esi
push edi
push ebp
call fcn.007bd9b0
add esp, 0xc
mov byte [esp + 0x2bc], 0xe
mov dword [esp + 0x250], 0x80000011
mov dword [esp + 0x254], esi
mov dword [esp + 0x258], ebp
lea ebp, [esp + 0x250]
lea edx, [esp + 0x18c]
mov dword [esp + 0x18c], 0
mov dword [esp + 0x190], 1
mov dword [esp + 0x25c], esi
mov dword [esp + 0x194], 0
mov ecx, ebp
call fcn.00572150
mov eax, dword [esp + 0x194]
movsd xmm0, qword [esp + 0x18c]
lea edi, [esp + 0xc0]
mov ecx, 0x1c
mov esi, ebp
lea edx, [esp + 0x18c]
mov dword [esp + 0xbc], eax
movsd qword [esp + 0xb4], xmm0
lea eax, [esp + 0xb4]
rep movsd dword es:[edi], dword [esi]
mov word [esp + 0x208], 5
mov ecx, 0x1f
mov edi, edx
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x94bfb4]
cmp ecx, 5
jne 0x5959b9
mov dword [esp + 0x250], edx
mov dword [esp + 0x254], 0x584930
mov edx, 0x93d1f8
mov ecx, dword [0x94be3c]
mov dword [esp + 0xe0], 0x8a1afc
mov dword [esp + 0xe4], 1
mov dword [esp + 0xe8], ebp
mov dword [esp + 0xec], 1
mov dword [esp + 0xf0], 0
mov dword [esp + 0xd4], 5
mov dword [esp + 0xd8], str.rustls::server::tls13::client_hello
mov dword [esp + 0xdc], 0x23
mov dword [esp + 0xbc], 0
mov dword [esp + 0xc4], 0x23
mov dword [esp + 0xc0], str.rustls::server::tls13::client_hello
mov dword [esp + 0xc8], 0
mov dword [esp + 0xd0], 0x6b
mov dword [esp + 0xcc], str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.22.4_src_server_tls13.rs
mov dword [esp + 0xb4], 1
mov dword [esp + 0xb8], 0x342
cmp ecx, 2
mov ecx, 0x83d3d8
cmove ecx, dword [0x94a8fc]
cmove edx, dword [0x94a8f8]
push eax
push edx
call dword [ecx + 0x10]
add esp, 8
mov eax, 0x80000000
mov esi, dword [esp + 0x3c8]
xor eax, dword [esp + 0x18c]
cmp eax, 3
ja 0x5959dc
cmp eax, 1
je 0x5959dc
mov ecx, dword [esp + 4]
jmp 0x595a44
mov ebp, dword [esp + 0x190]
mov edi, dword [esp + 0x194]
push edi
push ebp
push dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
call dword [eax + 0x18]
add esp, 0xc
mov eax, dword [ebx]
cmp eax, 0x80000000
jne 0x595a10
mov ecx, dword [esp + 4]
lea ebp, [esp + 0x250]
jmp 0x595a44
mov esi, dword [ebx + 8]
sub eax, esi
cmp eax, edi
jb 0x596208
mov eax, dword [ebx + 4]
add eax, esi
push edi
push ebp
push eax
call fcn.007bd9b0
add esp, 0xc
add esi, edi
mov ecx, dword [esp + 4]
lea ebp, [esp + 0x250]
mov dword [ebx + 8], esi
mov esi, dword [esp + 0x3c8]
lea eax, [esp + 0x2e4]
push dword [esp + 8]
push eax
call ecx
add esp, 8
lea edx, [esp + 0xb4]
mov eax, dword [esi]
lea esi, [esp + 0x18c]
mov ecx, 0x20
mov edi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x14], eax
mov ecx, eax
push 1
call fcn.0057c7a0
add esp, 4
push 0x94
mov ebx, dword [esp + 0x3d0]
push ebx
push ebp
call fcn.007bd9b0
add esp, 0xc
mov ecx, dword [esp + 0x3d0]
mov esi, dword [ebx]
mov ebp, dword [ebx + 4]
mov eax, dword [ecx + 0x38]
mov dword [esp + 4], eax
mov eax, dword [ecx + 0x3c]
mov ecx, dword [ebx + 8]
mov edi, dword [eax + 8]
mov dword [esp + 0x10], eax
mov eax, dword [ecx + 0x1c]
mov dword [esp + 0x20], ecx
push dword [ecx + 0x18]
call dword [eax + 0xc]
add esp, 4
push eax
lea eax, [esp + 0xb8]
push eax
call dword [edx + 0x14]
add esp, 8
mov ebx, dword [esp + 0xf4]
cmp ebx, 0x41
jae 0x59623d
push esi
call dword [ebp + 0x14]
add esp, 4
rol ax, 8
mov ecx, dword [ebp + 0x10]
mov byte [esp + 2], bl
mov byte [esp + 1], 0xd
mov word [esp + 0x20c], ax
lea eax, [esp + 0x20c]
mov dword [esp + 0x68], eax
lea eax, [esp + 1]
mov dword [esp + 0x6c], 2
mov dword [esp + 0x70], eax
lea eax, [esp + 2]
mov dword [esp + 0x74], 1
mov dword [esp + 0x78], 0x8a0f27
mov dword [esp + 0x7c], 6
mov dword [esp + 0x80], 0x8a0dd1
mov dword [esp + 0x84], 7
mov dword [esp + 0x88], eax
lea eax, [esp + 0xb4]
mov dword [esp + 0x8c], 1
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ebx
lea ebx, [esp + 0x24]
lea eax, [esp + 0x68]
push 6
push eax
push esi
push ebx
call ecx
add esp, 0x10
mov ecx, dword [esp + 0x64]
cmp ecx, 0x41
jae 0x59622e
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
push ecx
push ebx
push dword [edx + 8]
call dword [eax + 0xc]
add esp, 0xc
mov ebx, eax
mov dword [esp + 8], edx
push esi
call dword [ebp]
add esp, 4
cmp dword [ebp + 4], 0
je 0x595bd2
cmp dword [ebp + 8], 9
jb 0x595bc3
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x94bf18]
call dword [sym.imp.kernel32.dll_HeapFree]
lea ecx, [esp + 0x24]
mov ebp, ebx
call fcn.005692c0
mov ebx, dword [esp + 0x324]
cmp ebx, 0x41
jae 0x59623d
mov eax, dword [esp + 4]
mov esi, dword [esp + 8]
dec edi
and edi, 0xfffffff8
lea edi, [edi + eax + 8]
mov eax, dword [esi + 0x14]
push ebp
mov dword [esp + 0x1c], eax
call eax
add esp, 4
rol ax, 8
mov ecx, dword [esi + 0x10]
mov byte [esp + 0x20c], bl
mov dword [esp + 0x1c], ebx
mov byte [esp + 2], 0x12
mov word [esp + 0x68], ax
lea eax, [esp + 0x68]
mov dword [esp + 0x24], eax
lea eax, [esp + 2]
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x20c]
mov dword [esp + 0x30], 1
mov dword [esp + 0x34], 0x8a0f27
mov dword [esp + 0x38], 6
mov dword [esp + 0x3c], 0x8a0da5
mov dword [esp + 0x40], 0xc
mov dword [esp + 0x44], eax
lea eax, [esp + 0x2e4]
mov dword [esp + 0x48], 1
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ebx
mov ebx, ebp
push 6
lea eax, [esp + 0x28]
push eax
push ebp
lea esi, [esp + 0xc0]
push esi
call ecx
add esp, 0x10
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x1c]
push 0x17
push 0x8a0e31
mov dword [esp + 0xc], edi
push edi
call ebp
add esp, 0xc
test al, al
je 0x595ceb
mov ecx, dword [esp + 0xf4]
cmp ecx, 0x41
jae 0x59622e
push ecx
push esi
push 0x20
push dword [esp + 0x3d0]
push 0x17
push 0x8a0e31
push dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
call dword [eax + 0x18]
add esp, 0x1c
lea eax, [esp + 0xb4]
lea edi, [esp + 0x20c]
mov ecx, 0x11
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, eax
push ebx
call dword [esp + 0x1c]
add esp, 4
mov ecx, dword [esp + 8]
rol ax, 8
mov edx, dword [esp + 0x1c]
mov ecx, dword [ecx + 0x10]
mov word [esp + 0x68], ax
lea eax, [esp + 0x68]
mov byte [esp + 1], 0x12
mov byte [esp + 2], dl
mov dword [esp + 0x24], eax
lea eax, [esp + 1]
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], eax
lea eax, [esp + 2]
mov dword [esp + 0x30], 1
mov dword [esp + 0x34], 0x8a0f27
mov dword [esp + 0x38], 6
mov dword [esp + 0x3c], 0x8a0db1
mov dword [esp + 0x40], 0xc
mov dword [esp + 0x44], eax
lea eax, [esp + 0x2e4]
mov dword [esp + 0x48], 1
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], edx
push 6
lea eax, [esp + 0x28]
push eax
push ebx
push esi
call ecx
add esp, 0x10
push 0x17
push 0x8a0e48
push dword [esp + 0xc]
mov dword [esp + 0xb8], ebp
call ebp
add esp, 0xc
test al, al
je 0x595de1
mov ecx, dword [esp + 0xf4]
cmp ecx, 0x41
jae 0x59622e
push ecx
push esi
push 0x20
push dword [esp + 0x3d0]
push 0x17
push 0x8a0e48
push dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
call dword [eax + 0x18]
add esp, 0x1c
lea ebp, [esp + 0xb4]
lea edi, [esp + 0x68]
mov ecx, 0x11
mov esi, ebp
rep movsd dword es:[edi], dword [esi]
push ebx
call dword [esp + 0x1c]
add esp, 4
mov ecx, dword [esp + 8]
rol ax, 8
mov edx, dword [esp + 0x1c]
lea edi, [esp + 0x2e4]
mov ecx, dword [ecx + 0x10]
mov word [esp + 2], ax
lea eax, [esp + 2]
mov byte [esp + 0xf], 0x10
mov byte [esp + 1], dl
mov dword [esp + 0xb4], eax
lea eax, [esp + 0xf]
mov dword [esp + 0xb8], 2
mov dword [esp + 0xbc], eax
lea eax, [esp + 1]
mov dword [esp + 0xc0], 1
mov dword [esp + 0xc4], 0x8a0f27
mov dword [esp + 0xc8], 6
mov dword [esp + 0xcc], 0x8a0dbd
mov dword [esp + 0xd0], 0xa
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], 1
mov dword [esp + 0xdc], edi
mov dword [esp + 0xe0], edx
push 6
push ebp
push ebx
lea esi, [esp + 0x30]
push esi
call ecx
add esp, 0x10
push 0xf
push 0x8a0e5f
push dword [esp + 0xc]
call dword [esp + 0xb8]
add esp, 0xc
test al, al
je 0x595ef1
mov ecx, dword [esp + 0x64]
cmp ecx, 0x41
jae 0x59622e
push ecx
push esi
push 0x20
push dword [esp + 0x3d0]
push 0xf
push 0x8a0e5f
push dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
call dword [eax + 0x18]
add esp, 0x1c
lea edi, [esp + 0x148]
lea esi, [esp + 0x24]
mov ecx, 0x11
lea ebp, [esp + 0x104]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0xb4], ebx
lea esi, [esp + 0x20c]
mov ecx, 0x11
lea edi, [esp + 0xc0]
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x20]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], edx
rep movsd dword es:[edi], dword [esi]
lea esi, [esp + 0x68]
mov ecx, 0x11
mov edi, ebp
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, ebp
mov esi, dword [esp + 0x14]
push esi
call fcn.00586510
add esp, 4
cmp byte [esi + 0x24c], 0
je 0x5961b4
mov ecx, esi
mov esi, dword [esp + 0xbc]
mov edi, dword [esi]
test edi, edi
je 0x59625f
mov eax, dword [esi + 4]
mov bh, byte [ecx + 0x20f]
mov bl, byte [ecx + 0x244]
movsd xmm3, qword [ebp]
mov dword [esp + 8], eax
lea eax, [esp + 0xc0]
movsd qword [esp + 0x68], xmm3
movsd xmm1, qword [eax + 0x30]
movsd xmm2, qword [eax + 0x28]
movsd xmm0, qword [eax + 0x38]
movsd qword [esp + 0x54], xmm1
movsd xmm1, qword [eax + 0x20]
movsd qword [esp + 0x4c], xmm2
movsd xmm2, qword [eax + 0x18]
movsd qword [esp + 0x5c], xmm0
movsd qword [esp + 0x44], xmm1
movsd xmm1, qword [eax + 0x10]
movsd qword [esp + 0x3c], xmm2
movsd xmm2, qword [eax]
movsd qword [esp + 0x34], xmm1
movsd xmm1, qword [eax + 8]
movsd qword [esp + 0x24], xmm2
movsd xmm2, qword [ebp + 0x10]
mov eax, dword [esp + 0x100]
movsd qword [esp + 0x2c], xmm1
movsd xmm1, qword [ebp + 8]
movsd qword [esp + 0x78], xmm2
movsd xmm2, qword [ebp + 0x20]
movsd qword [esp + 0x70], xmm1
movsd xmm1, qword [ebp + 0x18]
movsd qword [esp + 0x88], xmm2
movsd xmm2, qword [ebp + 0x30]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [ebp + 0x28]
movsd qword [esp + 0x98], xmm2
movsd qword [esp + 0x90], xmm1
movsd xmm1, qword [ebp + 0x38]
mov ebp, dword [esp + 0x144]
movsd qword [esp + 0xa0], xmm1
cmp byte [ecx + 0x209], 2
je 0x596097
mov ecx, dword [esp + 0x14]
mov dword [esp + 4], ebp
mov ebp, eax
add ecx, 0x17c
call fcn.005692c0
mov eax, dword [esp + 0x14]
lea ecx, [eax + 0x1c0]
call fcn.005692c0
mov eax, ebp
mov ebp, dword [esp + 4]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 8]
mov dword [ecx + 0x174], edi
mov dword [ecx + 0x178], edx
movsd xmm0, qword [esp + 0x24]
movsd xmm1, qword [esp + 0x2c]
movsd qword [ecx + 0x17c], xmm0
movsd qword [ecx + 0x184], xmm1
movsd xmm0, qword [esp + 0x34]
movsd qword [ecx + 0x18c], xmm0
movsd xmm0, qword [esp + 0x3c]
movsd qword [ecx + 0x194], xmm0
movsd xmm0, qword [esp + 0x44]
movsd qword [ecx + 0x19c], xmm0
movsd xmm0, qword [esp + 0x4c]
movsd qword [ecx + 0x1a4], xmm0
movsd xmm0, qword [esp + 0x54]
movsd qword [ecx + 0x1ac], xmm0
movsd xmm0, qword [esp + 0x5c]
movsd qword [ecx + 0x1b4], xmm0
mov dword [ecx + 0x1bc], eax
movsd xmm0, qword [esp + 0x68]
movsd xmm1, qword [esp + 0x70]
movsd qword [ecx + 0x1c0], xmm0
movsd qword [ecx + 0x1c8], xmm1
movsd xmm0, qword [esp + 0x78]
movsd qword [ecx + 0x1d0], xmm0
movsd xmm0, qword [esp + 0x80]
movsd qword [ecx + 0x1d8], xmm0
movsd xmm0, qword [esp + 0x88]
movsd qword [ecx + 0x1e0], xmm0
movsd xmm0, qword [esp + 0x90]
movsd qword [ecx + 0x1e8], xmm0
movsd xmm0, qword [esp + 0x98]
movsd qword [ecx + 0x1f0], xmm0
movsd xmm0, qword [esp + 0xa0]
movsd qword [ecx + 0x1f8], xmm0
mov dword [ecx + 0x200], ebp
mov dword [ecx + 0x204], esi
mov byte [ecx + 0x208], bh
mov byte [ecx + 0x209], bl
mov eax, dword [esp + 0xb0]
lea esi, [esp + 0x25c]
mov ecx, 0x11
lea edi, [eax + 0xd8]
rep movsd dword es:[edi], dword [esi]
push 0xd8
lea ecx, [esp + 0xb8]
push ecx
push eax
call fcn.007bd9b0
add esp, 0xc
lea ecx, [esp + 0x2a0]
call fcn.005692c0
lea ecx, [esp + 0x328]
call fcn.005692c0
add esp, 0x3b0
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, ebx
mov edx, esi
push edi
call fcn.007c54d0
add esp, 4
mov eax, dword [ebx + 0x14]
mov esi, dword [ebx + 8]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x18]
mov eax, dword [eax + 0xc]
mov dword [esp + 4], eax
jmp 0x595a1d
mov edx, 0x40
push 0x8a079c
call fcn.007c1c40
mov ecx, ebx
mov edx, 0x40
push 0x8a05e4
call fcn.007c1c40
mov ecx, esi
mov edx, 0x40
push 0x8a0660
call fcn.007c1c40
mov ecx, 0x8a0ef0
call fcn.007c1fe0
int3