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

Disassembly:
sub esp, 0x5c
mov ecx, 4
lea edx, [esp + 0x14]
push ebp
push edi
xor edi, edi
cmp dword [0x535dc8], 5
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x54], ecx
lea edx, [esp + 0x20]
lea ecx, [esp + 0xb]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], edi
mov byte [esp + 0xb], 1
mov dword [esp + 0x20], 0x10
mov dword [esp + 0x40], edi
mov dword [esp + 0x4c], 0x100
mov dword [esp + 0x50], edx
mov dword [esp + 0x58], 0x162
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], 1
mov dword [esp + 0x34], 0x11
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0x18], edi
mov dword [esp + 0x14], edi
jb 0x4d8e70
cmp ebx, edi
je 0x4d8e4a
mov edx, dword [esp + 0x74]
mov ecx, dword [edx]
jmp 0x4d8e4c
xor ecx, ecx
mov ebp, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
push ecx
mov ecx, dword [esp + 0x70]
push ebx
push ebp
push ecx
push eax
push edx
push esi
push str.PKCS11:___pkcs11h_certificate_doPrivateOperation_entry_certificate_p__op_d__mech_type_ld__source_p__source_size_x__target_p__p_target_size_x
push 5
call fcn.004d7220
add esp, 0x24
jmp 0x4d8e74
mov ebp, dword [esp + 0x70]
cmp ebx, edi
jne 0x4d8e7e
mov eax, dword [esp + 0x74]
mov dword [eax], edi
lea eax, [esi + 0x18]
push eax
mov dword [esp + 0x28], eax
call fcn.004db240
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d923d
jmp 0x4d8ea0
cmp dword [esi + 0x14], 0
jne 0x4d8fac
push esi
call fcn.004d8d40
mov edi, eax
add esp, 4
test edi, edi
jne 0x4d90df
mov eax, dword [esp + 0x68]
cmp eax, 3
ja case.default.0x4d8eca
jmp dword [eax*4 + 0x4d9270]
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x430]
mov ecx, dword [esi + 0x10]
mov eax, dword [eax + 0x14]
push ecx
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [edx + 0xaa]
push eax
call ecx
add esp, 0xc
mov edi, eax
jmp 0x4d8f8b
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov edx, dword [esi + 0x10]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0xba]
push edx
lea edx, [esp + 0x2c]
push edx
push eax
call ecx
add esp, 0xc
mov edi, eax
jmp 0x4d8f8b
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov edx, dword [esi + 0x10]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0x86]
push edx
lea edx, [esp + 0x2c]
push edx
push eax
call ecx
add esp, 0xc
mov edi, eax
jmp 0x4d8f8b
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0xf6]
lea edx, [esp + 0x10]
push edx
push 3
lea edx, [esp + 0x48]
push edx
mov edx, dword [esp + 0x78]
push ebp
push edx
mov edx, dword [esi + 0x10]
push edx
lea edx, [esp + 0x40]
push edx
push eax
call ecx
add esp, 0x20
mov edi, eax
jmp 0x4d8f8b
mov edi, 7
cmp dword [0x535dc8], 5
jb 0x4d8fa4
push edi
push str.PKCS11:___pkcs11h_certificate_doPrivateOperation_init_rv_ld
push 5
call fcn.004d7220
add esp, 0xc
test edi, edi
jne 0x4d90df
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x68]
cmp ecx, 3
mov dword [esi + 0x14], 0
mov eax, dword [edx]
mov dword [esp + 0xc], eax
ja case.default.0x4d8fca
jmp dword [ecx*4 + 0x4d9280]
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x430]
mov eax, dword [eax + 0x14]
lea ecx, [esp + 0xc]
push ecx
mov ecx, dword [esp + 0x70]
push ebx
push ebp
push ecx
mov ecx, dword [edx + 0xae]
push eax
call ecx
add esp, 0x14
mov edi, eax
jmp 0x4d908e
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0xbe]
lea edx, [esp + 0xc]
push edx
mov edx, dword [esp + 0x70]
push ebx
push ebp
push edx
push eax
call ecx
add esp, 0x14
mov edi, eax
jmp 0x4d908e
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0x8a]
lea edx, [esp + 0xc]
push edx
mov edx, dword [esp + 0x70]
push ebx
push ebp
push edx
push eax
call ecx
add esp, 0x14
mov edi, eax
jmp 0x4d908e
mov dword [esp + 0x3c], eax
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
mov eax, dword [eax + 0x14]
mov ecx, dword [ecx + 0x62]
push 1
lea edx, [esp + 0x38]
push edx
mov edx, dword [esp + 0x18]
push edx
push eax
call ecx
mov edx, dword [esp + 0x4c]
add esp, 0x10
mov edi, eax
mov dword [esp + 0xc], edx
jmp 0x4d908e
mov edi, 7
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x74]
mov dword [ecx], eax
cmp dword [0x535dc8], 5
jb 0x4d90b1
push edi
push str.PKCS11:___pkcs11h_certificate_doPrivateOperation_op_rv_ld
push 5
call fcn.004d7220
add esp, 0xc
test ebx, ebx
je 0x4d90bb
test edi, edi
jne 0x4d90df
jmp 0x4d90d5
test edi, edi
je 0x4d90c7
cmp edi, 0x150
jne 0x4d90df
cmp dword [esp + 0x68], 3
je 0x4d90d5
mov dword [esi + 0x14], 1
mov dword [esp + 0x14], 1
xor edi, edi
cmp dword [esp + 0x10], 0xffffffff
je 0x4d910a
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0xc]
mov ecx, dword [edx + 0x430]
push dword [esp + 0x10]
mov edx, dword [eax + 0x14]
mov eax, dword [ecx + 0x5a]
push edx
call eax
add esp, 8
mov dword [esp + 0x10], 0xffffffff
cmp dword [esp + 0x14], 0
jne 0x4d9230
cmp dword [esp + 0x18], 0
je 0x4d9131
cmp edi, 0x32
jne 0x4d9228
mov ecx, dword [esi + 0xc]
push ecx
call fcn.004dbec0
add esp, 4
cmp dword [0x535dc8], 4
jb 0x4d9151
push edi
call fcn.004d6c30
push eax
push edi
push str.PKCS11:_Private_key_operation_failed_rv_lu__s
push 4
call fcn.004d7220
add esp, 0x14
cmp dword [0x535dc8], 5
mov dword [esp + 0x18], 1
jb 0x4d9176
push 1
push 0
push esi
push str.PKCS11:__pkcs11h_certificate_resetSession_entry_certificate_p__public_only_d__session_mutex_locked_d
push 5
call fcn.004d7220
add esp, 0x14
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0x14], 0xffffffff
je 0x4d91af
cmp dword [esi + 0x10], 0xffffffff
lea ebp, [esi + 0x10]
jne 0x4d91af
mov eax, dword [esi]
mov edx, dword [eax + 0x408]
mov eax, dword [eax + 0x404]
push ebp
push edx
push eax
push 3
push ecx
call fcn.004dc2d0
add esp, 0x14
test eax, eax
je 0x4d91d7
mov dword [ebp], 0xffffffff
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
mov eax, dword [esi + 0xc]
push ecx
push edx
push 1
push 0
lea ebp, [esi + 0x10]
push eax
mov dword [ebp], 0xffffffff
call fcn.004dc010
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x4d9204
cmp dword [ebp], 0xffffffff
jne 0x4d9202
mov eax, dword [esi]
mov ecx, dword [eax + 0x408]
mov edx, dword [eax + 0x404]
mov eax, dword [esi + 0xc]
push ebp
push ecx
push edx
push 3
push eax
call fcn.004dc2d0
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x4d9204
xor edi, edi
cmp dword [0x535dc8], 5
jb 0x4d9224
push edi
call fcn.004d6c30
push eax
push edi
push str.PKCS11:__pkcs11h_certificate_resetSession_return_rv_lu__s
push 5
call fcn.004d7220
add esp, 0x14
mov ebp, dword [esp + 0x70]
test edi, edi
je 0x4d8ea0
mov ecx, dword [esp + 0x24]
push ecx
call fcn.004db260
add esp, 4
cmp dword [0x535dc8], 5
jb 0x4d9267
mov edx, dword [esp + 0x74]
mov eax, dword [edx]
push eax
push edi
call fcn.004d6c30
add esp, 4
push eax
push edi
push str.PKCS11:___pkcs11h_certificate_doPrivateOperation_return_rv_lu__s__p_target_size_x
push 5
call fcn.004d7220
add esp, 0x14
mov eax, edi
pop edi
pop ebp
add esp, 0x5c
ret