Function at 0x555d90
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5cc2fd
mov eax, dword fs:[0]
push eax
sub esp, 0xb88
mov eax, dword [0x692c00]
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 - 0xb90], esi
mov dword [ebp - 0xb8c], eax
movq qword [ebp - 0x50], xmm0
mov dword [ebp - 0x48], 0
call fcn.004481f0
mov ecx, ebx
mov dword [ebp - 4], 0
call fcn.00436dd0
cmp dword [esi + 0x524], 0
jne 0x555e1d
mov eax, dword [edi]
mov ecx, edi
push str.No_JSON.
call dword [eax + 0x14]
xor bl, bl
jmp 0x556755
push 0x138
lea eax, [ebp - 0x188]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x188]
call fcn.00449bd0
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.00482d00
test al, al
je 0x55673c
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.client_secret
call fcn.00482d00
test al, al
je 0x55673c
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.tenant_id
call fcn.00482d00
test al, al
je 0x55673c
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.vault_name
call fcn.00482d00
test al, al
je 0x55673c
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.cert_name
call fcn.00482d00
test al, al
je 0x55673c
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.cert_version
call fcn.00482d00
test al, al
je 0x55673c
push 0x74
lea eax, [ebp - 0x3cc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x3cc]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x3cc]
call fcn.00433740
push 0x74
lea eax, [ebp - 0x4b4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x4b4]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x4b4]
call fcn.00433740
push 0x74
lea eax, [ebp - 0x358]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x358]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x358]
call fcn.00433740
push 0x74
lea eax, [ebp - 0x2e4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2e4]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x2e4]
call fcn.00433740
push 0x74
lea eax, [ebp - 0x270]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x270]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x270]
call fcn.00433740
push 0x74
lea eax, [ebp - 0x1fc]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x1fc]
call fcn.0042aaf0
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.004835c0
lea ecx, [ebp - 0x1fc]
call fcn.00433740
lea eax, [ebp - 0x2e4]
mov ecx, edi
push eax
push str.vault_name
call fcn.00448d80
lea eax, [ebp - 0x270]
mov ecx, edi
push eax
push str.cert_name
call fcn.00448d80
lea eax, [ebp - 0x1fc]
mov ecx, edi
push eax
push str.cert_version
call fcn.00448d80
cmp byte [edi + 0x129], 0
je 0x5560fc
lea eax, [ebp - 0x3cc]
mov ecx, edi
push eax
push str.client_id
call fcn.00448d80
lea eax, [ebp - 0x358]
mov ecx, edi
push eax
push str.tenant_id
call fcn.00448d80
call fcn.00482a30
mov esi, eax
mov dword [ebp - 0xb94], esi
test esi, esi
jne 0x556114
xor bl, bl
jmp 0x5566f8
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x44]
movq qword [ebp - 0x44], xmm0
call fcn.004085a0
push esi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 8
call fcn.0040a2c0
push 0x74
lea eax, [ebp - 0x610]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x610]
call fcn.0042aaf0
push str._oauth2_token
lea ecx, [ebp - 0x358]
mov byte [ebp - 4], 9
call fcn.0042f610
push eax
push str.https:__login.microsoftonline.com_
lea ecx, [ebp - 0x610]
call fcn.0042acb0
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x3cc]
call fcn.0042f610
push eax
push str.client_id
mov ecx, esi
call fcn.00483d30
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x4b4]
call fcn.0042f610
push eax
push str.client_secret
mov ecx, esi
call fcn.00483d30
lea eax, [ebp - 0x188]
mov ecx, esi
push eax
push str.https:__vault.azure.net
push str.resource
call fcn.00483d30
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x610]
call fcn.0042f610
push eax
push str.token_endpoint
mov ecx, esi
call fcn.00483d30
push 0x118
lea eax, [ebp - 0xb88]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xb88]
call fcn.00403910
lea ecx, [ebp - 0xb88]
mov byte [ebp - 4], 0xa
call fcn.00406d30
push str..vault.azure.net_keys_
lea ecx, [ebp - 0x2e4]
mov esi, eax
call fcn.0042f610
push eax
push str.https:__
mov ecx, esi
call fcn.0042acb0
lea ecx, [ebp - 0x1fc]
call fcn.0042f610
push eax
push 0x5d2c98
lea ecx, [ebp - 0x270]
call fcn.0042f610
push eax
mov ecx, esi
call fcn.0042acb0
push str._sign_api_version7.4
mov ecx, esi
call fcn.0042b030
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.0042aaf0
mov ecx, dword [ebp - 0xb90]
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 0xb
push eax
call fcn.004abc70
mov esi, eax
cmp esi, 3
jne 0x5562d9
mov ecx, dword [ebp - 0x14]
cmp ecx, 0x100
jne 0x5562c7
mov eax, str.ES256
jmp 0x556322
mov eax, str.ES384
mov edx, str.ES512
cmp ecx, 0x180
jmp 0x55631f
cmp esi, 1
jne 0x556698
cmp byte [ebp + 0x10], 0
je 0x556303
mov ecx, dword [ebp + 0xc]
cmp ecx, 7
jne 0x5562f7
mov eax, str.PS256
jmp 0x556322
mov eax, str.PS384
mov edx, str.PS512
jmp 0x55631c
mov ecx, dword [ebp + 0x14]
cmp ecx, 7
jne 0x556312
mov eax, str.RS256
jmp 0x556322
mov eax, str.RS384
mov edx, str.RS512
cmp ecx, 2
cmovne eax, edx
push eax
lea ecx, [ebp - 0x440]
call fcn.0042b030
lea eax, [ebp - 0x440]
mov ecx, edi
push eax
push 0x62e2c0
call fcn.00448d80
push 0x74
lea eax, [ebp - 0x59c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x59c]
call fcn.0042aaf0
mov ecx, dword [ebp - 0xb8c]
lea eax, [ebp - 0x59c]
push eax
push str.base64url
mov byte [ebp - 4], 0xc
call fcn.00438910
push 0x118
lea eax, [ebp - 0x840]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x840]
call fcn.00403910
push str.___value_:_
lea ecx, [ebp - 0x440]
mov byte [ebp - 4], 0xd
call fcn.0042f610
push eax
push str._alg_:_
lea ecx, [ebp - 0x840]
call fcn.00406d30
mov ecx, eax
call fcn.0042acb0
push 0x61dc3c
lea ecx, [ebp - 0x59c]
call fcn.0042f610
push eax
lea ecx, [ebp - 0x840]
call fcn.00406d30
mov ecx, eax
call fcn.0042abf0
call fcn.0041d260
mov esi, eax
mov dword [ebp - 0xb8c], esi
test esi, esi
jne 0x556402
xor bl, bl
jmp 0x556680
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
lea ecx, [ebp - 0x38]
movq qword [ebp - 0x38], xmm0
call fcn.004085a0
lea eax, [esi + 0x8dc]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x38]
call fcn.0040a2c0
push 0x118
lea eax, [ebp - 0xa70]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xa70]
call fcn.00403910
mov ecx, dword [ebp - 0xb94]
lea eax, [ebp - 0xa70]
push eax
mov byte [ebp - 4], 0xf
call fcn.00481140
lea eax, [ebp - 0xa70]
mov ecx, esi
push eax
call fcn.00415f00
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.00403910
push str.application_json
lea ecx, [ebp - 0x958]
mov byte [ebp - 4], 0x10
call fcn.00404480
mov ecx, dword [ebp - 0xb8c]
lea eax, [ebp - 0x840]
push edi
push esi
push eax
lea eax, [ebp - 0x958]
push eax
lea eax, [ebp - 0xb88]
push eax
call fcn.004201e0
mov esi, eax
test esi, esi
jne 0x5564db
xor bl, bl
jmp 0x556662
xorps xmm0, xmm0
mov dword [ebp - 0x24], 0
lea ecx, [ebp - 0x2c]
movq qword [ebp - 0x2c], xmm0
call fcn.004085a0
push esi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x11
call fcn.0040a2c0
push 0x118
lea eax, [ebp - 0x728]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x728]
call fcn.00403910
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x728]
mov ecx, esi
push eax
call fcn.0040cbb0
mov ecx, esi
call fcn.0040cf00
mov esi, eax
mov ecx, edi
push esi
push str.statusCode
call fcn.00448a10
cmp esi, 0xc8
je 0x556571
lea eax, [ebp - 0x728]
mov ecx, edi
push eax
push str.response
call fcn.00448f80
xor bl, bl
jmp 0x55664f
call fcn.00482a30
mov esi, eax
test esi, esi
jne 0x556583
xor bl, bl
jmp 0x55664f
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x20]
movq qword [ebp - 0x20], xmm0
call fcn.004085a0
push esi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x13
call fcn.0040a2c0
lea eax, [ebp - 0x728]
mov ecx, esi
push eax
call fcn.00481240
push 0x74
lea eax, [ebp - 0x528]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x528]
call fcn.0042aaf0
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.004835c0
test al, al
jne 0x556618
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.00448f80
xor bl, bl
jmp 0x55663c
push str.base64url
lea ecx, [ebp - 0x528]
call fcn.0042f610
push eax
mov ecx, ebx
call fcn.00435a90
mov ecx, ebx
call fcn.00402fb0
test eax, eax
setne bl
lea ecx, [ebp - 0x528]
call fcn.0042ab40
lea ecx, [ebp - 0x20]
call fcn.00408650
lea ecx, [ebp - 0x728]
call fcn.004039a0
lea ecx, [ebp - 0x2c]
call fcn.00408650
lea ecx, [ebp - 0x958]
call fcn.004039a0
lea ecx, [ebp - 0xa70]
call fcn.004039a0
lea ecx, [ebp - 0x38]
call fcn.00408650
lea ecx, [ebp - 0x840]
call fcn.004039a0
lea ecx, [ebp - 0x59c]
call fcn.0042ab40
jmp 0x5566cf
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 0x5566b5
mov ecx, 0x62e5e4
jmp 0x5566c0
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.0042ab40
lea ecx, [ebp - 0xb88]
call fcn.004039a0
lea ecx, [ebp - 0x610]
call fcn.0042ab40
lea ecx, [ebp - 0x44]
call fcn.00408650
lea ecx, [ebp - 0x1fc]
call fcn.0042ab40
lea ecx, [ebp - 0x270]
call fcn.0042ab40
lea ecx, [ebp - 0x2e4]
call fcn.0042ab40
lea ecx, [ebp - 0x358]
call fcn.0042ab40
lea ecx, [ebp - 0x4b4]
call fcn.0042ab40
lea ecx, [ebp - 0x3cc]
call fcn.0042ab40
jmp 0x55674a
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.00449bf0
lea ecx, [ebp - 0x50]
call fcn.004482f0
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.005b34c8
mov esp, ebp
pop ebp
ret