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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x6f0
mov esi, esp
mov dword [esi + 0x6d8], ebp
lea eax, [esi + 0x6e0]
mov dword [esi + 0x4c], ecx
mov dword [esi + 8], edx
mov edx, dword [ebp + 8]
mov dword [eax - 4], esp
or dword [eax + 8], 0xffffffff
mov dword [eax + 4], 0x501200
mov ecx, dword fs:[0]
mov dword [eax], ecx
mov dword fs:[0], eax
and dword [eax + 8], 0
mov eax, dword [ebp + 0xc]
mov byte [esi + 3], 1
lea ecx, [esi + 0x280]
push eax
call fcn.004bceca
pop eax
cmp dword [esi + 0x280], 2
jne 0x4079fb
mov eax, dword [esi + 0x284]
mov ecx, 0x558134
mov dword [esi + 0x14], eax
call fcn.00404ddf
mov dword [esi + 0x10], 0
push 3
pop edi
jmp 0x407a98
mov ecx, dword [esi + 0x294]
mov eax, dword [esi + 0x290]
mov dword [esi + 0x6e8], 0xc
mov dword [esi + 0x54], ecx
lea ecx, [esi + 0x180]
mov dword [esi + 0x50], eax
call fcn.004491f9
lea eax, [esi + 0x298]
mov ecx, 0x1010101
lea ebx, [esi + 0x694]
movsd xmm0, qword [eax - 0x18]
movsd xmm1, qword [eax - 0x10]
mov dword [esi + 0xac], ecx
mov dword [esi + 0xa8], ecx
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xa0], ecx
mov dword [esi + 0x9c], ecx
lea ecx, [esi + 0x250]
movsd qword [ebx + 0x34], xmm0
movsd qword [ebx + 0x3c], xmm1
push 0x30
push eax
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [esi + 0x18c]
mov edi, dword [eax - 0xc]
mov ecx, dword [eax - 8]
mov edx, dword [eax - 4]
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
push 0x34
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 8]
lock inc dword [eax]
jle 0x407fca
lea ecx, [esi + 0x694]
lea eax, [esi + 0xbc]
push 0x44
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [esi + 0x108]
lea eax, [esi + 0x250]
push 0x30
push eax
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ebx, [esi + 0x14c]
lea eax, [esi + 0x8c]
push 0x24
push eax
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 8]
mov edx, dword [esi + 0x10]
lea ecx, [esi + 0x108]
mov dword [ebx + 0x2c], eax
mov eax, dword [esi + 0x14]
mov dword [ecx - 0x58], edi
mov dword [ecx - 0x54], edx
xor edi, 3
mov dword [ecx - 0x50], eax
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
mov dword [ebx - 0x4c], eax
mov dword [ebx - 0x48], ecx
mov dword [ebx - 0xc], 0x3b9aca00
and dword [ebx - 4], 0
or edi, edx
mov byte [ebx + 0x24], 2
je 0x407cb2
mov edx, dword [esi + 0x108]
mov eax, dword [esi + 0x110]
mov byte [esi + 2], 1
mov dword [esi + 0x6e8], 1
push eax
call fcn.0046d6c8
pop ecx
mov ecx, eax
push 3
push 0x5a7b61
call fcn.004257b4
pop ecx
pop edx
test al, al
je 0x407cb2
lea ecx, [esi + 0xf0]
mov byte [esi + 2], 1
call fcn.004fe91d
mov edi, edx
mov byte [esi + 2], 1
lea ecx, [esi + 0x280]
mov edx, eax
add edi, eax
push edi
call fcn.0046a8fe
pop eax
mov eax, dword [esi + 0x280]
cmp eax, 0x80000001
je 0x407cb2
mov ecx, dword [esi + 0x284]
mov edi, dword [esi + 0x288]
lea edx, [esi + 0x30]
mov byte [esi + 2], 1
mov dword [edx], eax
mov dword [edx + 4], ecx
lea ecx, [esi + 0x18]
mov dword [edx + 8], edi
call fcn.00420c60
lea ecx, [esi + 0xf0]
mov dword [esi + 0x6e8], 0xa
call fcn.004fe952
mov edi, edx
mov dl, 1
mov ecx, 0x80000000
test eax, eax
je 0x407c37
add edi, eax
lea ecx, [esi + 0x280]
mov edx, eax
push edi
call fcn.0046a8fe
pop eax
mov eax, dword [esi + 0x280]
cmp eax, 0x80000001
jne 0x407c09
mov ecx, 0x80000000
mov dl, 1
jmp 0x407c37
lea edx, [esi + 0x280]
mov ecx, dword [edx + 4]
mov edi, dword [edx + 8]
mov dword [edx], eax
mov dword [edx + 4], ecx
lea ecx, [esi + 0x180]
mov dword [edx + 8], edi
call fcn.00420c60
mov ecx, dword [esi + 0x180]
cmp ecx, 0x80000000
sete dl
cmp dword [esi + 0x20], 0
jne 0x407c59
test dl, dl
je 0x407c59
mov edx, dword [esi + 0x184]
call fcn.004bdc15
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
call fcn.00466c68
jmp 0x407cb2
mov dword [esi + 8], ecx
lea ecx, [esi + 0xf0]
mov dword [esi + 0x6e8], 0xb
call fcn.004fe662
movzx ecx, al
mov edx, 0x57bbad
push 0x57bbdc
push 0x2f
call fcn.0048339e
pop eax
pop ecx
lea ecx, [esi + 0xf0]
call fcn.004fe852
movzx ecx, al
mov edx, str.has_authority_means_set_password_shouldnt_fail
push 0x57bc1c
push 0x2f
call fcn.0048339e
pop eax
pop ecx
mov eax, dword [esi + 0x18]
cmp eax, 0x80000000
jne 0x407cdd
lea eax, [esi + 0xb0]
push 0xd0
push eax
push dword [esi + 0x4c]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 0x6e0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea edi, [esi + 0x180]
mov dword [esi + 0x68], eax
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
mov eax, dword [edi + 4]
mov dword [esi + 0x6c], ecx
mov dword [esi + 0x70], edx
mov dword [esi + 0x14], eax
mov eax, dword [edi + 8]
mov dword [esi + 0x10], eax
lea eax, [esi + 0xb0]
push 0xd0
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esi + 0xe], 1
push 6
pop eax
mov dword [esi + 0x6e8], eax
lea ecx, [esi + 0x74]
mov edx, 0x57c2a9
push eax
call fcn.004a4a59
pop eax
and word [esi + 0x690], 0
xor ebx, ebx
mov byte [esi + 0x692], bl
push 0x400
push 0
lea edi, [esi + 0x280]
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esi + 0x74]
mov dword [esi + 0x68c], 0x57c2af
mov dword [esi + 0x30], 0x579ea0
mov dword [esi + 0x34], 2
and dword [esi + 0x40], 0
mov byte [esi + 6], 1
mov dword [esi + 0x6e8], 8
lea ecx, [esi + 0x58]
mov edx, edi
mov dword [esi + 0x680], eax
and dword [esi + 0x684], 0
and dword [esi + 0x688], 0
lea eax, [esi + 0x68]
mov byte [esi + 0x693], bl
mov dword [esi + 0x18], eax
lea eax, [esi + 0x18]
mov dword [esi + 0x1c], 0x40731f
mov dword [esi + 0x38], eax
lea eax, [esi + 0x30]
mov dword [esi + 0x3c], 1
push eax
call fcn.004b23eb
pop eax
lea ecx, [esi + 0x58]
mov byte [esi + 6], 1
call fcn.0046f51c
cmp dword [esi + 8], 0x80000000
mov al, 1
je 0x407e4d
mov eax, dword [esi + 8]
mov dword [esi + 0x30], 0x5a7aa4
lea ecx, [esi + 0x58]
mov dword [esi + 0x6e8], 9
lea edx, [esi + 0x280]
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x20], eax
lea eax, [esi + 0x18]
mov dword [esi + 0x58], eax
xor eax, eax
mov dword [esi + 0x5c], 0x40731f
inc eax
mov dword [esi + 0x34], eax
and dword [esi + 0x40], 0
mov dword [esi + 0x38], ecx
mov dword [esi + 0x3c], eax
lea eax, [esi + 0x30]
lea ecx, [esi + 0x84]
push eax
call fcn.004b23eb
pop eax
lea ecx, [esi + 0x84]
call fcn.0046f51c
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
call fcn.00466c68
xor eax, eax
lea ecx, [esi + 0x280]
mov dword [esi + 0x10], eax
mov byte [esi + 4], al
mov dword [esi + 0x6e8], 7
call fcn.004bc76a
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x7c]
mov edx, dword [esi + 0x78]
mov byte [esi + 4], cl
lea ecx, [esi + 0x280]
push eax
call fcn.0043afb9
pop eax
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x30]
lea edx, [esi + 0x280]
mov byte [esi + 4], al
push 0x57c474
push 0x22
push str.base64_is_always_valid_HeaderValueC:Users_atkn1.cargo_registry_srcindex.crates.io_6f17d22bba15001f_reqwest_0.11.20_srcutil.rs
call fcn.004b292e
add esp, 0xc
mov byte [esi + 0x40], 1
mov ecx, dword [esi + 0x74]
mov edx, dword [esi + 0x78]
movsd xmm0, qword [esi + 0x30]
movsd xmm1, qword [esi + 0x38]
mov eax, dword [esi + 0x40]
movsd qword [esi + 0x18], xmm0
movsd qword [esi + 0x20], xmm1
mov dword [esi + 0x28], eax
call fcn.00466c68
mov ecx, dword [esi + 0x68]
mov edx, dword [esi + 0x6c]
call fcn.00466c68
push 0xd0
lea edi, [esi + 0x180]
push edi
lea eax, [esi + 0x280]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 0x280]
mov ecx, dword [esi + 0x284]
and dword [esi + 0x64], 0
and dword [esi + 0x60], 0
and dword [esi + 0x58], 0
mov dword [esi + 0x5c], 0x10
xor eax, 3
mov dword [esi + 0x10], ecx
mov dword [esi + 8], eax
or eax, ecx
jne 0x407f61
push 0xd0
push edi
push dword [esi + 0x4c]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [esi + 0x18]
mov byte [esi + 0xf], 0
mov dword [esi + 0x6e8], 4
call fcn.0046b584
lea ecx, [esi + 0x58]
mov byte [esi + 7], 0
mov dword [esi + 0x6e8], 3
call fcn.0046e4c4
jmp 0x407cc9
movsd xmm0, qword [esi + 0x18]
movsd xmm1, qword [esi + 0x20]
movzx ecx, word [esi + 0x29]
mov al, 1
lea edx, [esi + 0x74]
mov dword [esi + 0x6e8], 4
and dword [edx + 0xc], 0
and dword [edx + 8], 0
and dword [edx], 0
mov byte [esi + 0xf], al
mov dword [edx + 4], 0x10
movsd qword [esi + 0x38], xmm1
movsd qword [esi + 0x30], xmm0
mov byte [esi + 0x40], al
mov word [esi + 0x41], cx
mov cl, byte [esi + 0x2b]
lea eax, [esi + 0x30]
mov byte [esi + 0x43], cl
lea ecx, [esi + 0x280]
push eax
call fcn.0043a9fa
pop eax
push 0xd0
lea eax, [esi + 0x280]
jmp 0x407cbd
ud2