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

Disassembly:
mov eax, 0x70
call fcn.0059eec0
mov eax, dword [0x647f80]
xor eax, esp
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x78]
push ebx
mov ebx, dword [esp + 0x94]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x80]
push esi
mov esi, dword [esp + 0x88]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], 0
push edi
mov edi, dword [esp + 0x80]
mov dword [esp + 0x2c], edi
cmp esi, ebx
je 0x58a6b6
push edi
call fcn.0045ded0
add esp, 4
cmp eax, 0x2c
jne 0x58a6d9
cmp esi, 0x18
jne 0x58a6d9
cmp ebx, 0x15
jne 0x58a6d9
mov dword [esp + 0x30], 1
push ebp
call fcn.0049d8f0
mov ebp, eax
mov dword [esp + 0x38], ebp
test ebp, ebp
jne 0x58a717
pop ebp
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.0059e4d3
add esp, 0x70
ret
call fcn.00499720
push str.KRB5KDF
push 0x167
push str.providersimplementationskdfskrb5kdf.c
call fcn.004997d0
push 0
push 0x8b
push 0x39
call fcn.00499810
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.0059e4d3
add esp, 0x70
ret
push esi
push dword [esp + 0x2c]
push dword [esp + 0x34]
push edi
push ebp
call fcn.0058ab20
mov esi, eax
add esp, 0x14
test esi, esi
je 0x58aae8
push ebp
call fcn.0049bb20
mov ebx, dword [esp + 0x9c]
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
cmp ebx, esi
jbe 0x58a77f
call fcn.00499720
push str.KRB5KDF
push 0x17a
push str.providersimplementationskdfskrb5kdf.c
call fcn.004997d0
push 0
push 0x9d
push 0x39
call fcn.00499810
add esp, 0x18
xor esi, esi
jmp 0x58aae8
jne 0x58a799
mov eax, dword [esp + 0x10]
push ebx
push eax
lea eax, [esp + 0x44]
push eax
call fcn.0059fdf0
add esp, 0xc
jmp 0x58a88f
mov ecx, ebx
test ebx, ebx
je 0x58a7ae
nop
mov eax, esi
xor edx, edx
div ecx
mov esi, ecx
mov ecx, edx
test edx, edx
jne 0x58a7a0
mov edi, dword [esp + 0x18]
lea eax, [esp + 0x3c]
push edi
push 0
push eax
call fcn.005a0390
mov eax, edi
xor edx, edx
imul eax, ebx
xor ecx, ecx
add esp, 0xc
mov dword [esp + 0x1c], ecx
div esi
mov esi, eax
sub esi, 1
mov dword [esp + 0x14], esi
js 0x58a86d
mov ebp, edi
xor edx, edx
lea edi, [esp + 0x3c]
mov eax, esi
div ebp
mov eax, esi
mov ecx, edx
xor edx, edx
div ebx
add edi, ecx
mov ecx, 8
imul edx, eax, 0xd
mov eax, edx
and edx, 7
shr eax, 3
sub esi, eax
mov dword [esp + 0x24], edx
xor edx, edx
sub ecx, dword [esp + 0x24]
lea eax, [esi - 1]
div ebx
mov eax, dword [esp + 0x10]
movzx ebx, byte [edx + eax]
mov eax, esi
xor edx, edx
mov esi, dword [esp + 0x14]
div dword [esp + 0x98]
mov eax, dword [esp + 0x10]
shl ebx, cl
mov cl, byte [esp + 0x24]
movzx eax, byte [edx + eax]
shr eax, cl
movzx ecx, byte [edi]
or ebx, eax
movzx eax, bl
add eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x98]
add ecx, eax
mov byte [edi], cl
shr ecx, 8
sub esi, 1
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], esi
jns 0x58a7e2
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x18]
lea edx, [esi - 1]
test edx, edx
js 0x58a88f
test ecx, ecx
je 0x58a88f
movzx eax, byte [esp + edx + 0x3c]
add ecx, eax
mov byte [esp + edx + 0x3c], cl
shr ecx, 8
sub edx, 1
jns 0x58a878
xor ebx, ebx
lea ecx, [esp + 0x3c]
lea edi, [esp + 0x5c]
mov dword [esp + 0x14], ecx
cmp dword [esp + 0xa0], ebx
jbe 0x58a9fb
nop word [eax + eax]
push esi
push ecx
lea eax, [esp + 0x18]
push eax
push edi
push ebp
call fcn.0049eff0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x58aae8
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x10]
push eax
push edi
push ebp
call fcn.0049ede0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x58aae8
cmp dword [esp + 0x10], 0
jne 0x58a9cd
mov esi, dword [esp + 0xa0]
mov eax, dword [esp + 0x20]
sub esi, ebx
cmp dword [esp + 0x1c], esi
cmovbe esi, dword [esp + 0x1c]
add eax, ebx
push esi
push edi
push eax
call fcn.0059fdf0
mov eax, dword [esp + 0xac]
add ebx, esi
add esp, 0xc
cmp eax, ebx
jbe 0x58a9bc
push ebp
call fcn.0049d960
mov esi, eax
add esp, 4
test esi, esi
je 0x58aae8
push 0
push dword [esp + 0x2c]
push dword [esp + 0x34]
push dword [esp + 0x3c]
push ebp
call fcn.0049efd0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x58aae8
push ebp
call fcn.0049bd00
mov ecx, dword [esp + 0x94]
add esp, 4
cmp ecx, eax
je 0x58a987
push ecx
push ebp
call fcn.0049da50
mov esi, eax
add esp, 8
test esi, esi
je 0x58aae8
push 0
push ebp
call fcn.0049dbc0
add esp, 8
mov esi, eax
test esi, esi
je 0x58aae8
lea eax, [esp + 0x3c]
mov ecx, edi
cmp edi, eax
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0xa0]
jne 0x58a9b6
add edi, 0x20
jmp 0x58a9c0
lea edi, [esp + 0x3c]
jmp 0x58a9c0
mov ecx, dword [esp + 0x14]
cmp ebx, eax
jae 0x58a9fb
mov esi, dword [esp + 0x18]
jmp 0x58a8b0
call fcn.00499720
push str.KRB5KDF
push 0x18f
push str.providersimplementationskdfskrb5kdf.c
call fcn.004997d0
push 0
push 0x6b
push 0x39
call fcn.00499810
add esp, 0x18
xor esi, esi
jmp 0x58aae8
push dword [esp + 0x30]
call fcn.0045ded0
add esp, 4
cmp eax, 0x2c
jne 0x58aae3
cmp dword [esp + 0x34], 0
jne 0x58aae3
lea ebx, [eax - 0x2a]
mov eax, dword [esp + 0x20]
lea ebp, [eax + 0xe]
lea edi, [eax + 0x17]
push 7
lea esi, [edi - 7]
push ebp
push esi
call fcn.0059fdf0
movzx eax, byte [edi - 1]
mov cl, byte [edi - 2]
add al, al
and cl, 1
or cl, al
movzx eax, byte [edi - 3]
add cl, cl
and al, 1
or cl, al
movzx eax, byte [edi - 4]
add cl, cl
and al, 1
or cl, al
movzx eax, byte [edi - 5]
add cl, cl
and al, 1
or cl, al
movzx eax, byte [edi - 6]
add cl, cl
and al, 1
or cl, al
movzx eax, byte [esi]
add cl, cl
and al, 1
or cl, al
add cl, cl
push esi
mov byte [edi], cl
call fcn.004f5b40
add esp, 0x10
lea edi, [edi - 8]
sub ebp, 7
sub ebx, 1
jns 0x58aa28
mov ebx, dword [esp + 0x20]
push 8
lea esi, [ebx + 8]
push esi
push ebx
call fcn.00401390
mov ebp, dword [esp + 0x44]
add esp, 0xc
test eax, eax
je 0x58aab9
push 8
lea eax, [ebx + 0x10]
push eax
push esi
call fcn.00401390
add esp, 0xc
test eax, eax
jne 0x58aae3
xor esi, esi
call fcn.00499720
push str.KRB5KDF
push 0x1b1
push str.providersimplementationskdfskrb5kdf.c
call fcn.004997d0
push esi
push 0x79
push 0x39
call fcn.00499810
add esp, 0x18
jmp 0x58aae8
mov esi, 1
push ebp
call fcn.0049d8a0
lea eax, [esp + 0x40]
push 0x40
push eax
call fcn.00401320
mov ecx, dword [esp + 0x88]
add esp, 0xc
mov eax, esi
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0059e4d3
add esp, 0x70
ret