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

Disassembly:
mov ecx, dword [0x8e25d4]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x571986
sub esp, 0x60
mov edx, dword [esp + 0x68]
test edx, edx
jbe 0x57197c
mov ebx, dword [esp + 0x64]
mov ebp, dword [ebx]
lea ebp, [ebp + ebp*4]
cmp edx, 1
jbe 0x571970
shl ebp, 3
add ebp, dword [ebx + 4]
mov dword [esp + 0x50], ebp
mov eax, ebp
sar ebp, 0x1f
test ebp, ebp
xchg esi, ebx
sete bl
xchg esi, ebx
test eax, eax
xchg edi, ebx
sete bl
xchg edi, ebx
and edi, esi
xchg edi, eax
test al, al
xchg edi, eax
je 0x571686
mov edi, 1
jmp 0x5716cf
mov ecx, ebp
mov esi, eax
xor edi, edi
jmp 0x5716a8
shr eax, 7
mov edx, ebp
shl edx, 0x19
or eax, edx
sar ebp, 7
inc edi
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
mov esi, dword [esp + 0x50]
test ebp, ebp
setg bl
sete dl
test eax, eax
xchg esi, ebx
seta bl
xchg esi, ebx
and esi, edx
or ebx, esi
test bl, bl
jne 0x57168e
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
mov ebp, ecx
mov dword [esp + 0x30], ebp
lea esi, [edi - 1]
mov edi, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x54], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x54]
jmp 0x57170d
mov byte [eax + edi - 1], dl
dec esi
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x68]
mov ebx, dword [esp + 0x64]
mov ecx, ebp
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x50]
mov ebp, dword [esp + 0x30]
test esi, esi
jl 0x5717d4
mov dword [esp + 0x48], ecx
lea ebx, [esi + esi*2]
lea edx, [esi + ebx*2 - 0x20]
mov dword [esp + 0x4c], edx
neg edx
mov ecx, edx
shl ebp, cl
lea ebx, [esi + ebx*2]
mov ecx, ebx
shr eax, cl
shr ecx, 5
cmp ecx, 1
sbb ecx, ecx
xor ecx, 0xffffffff
cmp ebx, 0x20
sbb ebx, ebx
and eax, ebx
cmp edx, 0x20
sbb edx, edx
and edx, ebp
or eax, edx
mov edx, dword [esp + 0x4c]
cmp edx, 0x20
sbb ebx, ebx
not ebx
or ebx, edx
mov edx, ecx
mov ecx, ebx
mov ebp, dword [esp + 0x30]
mov ebx, ebp
sar ebp, cl
and ebp, edx
or eax, ebp
mov edx, eax
and eax, 0x7f
test esi, esi
je 0x571777
or edx, 0xffffff80
jmp 0x571779
mov edx, eax
mov eax, dword [esp + 0x44]
inc eax
mov ebp, dword [esp + 0x48]
cmp ebp, eax
jae 0x5716ee
mov dword [esp + 0x38], esi
mov byte [esp + 0x23], dl
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x686a60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
movzx edx, byte [esp + 0x23]
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x38]
mov ebp, ecx
jmp 0x5716ee
mov eax, dword [esp + 0x44]
mov ebp, 2
jmp 0x5717ee
mov esi, dword [esp + 0x3c]
lea ebp, [esi + 1]
mov ebx, dword [esp + 0x64]
mov edx, dword [esp + 0x68]
cmp edx, ebp
jle 0x571848
mov dword [esp + 0x3c], ebp
mov esi, dword [ebx + ebp*4]
mov dword [esp + 0x50], esi
sar esi, 0x1f
mov dword [esp + 0x2c], esi
mov ebx, dword [esp + 0x50]
test ebx, ebx
sete dl
test esi, esi
xchg ebp, ebx
sete bl
xchg ebp, ebx
and edx, ebp
test dl, dl
je 0x571823
mov edx, 1
jmp 0x571845
mov dword [esp + 0x40], eax
mov edx, esi
mov ebp, ebx
xor edx, edx
mov dword [esp + 0x28], edx
mov edx, esi
jmp 0x57186a
mov eax, dword [esp + 0x40]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
dec edx
jmp 0x571896
add esp, 0x60
ret
shr ebx, 7
mov eax, esi
shl eax, 0x19
or ebx, eax
sar esi, 7
mov eax, dword [esp + 0x28]
inc eax
mov edx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x28], eax
test esi, esi
xchg ebp, ebx
sete bl
xchg ebp, ebx
setg dl
test ebx, ebx
seta al
and eax, ebp
or edx, eax
test dl, dl
jne 0x57184c
jmp 0x571835
xchg ebp, ebx
mov byte [eax + edi - 1], bl
xchg ebp, ebx
dec edx
mov ebp, dword [esp + 0x50]
mov ecx, ebx
mov ebx, ebp
test edx, edx
jl 0x5717df
mov dword [esp + 0x24], ecx
mov dword [esp + 0x5c], edi
lea ebp, [edx + edx*2]
lea edi, [edx + ebp*2 - 0x20]
mov dword [esp + 0x4c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
mov ecx, edi
shl esi, cl
lea ebp, [edx + ebp*2]
mov ecx, ebp
shr ebx, cl
shr ecx, 5
cmp ecx, 1
sbb ecx, ecx
xor ecx, 0xffffffff
cmp edi, 0x20
sbb edi, edi
and esi, edi
cmp ebp, 0x20
sbb ebp, ebp
and ebx, ebp
or ebx, esi
mov ebp, dword [esp + 0x4c]
cmp ebp, 0x20
sbb esi, esi
xchg esi, ebx
not ebx
xchg esi, ebx
or esi, ebp
mov ebp, ecx
mov ecx, esi
mov edi, dword [esp + 0x2c]
mov esi, edi
sar edi, cl
and edi, ebp
or ebx, edi
mov ebp, ebx
and ebx, 0x7f
test edx, edx
je 0x57190c
or ebp, 0xffffff80
jmp 0x57190e
mov ebp, ebx
inc eax
mov ebx, dword [esp + 0x24]
cmp ebx, eax
jb 0x571920
mov edi, dword [esp + 0x5c]
jmp 0x571885
mov dword [esp + 0x34], edx
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x686a60]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
movzx ebp, byte [esp + 0x22]
mov esi, dword [esp + 0x2c]
mov ebx, ecx
jmp 0x571885
mov eax, 1
mov ecx, eax
call sym.runtime.panicIndex
xor eax, eax
mov ecx, eax
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.encoding_asn1.oidEncoder.Encode