Function at 0x565d60
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x63598d
mov eax, dword fs:[0]
push eax
sub esp, 0xb8c
mov eax, dword [0x717f80]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x18]
lea ecx, [ebp - 0x50]
mov edi, dword [ebp + 0x20]
xorps xmm0, xmm0
mov esi, dword [ebp + 8]
mov ebx, dword [ebp + 0x1c]
push str.sign_azure_keyvault
push edi
mov dword [ebp - 0xb8c], esi
mov dword [ebp - 0xb90], eax
mov dword [ebp - 0xb98], ebx
movq qword [ebp - 0x50], xmm0
mov dword [ebp - 0x48], 0
call fcn.004b2490
mov ecx, ebx
mov dword [ebp - 4], 0
call fcn.004a0bb0
cmp dword [esi + 0x524], 0
jne 0x565df3
mov eax, dword [edi]
mov ecx, edi
push str.No_JSON.
call dword [eax + 0x14]
xor bl, bl
jmp 0x566729
push 0x138
lea eax, [ebp - 0x188]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x188]
call fcn.004b2580
mov esi, dword [esi + 0x524]
lea eax, [ebp - 0x188]
push eax
push str.client_id
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.00475c20
test al, al
je 0x566710
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.client_secret
call fcn.00475c20
test al, al
je 0x566710
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.tenant_id
call fcn.00475c20
test al, al
je 0x566710
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.vault_name
call fcn.00475c20
test al, al
je 0x566710
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.cert_name
call fcn.00475c20
test al, al
je 0x566710
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.cert_version
call fcn.00475c20
test al, al
je 0x566710
push 0x74
lea eax, [ebp - 0x3cc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x3cc]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x3cc]
mov ecx, esi
push eax
push str.client_id
call fcn.004765b0
lea ecx, [ebp - 0x3cc]
call fcn.0049d520
push 0x74
lea eax, [ebp - 0x4b4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x4b4]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x4b4]
mov ecx, esi
push eax
push str.client_secret
call fcn.004765b0
lea ecx, [ebp - 0x4b4]
call fcn.0049d520
push 0x74
lea eax, [ebp - 0x358]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x358]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x358]
mov ecx, esi
push eax
push str.tenant_id
call fcn.004765b0
lea ecx, [ebp - 0x358]
call fcn.0049d520
push 0x74
lea eax, [ebp - 0x2e4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2e4]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x2e4]
mov ecx, esi
push eax
push str.vault_name
call fcn.004765b0
lea ecx, [ebp - 0x2e4]
call fcn.0049d520
push 0x74
lea eax, [ebp - 0x270]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x270]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x270]
mov ecx, esi
push eax
push str.cert_name
call fcn.004765b0
lea ecx, [ebp - 0x270]
call fcn.0049d520
push 0x74
lea eax, [ebp - 0x1fc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1fc]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x1fc]
mov ecx, esi
push eax
push str.cert_version
call fcn.004765b0
lea ecx, [ebp - 0x1fc]
call fcn.0049d520
lea eax, [ebp - 0x2e4]
mov ecx, edi
push eax
push str.vault_name
call fcn.004b3100
lea eax, [ebp - 0x270]
mov ecx, edi
push eax
push str.cert_name
call fcn.004b3100
lea eax, [ebp - 0x1fc]
mov ecx, edi
push eax
push str.cert_version
call fcn.004b3100
cmp byte [edi + 0x129], 0
je 0x5660d2
lea eax, [ebp - 0x3cc]
mov ecx, edi
push eax
push str.client_id
call fcn.004b3100
lea eax, [ebp - 0x358]
mov ecx, edi
push eax
push str.tenant_id
call fcn.004b3100
call fcn.00475950
mov ebx, eax
mov dword [ebp - 0xb94], ebx
test ebx, ebx
jne 0x5660ea
xor bl, bl
jmp 0x5666cc
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x44]
movq qword [ebp - 0x44], xmm0
call fcn.0046daa0
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 8
call fcn.00470840
push 0x74
lea eax, [ebp - 0x610]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x610]
call fcn.00494a40
push str._oauth2_token
lea ecx, [ebp - 0x358]
mov byte [ebp - 4], 9
call fcn.00499300
push eax
push str.https:__login.microsoftonline.com_
lea ecx, [ebp - 0x610]
call fcn.00494c00
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x3cc]
call fcn.00499300
push eax
push str.client_id
mov ecx, ebx
call fcn.00476d20
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x4b4]
call fcn.00499300
push eax
push str.client_secret
mov ecx, ebx
call fcn.00476d20
lea eax, [ebp - 0x188]
mov ecx, ebx
push eax
push str.https:__vault.azure.net
push str.resource
call fcn.00476d20
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x610]
call fcn.00499300
push eax
push str.token_endpoint
mov ecx, ebx
call fcn.00476d20
push 0x118
lea eax, [ebp - 0xb88]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xb88]
call fcn.00468d60
lea ecx, [ebp - 0xb88]
mov byte [ebp - 4], 0xa
call fcn.0046c200
push str..vault.azure.net_keys_
lea ecx, [ebp - 0x2e4]
mov esi, eax
call fcn.00499300
push eax
push str.https:__
mov ecx, esi
call fcn.00494c00
lea ecx, [ebp - 0x1fc]
call fcn.00499300
push eax
push 0x6436d8
lea ecx, [ebp - 0x270]
call fcn.00499300
push eax
mov ecx, esi
call fcn.00494c00
push str._sign_api_version7.4
mov ecx, esi
call fcn.00494f80
push 0x74
lea eax, [ebp - 0x440]
mov dword [ebp - 0x14], 0
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x440]
call fcn.00494a40
mov ecx, dword [ebp - 0xb8c]
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0xb
push eax
call fcn.0051bb40
mov esi, eax
cmp esi, 3
jne 0x5662af
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x100
jne 0x56629d
mov eax, str.ES256
jmp 0x5662f8
mov eax, str.ES384
mov edx, str.ES512
cmp ecx, 0x180
jmp 0x5662f5
cmp esi, 1
jne 0x56666c
cmp byte [ebp + 0x10], 0
je 0x5662d9
mov ecx, dword [ebp + 0xc]
cmp ecx, 7
jne 0x5662cd
mov eax, str.PS256
jmp 0x5662f8
mov eax, str.PS384
mov edx, str.PS512
jmp 0x5662f2
mov ecx, dword [ebp + 0x14]
cmp ecx, 7
jne 0x5662e8
mov eax, str.RS256
jmp 0x5662f8
mov eax, str.RS384
mov edx, str.RS512
cmp ecx, 2
cmovne eax, edx
push eax
lea ecx, [ebp - 0x440]
call fcn.00494f80
lea eax, [ebp - 0x440]
mov ecx, edi
push eax
push 0x690ab8
call fcn.004b3100
push 0x74
lea eax, [ebp - 0x59c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x59c]
call fcn.00494a40
mov ecx, dword [ebp - 0xb90]
lea eax, [ebp - 0x59c]
push eax
push str.base64url
mov byte [ebp - 4], 0xc
call fcn.004a26b0
push 0x118
lea eax, [ebp - 0x840]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x840]
call fcn.00468d60
push str.___value_:_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0xd
call fcn.00499300
push eax
push str._alg_:_
lea ecx, [ebp - 0x840]
call fcn.0046c200
mov ecx, eax
call fcn.00494c00
push 0x67c844
lea ecx, [ebp - 0x59c]
call fcn.00499300
push eax
lea ecx, [ebp - 0x840]
call fcn.0046c200
mov ecx, eax
call fcn.00494b40
call fcn.0048ac40
mov ebx, eax
test ebx, ebx
jne 0x5663d2
xor bl, bl
jmp 0x566654
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
lea ecx, [ebp - 0x38]
movq qword [ebp - 0x38], xmm0
call fcn.0046daa0
lea eax, [ebx + 0x8dc]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x38]
call fcn.00470840
push 0x118
lea eax, [ebp - 0xa70]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xa70]
call fcn.00468d60
mov ecx, dword [ebp - 0xb94]
lea eax, [ebp - 0xa70]
push eax
mov byte [ebp - 4], 0xf
call fcn.00473fa0
lea eax, [ebp - 0xa70]
mov ecx, ebx
push eax
call fcn.004807d0
mov esi, dword [edi + 0x10c]
lea eax, [ebp - 0x958]
push 0x118
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x958]
call fcn.00468d60
push str.application_json
lea ecx, [ebp - 0x958]
mov byte [ebp - 4], 0x10
call fcn.004698d0
push edi
push esi
lea eax, [ebp - 0x840]
mov ecx, ebx
push eax
lea eax, [ebp - 0x958]
push eax
lea eax, [ebp - 0xb88]
push eax
call fcn.0048db90
mov esi, eax
test esi, esi
jne 0x5664a7
xor bl, bl
jmp 0x566636
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
lea ecx, [ebp - 0x2c]
movq qword [ebp - 0x2c], xmm0
call fcn.0046daa0
push esi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x11
call fcn.00470840
push 0x118
lea eax, [ebp - 0x728]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x728]
call fcn.00468d60
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x728]
mov ecx, esi
push eax
call fcn.00472bd0
mov ecx, esi
call fcn.00472f50
mov esi, eax
mov ecx, edi
push esi
push str.statusCode
call fcn.004b2d90
cmp esi, 0xc8
je 0x56653d
lea eax, [ebp - 0x728]
mov ecx, edi
push eax
push str.response
call fcn.004b3300
xor bl, bl
jmp 0x566623
call fcn.00475950
mov esi, eax
test esi, esi
jne 0x56654f
xor bl, bl
jmp 0x566623
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x20]
movq qword [ebp - 0x20], xmm0
call fcn.0046daa0
push esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x13
call fcn.00470840
lea eax, [ebp - 0x728]
mov ecx, esi
push eax
call fcn.004740a0
push 0x74
lea eax, [ebp - 0x528]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x528]
call fcn.00494a40
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 0x14
push eax
lea eax, [ebp - 0x528]
mov ecx, esi
push eax
push str.value
call fcn.004765b0
test al, al
jne 0x5665e4
mov eax, dword [edi]
mov ecx, edi
push str.No_value_found_in_JSON_response.
call dword [eax + 0x14]
lea eax, [ebp - 0x728]
mov ecx, edi
push eax
push str.response
call fcn.004b3300
xor bl, bl
jmp 0x566610
push str.base64url
lea ecx, [ebp - 0x528]
call fcn.00499300
mov ecx, dword [ebp - 0xb98]
push eax
call fcn.0049f7b0
mov ecx, dword [ebp - 0xb98]
call fcn.0046e290
test eax, eax
setne bl
lea ecx, [ebp - 0x528]
call fcn.00494a90
lea ecx, [ebp - 0x20]
call fcn.0046db50
lea ecx, [ebp - 0x728]
call fcn.00468df0
lea ecx, [ebp - 0x2c]
call fcn.0046db50
lea ecx, [ebp - 0x958]
call fcn.00468df0
lea ecx, [ebp - 0xa70]
call fcn.00468df0
lea ecx, [ebp - 0x38]
call fcn.0046db50
lea ecx, [ebp - 0x840]
call fcn.00468df0
lea ecx, [ebp - 0x59c]
call fcn.00494a90
jmp 0x5666a3
mov eax, dword [edi]
mov ecx, edi
push str.Only_RSA_and_EC_keys_are_supported_by_Azure_Key_Vault
call dword [eax + 0x14]
mov eax, str.None
cmp esi, 2
jne 0x566689
mov ecx, 0x68c6c4
jmp 0x566694
cmp esi, 5
mov ecx, str.Ed25519
cmovne ecx, eax
mov eax, dword [edi]
push ecx
push str.certKeyType
mov ecx, edi
call dword [eax + 0x2c]
xor bl, bl
lea ecx, [ebp - 0x440]
call fcn.00494a90
lea ecx, [ebp - 0xb88]
call fcn.00468df0
lea ecx, [ebp - 0x610]
call fcn.00494a90
lea ecx, [ebp - 0x44]
call fcn.0046db50
lea ecx, [ebp - 0x1fc]
call fcn.00494a90
lea ecx, [ebp - 0x270]
call fcn.00494a90
lea ecx, [ebp - 0x2e4]
call fcn.00494a90
lea ecx, [ebp - 0x358]
call fcn.00494a90
lea ecx, [ebp - 0x4b4]
call fcn.00494a90
lea ecx, [ebp - 0x3cc]
call fcn.00494a90
jmp 0x56671e
mov eax, dword [edi]
mov ecx, edi
push str.Missing_one_or_more_of_client_id__client_secret__tenant_id__vault_name__cert_name__cert_version
call dword [eax + 0x14]
xor bl, bl
lea ecx, [ebp - 0x188]
call fcn.004b26a0
lea ecx, [ebp - 0x50]
call fcn.004b2630
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00622073
mov esp, ebp
pop ebp
ret