Function at 0x1008b18f
Capabilities:
Encode data using base64
Get proxy

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x1d0
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx]
and dword [ecx], 0
test eax, eax
je 0x1008bfdd
mov eax, dword [eax]
lea esi, [esp + 0x48]
mov edx, 0x101ba448
mov ecx, esi
mov dword [esp + 0xcc], eax
push 0x3b
call sym.winreg::to_utf16::h1eefb79073b9e2b7
pop eax
lea eax, [esp + 0x140]
mov esi, dword [esi + 4]
and dword [eax], 0
push eax
push 0x20019
push 0
push esi
push 0x80000001
call sub.advapi32.dll_RegOpenKeyExW
mov edi, eax
test eax, eax
mov dword [esp + 0x18], eax
jne 0x1008b201
mov eax, dword [esp + 0x140]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x48]
mov edx, esi
call sym.__LT_alloc..raw_vec..RawVec_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::h7a806ae938e9df1e
test edi, edi
je 0x1008b222
mov edx, dword [esp + 0x18]
xor ecx, ecx
call sym.__ZN100__LT_alloc..boxed..Box_LT_dyn_u20_core..error..Error_GT__u20_as_u20_core..convert..From_LT_E_GT__GT_4from17h616f2fa2b06
mov esi, eax
jmp 0x1008b2cd
mov edx, dword [esp + 0x18]
lea esi, [esp + 0x48]
mov ecx, esi
push 0x101ba483
call sym.winreg::RegKey::get_raw_value::h1ffef0a973103211
pop eax
cmp dword [esi], 0x80000000
jne 0x1008b24f
mov ebx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
mov edi, ebx
shrd edi, eax, 8
jmp 0x1008b274
xor edi, edi
cmp byte [esp + 0x54], 4
jne 0x1008b262
mov eax, dword [esp + 0x4c]
mov bl, 4
mov esi, dword [eax]
jmp 0x1008b269
mov esi, 0xde
xor ebx, ebx
lea ecx, [esp + 0x48]
call sym.core::ptr::drop_in_place_LT_core..result..Result_LT_winreg..RegValue_C_std..io..error..Error_GT__GT_::he7c85399bdb9910f
mov eax, esi
cmp bl, 4
jne 0x1008b2b1
mov edx, dword [esp + 0x18]
lea esi, [esp + 0x140]
mov dword [esp + 0x44], eax
mov ecx, esi
push 0x101ba48e
call sym.winreg::RegKey::get_raw_value::h1ffef0a973103211
pop eax
cmp dword [esi], 0x80000000
jne 0x1008b663
mov esi, dword [esp + 0x144]
mov edx, dword [esp + 0x148]
jmp 0x1008b2bb
shl edi, 8
movzx esi, bl
mov edx, eax
or esi, edi
mov ecx, esi
call sym.__ZN100__LT_alloc..boxed..Box_LT_dyn_u20_core..error..Error_GT__u20_as_u20_core..convert..From_LT_E_GT__GT_4from17h616f2fa2b06
mov ecx, dword [esp + 0x18]
mov esi, eax
call sym.__LT_winreg..RegKey_u20_as_u20_core..ops..drop..Drop_GT_::drop::h19dbf2eeefa9bf2a
mov ecx, 0x80000001
call sym.__LT_winreg..RegKey_u20_as_u20_core..ops..drop..Drop_GT_::drop::h19dbf2eeefa9bf2a
mov ecx, esi
mov edx, 0x101b4960
mov dword [esp + 0x194], 0x80000000
call fcn.1000268a
mov edi, 0x80000000
lea ecx, [esp + 0x48]
call sym.std::collections::hash::map::HashMap_LT_K_C_V_GT_::new::h4001bc8cba92e80c
lea esi, [esp + 0x140]
mov edx, 0x101ba43a
mov ecx, esi
push 0xe
call dbg._var_os
pop eax
cmp dword [esi], 0x80000000
jne 0x1008b354
lea ecx, [esp + 0x48]
mov edx, 0x101e5d87
push 0xa
push str.HTTP_PROXYhttp_proxyHTTPS_PROXYhttps_proxyREQUEST_METHODSoftwareMicrosoftWindowsCurrentVersionInternet_SettingsProxyEnableProxyServer
push 4
call sym.reqwest::proxy::insert_from_env::hcf67f9a17ce730b4
add esp, 0xc
test al, al
jne 0x1008b35b
lea ecx, [esp + 0x48]
mov edx, 0x101e5d87
push 0xa
push 0x101ba41a
push 4
call sym.reqwest::proxy::insert_from_env::hcf67f9a17ce730b4
add esp, 0xc
jmp 0x1008b35b
push esi
call sym.core::ptr::drop_in_place_LT_alloc..vec..Vec_LT_u8_GT__GT_::h798a764fd649a212
pop eax
lea ecx, [esp + 0x48]
mov edx, 0x101e5d8b
push 0xb
push 0x101ba424
push 5
call sym.reqwest::proxy::insert_from_env::hcf67f9a17ce730b4
add esp, 0xc
test al, al
jne 0x1008b393
lea ecx, [esp + 0x48]
mov edx, 0x101e5d8b
push 0xb
push 0x101ba42f
push 5
call sym.reqwest::proxy::insert_from_env::hcf67f9a17ce730b4
add esp, 0xc
movsd xmm1, qword [esp + 0x58]
movsd xmm0, qword [esp + 0x60]
movsd xmm2, qword [esp + 0x48]
lea eax, [esp + 0x194]
movsd qword [esp + 0x1b0], xmm1
movsd xmm1, qword [esp + 0x50]
movsd qword [esp + 0x1b8], xmm0
movsd qword [esp + 0x1a0], xmm2
movsd qword [esp + 0x1a8], xmm1
cmp dword [esp + 0x1ac], 0
jne 0x1008b446
cmp edi, 0x80000000
je 0x1008b446
mov ecx, dword [eax + 8]
movsd xmm0, qword [eax]
cmp dword [esp + 0x44], 0
mov dword [esp + 0xa0], ecx
movsd qword [esp + 0x98], xmm0
je 0x1008b4a6
lea ecx, [esp + 0x120]
call sym.std::collections::hash::map::HashMap_LT_K_C_V_GT_::new::h4001bc8cba92e80c
mov edi, dword [esp + 0xa0]
mov ebx, dword [esp + 0x9c]
cmp edi, 2
jb 0x1008b4b7
push 0x3d
pop ecx
mov edx, ebx
cmp edi, 8
jae 0x1008b85f
push edi
call sym.core::slice::memchr::memchr_naive::h7189d541507c581e
jmp 0x1008b865
movsd xmm1, qword [esp + 0x1b0]
movsd xmm0, qword [esp + 0x1b8]
movsd xmm2, qword [esp + 0x1a0]
cmp edi, 0x80000000
movsd qword [esp + 0xe0], xmm1
movsd xmm1, qword [esp + 0x1a8]
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xd0], xmm2
movsd qword [esp + 0xd8], xmm1
je 0x1008bb0d
push eax
call sym.core::ptr::drop_in_place_LT_alloc..vec..Vec_LT_u8_GT__GT_::h798a764fd649a212
pop eax
jmp 0x1008bb0d
lea ecx, [esp + 0x140]
call sym.std::collections::hash::map::HashMap_LT_K_C_V_GT_::new::h4001bc8cba92e80c
jmp 0x1008ba3e
xor edx, edx
mov ecx, 0x101c2bf4
inc edx
push edi
push ebx
call sym.__LT__u5b_A_u5d__u20_as_u20_core..slice..cmp..SlicePartialEq_LT_B_GT__GT_::equal::h0323b2b1dd371d82
pop ecx
pop edx
test al, al
je 0x1008b86f
lea ecx, [esp + 0xd0]
mov edx, ebx
push 0x101c2bf2
push edi
call sym.core::str::__LT_impl_u20_str_GT_::split::hdbce5b6b3f9f9efa
pop eax
pop ecx
lea ebx, [esp + 0x140]
lea ecx, [esp + 0xd0]
call sym.__LT_core..str..iter..Split_LT_P_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::hddfa29a2c7d25176
test eax, eax
je 0x1008b9f6
mov esi, edx
mov edx, eax
mov ecx, ebx
push 0x101c2bf4
push esi
call sym.core::str::__LT_impl_u20_str_GT_::split::hdbce5b6b3f9f9efa
pop eax
pop ecx
mov ecx, ebx
call sym.__LT_core..str..iter..Split_LT_P_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::hddfa29a2c7d25176
test eax, eax
je 0x1008b98f
lea ecx, [esp + 0x48]
mov esi, eax
mov edi, edx
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::try_allocate_in::hda0d606cf6e414d6
cmp dword [esp + 0x48], 0
jne 0x1008bfd0
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
mov dword [ecx], esi
mov dword [ecx + 4], edi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], ecx
mov dword [esp + 8], ecx
mov dword [esp + 0x34], 1
push 0x14
pop ecx
lea eax, [esp + 0x48]
mov esi, ebx
xor ebx, ebx
mov edi, eax
inc ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
call sym.__LT_core..str..iter..Split_LT_P_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_::next::hddfa29a2c7d25176
test eax, eax
je 0x1008b5a8
cmp ebx, dword [esp + 0x2c]
mov esi, eax
mov edi, edx
jne 0x1008b592
lea ecx, [esp + 0x2c]
call sym.alloc::vec::Vec_LT_T_C_A_GT_::reserve::he66c8f428fd633e7
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
lea ecx, [esp + 0x48]
mov dword [eax + ebx*8], esi
mov dword [eax + ebx*8 + 4], edi
inc ebx
mov dword [esp + 0x34], ebx
jmp 0x1008b56e
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
cmp ebx, 2
jne 0x1008b996
lea eax, [edi + 8]
mov dword [esp + 8], esi
mov dword [esp + 0x2c], eax
mov ecx, dword [edi + 8]
mov edx, dword [edi + 0xc]
call sym.reqwest::proxy::extract_type_prefix::hd3c898dca505c1fd
test eax, eax
je 0x1008b5f4
mov eax, dword [esp + 0x2c]
lea esi, [esp + 0x1c0]
mov ecx, esi
mov edx, dword [eax]
push dword [eax + 4]
call sym.__LT_str_u20_as_u20_alloc..string..ToString_GT_::to_string::h76b562e98917fdcd
pop eax
lea ebx, [esp + 0x140]
jmp 0x1008b63f
lea eax, [esp + 0x2c]
mov dword [esp + 0x48], 0x101ba32c
lea esi, [esp + 0x1c0]
lea ebx, [esp + 0x140]
lea edx, [esp + 0x48]
mov dword [esp + 0x140], eax
xor eax, eax
mov ecx, esi
mov dword [esp + 0x144], sym.__LT__RF_T_u20_as_u20_core..fmt..Display_GT_::fmt::h8cbf3773b2f62346
inc eax
mov dword [esp + 0x4c], eax
and dword [esp + 0x58], 0
mov dword [esp + 0x50], ebx
mov dword [esp + 0x54], eax
call sym.alloc::fmt::format::h28429d8526483b61
mov edx, dword [edi]
lea ecx, [esp + 0x120]
push esi
push dword [edi + 4]
call sym.reqwest::proxy::insert_proxy::hd1e3c1a325e19436
pop ecx
pop edx
mov ecx, dword [esp + 8]
mov edx, edi
call sym.__LT_alloc..raw_vec..RawVec_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::hcd18abbfccf98d8e
jmp 0x1008b4ed
movzx eax, byte [esp + 0x14c]
xor esi, esi
mov edi, 0x80000000
mov dword [esp + 0x1c], 0xde
cmp eax, 7
ja 0x1008bf40
mov dword [esp + 0x28], eax
mov eax, 0x86
mov ecx, dword [esp + 0x28]
bt eax, ecx
jae 0x1008bf40
mov eax, dword [esp + 0x148]
mov edi, dword [esp + 0x144]
mov ecx, eax
mov edx, eax
and ecx, 0xfffffffe
shr edx, 2
add ecx, edi
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x48]
and dword [ecx], 0
mov dword [ecx + 4], 1
and dword [ecx + 8], 0
bt eax, 1
adc edx, 0
call sym.alloc::vec::Vec_LT_T_C_A_GT_::reserve::h4e0bdd509c4a7cbf
xor esi, esi
test si, si
je 0x1008b6e3
movzx eax, word [esp + 8]
jmp 0x1008b6f3
cmp edi, dword [esp + 0x10]
je 0x1008b8a6
movzx eax, word [edi]
add edi, 2
mov ecx, eax
and ecx, 0xf800
cmp cx, 0xd800
jne 0x1008b70f
cmp ax, 0xdbff
jbe 0x1008b73f
xor esi, esi
jmp 0x1008b79d
movzx ebx, ax
cmp ax, 0x80
jae 0x1008b768
mov edx, dword [esp + 0x50]
cmp edx, dword [esp + 0x48]
jne 0x1008b72f
lea ecx, [esp + 0x48]
call sym.alloc::raw_vec::RawVec_LT_T_C_A_GT_::reserve_for_push::h2ddfb5e3d7ef7410
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0x4c]
xor esi, esi
mov byte [eax + edx], bl
inc edx
mov dword [esp + 0x50], edx
jmp 0x1008b6d7
mov ecx, dword [esp + 0x10]
cmp edi, ecx
je 0x1008b799
movzx ecx, word [edi]
add edi, 2
mov edx, ecx
add edx, 0x2000
cmp dx, 0xfc00
jae 0x1008b7ac
xor esi, esi
mov eax, ecx
mov word [esp + 8], cx
inc esi
jmp 0x1008b79d
and dword [esp + 0xd0], 0
cmp ebx, 0x800
jae 0x1008b7d0
mov eax, ebx
and bl, 0x3f
xor esi, esi
shr eax, 6
or bl, 0x80
or al, 0xc0
mov byte [esp + 0xd0], al
mov byte [esp + 0xd1], bl
push 2
jmp 0x1008b7ff
xor esi, esi
mov edi, ecx
and dword [esp + 0xd0], 0
mov ebx, 0xfffd
jmp 0x1008b7d2
movzx ebx, cx
mov ecx, 0x3ff
and dword [esp + 0xd0], 0
and eax, ecx
and ebx, ecx
mov ecx, 0x10000
shl eax, 0xa
or ebx, eax
add ebx, ecx
cmp ebx, ecx
jae 0x1008b81e
xor esi, esi
mov eax, ebx
shr eax, 0xc
or al, 0xe0
mov byte [esp + 0xd0], al
mov eax, ebx
and bl, 0x3f
shr eax, 6
or bl, 0x80
and al, 0x3f
or al, 0x80
mov byte [esp + 0xd1], al
mov byte [esp + 0xd2], bl
push 3
pop eax
lea eax, [esp + eax + 0xd0]
lea ecx, [esp + 0x48]
lea edx, [esp + 0xd0]
push eax
call fcn.100e604d
pop eax
jmp 0x1008b6d7
mov eax, ebx
xor esi, esi
shr eax, 0x12
or al, 0xf0
mov byte [esp + 0xd0], al
mov eax, ebx
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [esp + 0xd1], al
mov eax, ebx
and bl, 0x3f
shr eax, 6
or bl, 0x80
and al, 0x3f
or al, 0x80
mov byte [esp + 0xd2], al
mov byte [esp + 0xd3], bl
push 4
jmp 0x1008b7ff
push edi
call sym.core::slice::memchr::memchr_aligned::hf8fc1c296daa0743
pop ecx
cmp eax, 1
je 0x1008b4d0
mov ecx, ebx
mov edx, edi
call sym.reqwest::proxy::extract_type_prefix::hd3c898dca505c1fd
test eax, eax
je 0x1008b8d1
mov dword [esp + 8], edx
lea ecx, [esp + 0x48]
mov edx, ebx
mov esi, eax
push edi
call dbg.clone
pop eax
lea ecx, [esp + 0x120]
mov edx, esi
lea eax, [esp + 0x48]
push eax
push dword [esp + 0xc]
jmp 0x1008b986
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x24]
mov esi, eax
sub eax, 1
jb 0x1008bb7c
cmp byte [ecx + esi - 1], 0
je 0x1008b8ba
jmp 0x1008bb7e
lea eax, [esp + 0x98]
xor edi, edi
lea esi, [esp + 0x48]
lea ebx, [esp + 0x2c]
mov dword [esp + 0x140], eax
mov eax, sym.__LT_alloc..string..String_u20_as_u20_core..fmt..Display_GT_::fmt::hdff27194fd61d0e6
inc edi
mov ecx, ebx
mov edx, esi
mov dword [esp + 0x144], eax
mov eax, 0x101ba32c
mov dword [esi], eax
mov dword [esi + 4], edi
and dword [esi + 0x10], 0
lea eax, [esp + 0x140]
mov dword [esi + 8], eax
mov dword [esi + 0xc], edi
call sym.alloc::fmt::format::h28429d8526483b61
lea ecx, [esp + 0x120]
mov edx, 0x101e5d87
push ebx
push 4
call sym.reqwest::proxy::insert_proxy::hd1e3c1a325e19436
pop ecx
pop edx
mov eax, 0x101ba32c
lea edx, [esp + 0x48]
mov dword [esi], eax
mov dword [esi + 4], edi
and dword [esi + 0x10], 0
lea eax, [esp + 0x140]
mov dword [esi + 8], eax
mov dword [esi + 0xc], edi
lea eax, [esp + 0x98]
lea esi, [esp + 0xd0]
mov dword [esp + 0x140], eax
mov eax, sym.__LT_alloc..string..String_u20_as_u20_core..fmt..Display_GT_::fmt::hdff27194fd61d0e6
mov ecx, esi
mov dword [esp + 0x144], eax
call sym.alloc::fmt::format::h28429d8526483b61
lea ecx, [esp + 0x120]
mov edx, 0x101e5d8b
push esi
push 5
call sym.reqwest::proxy::insert_proxy::hd1e3c1a325e19436
pop ecx
pop edx
jmp 0x1008b9f6
xor esi, esi
push 4
pop ebx
jmp 0x1008b998
mov ebx, edi
cmp dword [esp + 0x12c], 0
je 0x1008b9ed
lea edi, [esp + 0x120]
mov ecx, edi
call sym.hashbrown::raw::RawTableInner::drop_elements::h768293db88dc817b
mov edi, dword [edi + 4]
test edi, edi
je 0x1008b9cf
lea eax, [edi + 0x11]
push eax
push 0xff
push dword [esp + 0x128]
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [edi + 1]
and dword [esp + 0x12c], 0
shr eax, 3
imul eax, eax, 7
cmp edi, 8
cmovb eax, edi
mov dword [esp + 0x128], eax
mov ecx, esi
mov edx, ebx
call sym.__LT_alloc..raw_vec..RawVec_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::hcd18abbfccf98d8e
movsd xmm1, qword [esp + 0x130]
movsd xmm0, qword [esp + 0x138]
movsd xmm2, qword [esp + 0x120]
movsd qword [esp + 0x150], xmm1
movsd xmm1, qword [esp + 0x128]
movsd qword [esp + 0x158], xmm0
movsd qword [esp + 0x140], xmm2
movsd qword [esp + 0x148], xmm1
lea eax, [esp + 0x98]
push eax
call sym.core::ptr::drop_in_place_LT_alloc..vec..Vec_LT_u8_GT__GT_::h798a764fd649a212
pop eax
lea ecx, [esp + 0x48]
call sym.std::collections::hash::map::HashMap_LT_K_C_V_GT_::new::h4001bc8cba92e80c
cmp dword [esp + 0x140], 0
je 0x1008bab2
movsd xmm1, qword [esp + 0x150]
movsd xmm0, qword [esp + 0x158]
movsd xmm2, qword [esp + 0x140]
lea ecx, [esp + 0x48]
movsd qword [esp + 0xe0], xmm1
movsd xmm1, qword [esp + 0x148]
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xd0], xmm2
movsd qword [esp + 0xd8], xmm1
call sym.__LT_hashbrown..raw..RawTable_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::h362b50afae9216a2
jmp 0x1008bb01
movsd xmm1, qword [esp + 0x58]
movsd xmm0, qword [esp + 0x60]
movsd xmm2, qword [esp + 0x48]
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x148]
movsd qword [esp + 0xe0], xmm1
movsd xmm1, qword [esp + 0x50]
movsd qword [esp + 0xe8], xmm0
movsd qword [esp + 0xd0], xmm2
movsd qword [esp + 0xd8], xmm1
call fcn.1000268a
lea ecx, [esp + 0x1a0]
call sym.__LT_hashbrown..raw..RawTable_LT_T_C_A_GT__u20_as_u20_core..ops..drop..Drop_GT_::drop::h362b50afae9216a2
push 0x28
pop ecx
push 8
pop edx
call sym.__ZN5alloc5alloc15exchange_malloc17h142decb00e75c662E.1564
xor ecx, ecx
mov edx, dword [esp + 0xcc]
inc ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
movsd xmm0, qword [esp + 0xd0]
movsd xmm1, qword [esp + 0xd8]
movsd qword [eax + 8], xmm0
movsd qword [eax + 0x10], xmm1
movsd xmm0, qword [esp + 0xe0]
movsd qword [eax + 0x18], xmm0
movsd xmm0, qword [esp + 0xe8]
movsd qword [eax + 0x20], xmm0
mov ecx, dword [edx]
test ecx, ecx
mov dword [esp + 0x48], ecx
mov dword [edx], eax
je 0x1008bb74
lea ecx, [esp + 0x48]
call sym.__ZN4core3ptr140drop_in_place_LT_alloc..sync..Arc_LT_std..collections..hash..map..HashMap_LT_alloc..string..String_C_reqwest..
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor esi, esi
cmp byte [esp + 0x28], 7
mov dword [esp + 0x1c], esi
jne 0x1008bef2
lea ecx, [esp + 0xd0]
mov edx, dword [esp + 0x24]
lea ebx, [esp + 0x48]
mov dword [esp + 0xa8], edi
and dword [ecx], 0
xor eax, eax
inc eax
mov dword [ecx + 4], eax
and dword [ecx + 8], 0
mov ecx, ebx
push eax
push 0x101e6985
push esi
call sym.core::str::pattern::StrSearcher::new::h31365d9c89f7e80a
add esp, 0xc
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xc]
mov edx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov esi, dword [ebx + 0x24]
mov dword [esp + 0xbc], eax
mov eax, dword [ebx + 4]
mov dword [esp + 0xb0], edx
mov dword [esp + 0xac], ecx
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0xc0], eax
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x3c], eax
mov eax, dword [ebx + 0x30]
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 0x34]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0x3c]
mov ebx, ecx
and ebx, 0xffffff00
mov dword [esp + 0xb4], ebx
mov ebx, eax
mov dword [esp + 0x10], eax
sub ebx, edx
mov edx, ecx
mov ecx, eax
dec eax
mov dword [esp + 0xc4], eax
xor eax, eax
mov dword [esp + 0xa4], ebx
cmp dword [esp + 0xbc], 0
mov dword [esp + 0x38], eax
mov dword [esp + 0xc], esi
je 0x1008bdb0
movzx eax, dl
mov byte [esp + 7], dl
mov edx, dword [esp + 0x14]
mov ecx, esi
or eax, dword [esp + 0xb4]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x3c]
mov ebx, ecx
mov dword [esp + 0xb8], ecx
cmp eax, ecx
cmova ebx, eax
cmp esi, 0xffffffff
mov esi, ecx
cmove ebx, eax
mov eax, 0
cmove esi, eax
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0xc4]
add eax, edi
cmp eax, dword [esp + 8]
jae 0x1008bef8
mov cl, byte [edx + eax]
xor eax, eax
xor ebx, ebx
inc ebx
shld eax, ebx, cl
shl ebx, cl
test cl, 0x20
mov ecx, 0
cmovne eax, ebx
cmovne ebx, ecx
and eax, dword [esp + 0xc8]
and ebx, dword [esp + 0xc0]
or ebx, eax
je 0x1008bd16
mov ebx, dword [esp + 0x40]
lea ecx, [edx + edi]
cmp ebx, dword [esp + 0x10]
jae 0x1008bd27
mov eax, ebx
add ebx, edi
cmp ebx, dword [esp + 8]
jae 0x1008bf99
mov edx, dword [esp + 0x28]
lea ebx, [eax + 1]
mov dl, byte [edx + eax]
cmp dl, byte [ecx + eax]
je 0x1008bcde
sub edi, dword [esp + 0x3c]
cmp dword [esp + 0xc], 0xffffffff
mov edx, dword [esp + 0x14]
lea edi, [edi + eax + 1]
je 0x1008bc97
jmp 0x1008bd7d
add edi, dword [esp + 0x10]
cmp dword [esp + 0xc], 0xffffffff
je 0x1008bc97
jmp 0x1008bd7d
mov ecx, dword [esp + 0x3c]
cmp esi, ecx
jae 0x1008bd88
dec ecx
cmp ecx, dword [esp + 0x10]
jae 0x1008bfb2
lea eax, [ecx + edi]
cmp eax, dword [esp + 8]
jae 0x1008bfc0
mov edx, dword [esp + 0x28]
mov bl, byte [edx + ecx]
mov edx, dword [esp + 0x14]
cmp bl, byte [edx + eax]
mov edx, dword [esp + 0x14]
je 0x1008bd2b
add edi, dword [esp + 0xb0]
cmp dword [esp + 0xc], 0xffffffff
je 0x1008bc97
mov ecx, dword [esp + 0xa4]
mov esi, dword [esp + 0xc]
jmp 0x1008bc71
mov esi, dword [esp + 0xc]
xor ecx, ecx
jmp 0x1008bc71
mov eax, dword [esp + 0x10]
cmp dword [esp + 0xc], 0xffffffff
mov ecx, dword [esp + 0xb8]
lea ebx, [edi + eax]
mov eax, 0
cmovne ecx, eax
mov eax, edi
mov edi, ebx
mov dword [esp + 0xc], ecx
jmp 0x1008beb3
test dword [esp + 0xac], 0xff0000
mov ebx, dword [esp + 0x14]
jne 0x1008bef8
mov esi, dword [esp + 0x20]
test esi, esi
je 0x1008bde4
cmp esi, dword [esp + 8]
jae 0x1008bdde
cmp byte [ebx + esi], 0xbf
jg 0x1008bde4
jmp 0x1008bff0
jne 0x1008bff0
cmp esi, dword [esp + 8]
je 0x1008be92
movzx ecx, byte [ebx + esi]
test cl, cl
js 0x1008bdfa
mov eax, ecx
jmp 0x1008be51
mov byte [esp + 7], dl
movzx edx, byte [ebx + esi + 1]
mov eax, ecx
and eax, 0x1f
and edx, 0x3f
cmp cl, 0xdf
jbe 0x1008be3f
movzx ebx, byte [ebx + esi + 2]
shl edx, 6
and ebx, 0x3f
or ebx, edx
cmp cl, 0xf0
mov edx, ebx
jb 0x1008be44
mov ebx, dword [esp + 0x14]
and eax, 7
shl edx, 6
shl eax, 0x12
movzx ecx, byte [ebx + esi + 3]
and ecx, 0x3f
or ecx, edx
or eax, ecx
jmp 0x1008be4d
shl eax, 6
jmp 0x1008be4b
shl eax, 0xc
mov ebx, dword [esp + 0x14]
or eax, edx
mov dl, byte [esp + 7]
test dl, dl
mov dword [esp + 0x20], esi
jne 0x1008bea4
cmp eax, 0x110000
je 0x1008bef8
cmp eax, 0x80
mov ecx, 1
jb 0x1008be85
cmp eax, 0x800
push 2
pop ecx
jb 0x1008be85
cmp eax, 0x10000
push 4
pop ecx
sbb ecx, 0
mov esi, dword [esp + 0x20]
mov dl, 1
add esi, ecx
jmp 0x1008bdc9
mov eax, dword [esp + 8]
test dl, dl
mov byte [esp + 7], dl
mov dword [esp + 0x20], eax
jne 0x1008bea8
jmp 0x1008bef8
mov byte [esp + 7], dl
mov eax, dword [esp + 0x20]
xor byte [esp + 7], 1
mov ebx, eax
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x38]
lea esi, [esp + 0xd0]
add edx, ecx
add eax, ecx
mov ecx, esi
push eax
call fcn.100e604d
pop eax
mov edx, 0x101e6984
lea eax, [0x101e6985]
mov ecx, esi
push eax
call fcn.100e604d
pop eax
mov esi, dword [esp + 0xc]
mov dl, byte [esp + 7]
mov eax, ebx
jmp 0x1008bc40
mov esi, dword [esp + 0x24]
jmp 0x1008bf40
mov edi, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ebx, [esp + 0xd0]
mov ecx, ebx
add eax, edi
add edx, edi
push eax
call fcn.100e604d
pop eax
mov eax, dword [ebx + 8]
mov ecx, dword [ebx]
mov esi, dword [ebx + 4]
cmp dword [esp + 0xa8], 0
mov dword [esp + 0x1c], eax
je 0x1008bf3e
xor edx, edx
mov ebx, ecx
mov ecx, edi
inc edx
call sym.___rust_dealloc
mov edi, ebx
jmp 0x1008bf40
mov edi, ecx
lea ecx, [esp + 0x140]
call sym.core::ptr::drop_in_place_LT_core..result..Result_LT_winreg..RegValue_C_std..io..error..Error_GT__GT_::he7c85399bdb9910f
cmp edi, 0x80000000
jne 0x1008bf5d
mov edx, dword [esp + 0x1c]
jmp 0x1008b2bb
mov ecx, dword [esp + 0x18]
call sym.__LT_winreg..RegKey_u20_as_u20_core..ops..drop..Drop_GT_::drop::h19dbf2eeefa9bf2a
mov ecx, 0x80000001
call sym.__LT_winreg..RegKey_u20_as_u20_core..ops..drop..Drop_GT_::drop::h19dbf2eeefa9bf2a
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x190], eax
mov dword [esp + 0x194], edi
mov dword [esp + 0x198], esi
mov dword [esp + 0x19c], ecx
jmp 0x1008b2f3
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 8]
add ecx, edi
cmp edx, ecx
cmova ecx, edx
push 0x101e6964
call dbg.panic_bounds_check
mov edx, dword [esp + 0x10]
push 0x101e6944
call dbg.panic_bounds_check
mov edx, dword [esp + 8]
mov ecx, eax
push 0x101e6954
call dbg.panic_bounds_check
mov ecx, dword [esp + 0x4c]
test ecx, ecx
jne 0x1008bfe7
call sym.alloc::raw_vec::capacity_overflow::h5648a8ceafa88914
mov ecx, 0x101bce0c
call dbg.unwrap_failed
mov edx, dword [esp + 0x50]
call dbg.handle_alloc_error
mov edx, dword [esp + 8]
mov ecx, ebx
push 0x101e6974
push edx
push esi
call dbg.slice_error_fail