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

Disassembly:
mov eax, 0x48
call fcn.101ebae0
mov eax, dword [0x102ab2c0]
xor eax, esp
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 4], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
push ebx
push ebp
push esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x34], esi
push edi
test ecx, ecx
jne 0x100cb3c3
call fcn.1003e8b0
mov ebp, eax
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x100cb3c9
call fcn.10027460
push str.PEM_X509_INFO_read_bio_ex
push 0x46
push str.cryptopempem_info.c
call fcn.10027560
push ebp
push 0x8000f
push 9
call fcn.10027670
add esp, 0x18
mov edi, ebp
xor ebx, ebx
jmp 0x100cb859
mov ebp, ecx
mov dword [esp + 0x10], ecx
call fcn.100cb300
mov ebx, eax
test ebx, ebx
je 0x100cb855
call fcn.1002c060
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x20]
push eax
push esi
call fcn.100e2b90
add esp, 0x14
test eax, eax
je 0x100cb7e9
call fcn.1002bea0
nop word [eax + eax]
mov esi, dword [esp + 0x14]
mov ecx, str.CERTIFICATE
mov eax, esi
nop dword [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100cb440
test dl, dl
je 0x100cb43c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100cb440
add eax, 2
add ecx, 2
test dl, dl
jne 0x100cb420
xor eax, eax
jmp 0x100cb445
sbb eax, eax
or eax, 1
test eax, eax
je 0x100cb570
mov ecx, str.X509_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100cb474
test dl, dl
je 0x100cb470
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100cb474
add eax, 2
add ecx, 2
test dl, dl
jne 0x100cb454
xor eax, eax
jmp 0x100cb479
sbb eax, eax
or eax, 1
test eax, eax
je 0x100cb570
mov ecx, str.TRUSTED_CERTIFICATE
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100cb4a8
test dl, dl
je 0x100cb4a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100cb4a8
add eax, 2
add ecx, 2
test dl, dl
jne 0x100cb488
xor eax, eax
jmp 0x100cb4ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x100cb570
mov eax, str.X509_CRL
mov ecx, esi
nop dword [eax]
mov dl, byte [ecx]
cmp dl, byte [eax]
jne 0x100cb4e0
test dl, dl
je 0x100cb4dc
mov dl, byte [ecx + 1]
cmp dl, byte [eax + 1]
jne 0x100cb4e0
add ecx, 2
add eax, 2
test dl, dl
jne 0x100cb4c0
xor eax, eax
jmp 0x100cb4e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x100cb523
lea edi, [ebx + 4]
mov ebp, fcn.100842f0
cmp dword [edi], eax
je 0x100cb672
mov ebp, dword [esp + 0x10]
push ebx
push ebp
call fcn.1003e9e0
add esp, 8
test eax, eax
je 0x100cb855
call fcn.100cb300
mov ebx, eax
test ebx, ebx
jne 0x100cb410
jmp 0x100cb855
push str.PRIVATE_KEY
push esi
call fcn.101ef350
mov esi, eax
add esp, 8
test esi, esi
je 0x100cb765
cmp dword [ebx + 8], 0
jne 0x100cb4fd
mov eax, dword [esp + 0x14]
cmp esi, eax
je 0x100cb5c8
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100cb5ab
test dl, dl
je 0x100cb56c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100cb5ab
add eax, 2
add ecx, 2
test dl, dl
jne 0x100cb550
xor eax, eax
jmp 0x100cb5b0
cmp dword [ebx], 0
jne 0x100cb4fd
mov eax, str.TRUSTED_CERTIFICATE
nop word [eax + eax]
mov cl, byte [esi]
cmp cl, byte [eax]
jne 0x100cb642
test cl, cl
je 0x100cb5a4
mov cl, byte [esi + 1]
cmp cl, byte [eax + 1]
jne 0x100cb642
add esi, 2
add eax, 2
test cl, cl
jne 0x100cb580
xor esi, esi
jmp 0x100cb647
sbb eax, eax
or eax, 1
test eax, eax
je 0x100cb5c8
mov byte [esi - 1], 0
push dword [esp + 0x14]
call fcn.1001c680
add esp, 4
mov esi, eax
jmp 0x100cb5ca
xor esi, esi
mov dword [ebx + 0x24], 0
mov ebp, 0x10120410
mov dword [ebx + 0x20], 0
call fcn.101217d0
mov dword [ebx + 8], eax
test eax, eax
je 0x100cb855
mov ecx, dword [esp + 0x1c]
lea edi, [eax + 0xc]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100cb5f7
sub ecx, edx
cmp ecx, 0xa
jg 0x100cb63b
mov eax, dword [esp + 0x14]
mov ecx, str.ENCRYPTED_PRIVATE_KEY
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100cb630
test dl, dl
je 0x100cb62c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100cb630
add eax, 2
add ecx, 2
test dl, dl
jne 0x100cb610
xor eax, eax
jmp 0x100cb635
sbb eax, eax
or eax, 1
xor ecx, ecx
test eax, eax
jne 0x100cb676
mov ecx, 1
jmp 0x100cb676
sbb esi, esi
or esi, 1
push dword [esp + 0x24]
push dword [esp + 0x2c]
call fcn.1005f130
add esp, 8
mov dword [ebx], eax
test eax, eax
je 0x100cb855
test esi, esi
mov ebp, fcn.1005f1e0
mov eax, fcn.1005f1c0
mov edi, ebx
cmovne ebp, eax
xor ecx, ecx
xor esi, esi
test ecx, ecx
jne 0x100cb737
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x20]
call fcn.100e2850
add esp, 8
test eax, eax
je 0x100cb855
push dword [esp + 0x30]
lea eax, [esp + 0x24]
push dword [esp + 0x38]
push eax
push dword [esp + 0x24]
lea eax, [esp + 0x50]
push eax
call fcn.100e25d0
add esp, 0x14
test eax, eax
je 0x100cb855
mov eax, dword [esp + 0x18]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2c]
test esi, esi
je 0x100cb717
push dword [esp + 0x24]
push dword [esp + 0x2c]
push dword [esp + 0x28]
push eax
push edi
push esi
call fcn.10120870
add esp, 0x18
test eax, eax
jne 0x100cb765
call fcn.10027460
push str.PEM_X509_INFO_read_bio_ex
push 0xa5
push str.cryptopempem_info.c
call fcn.10027560
push 0
push 0x8000d
push 9
call fcn.10027670
add esp, 0x18
jmp 0x100cb855
push dword [esp + 0x20]
push eax
push edi
call ebp
add esp, 0xc
test eax, eax
jne 0x100cb765
call fcn.10027460
push str.PEM_X509_INFO_read_bio_ex
push 0xa9
jmp 0x100cb6f7
lea eax, [ebx + 0xc]
push eax
push dword [esp + 0x20]
call fcn.100e2850
add esp, 8
test eax, eax
je 0x100cb855
mov eax, dword [esp + 0x18]
mov dword [ebx + 0x24], eax
mov eax, dword [esp + 0x20]
mov dword [ebx + 0x20], eax
mov dword [esp + 0x18], 0
push 0xb4
push str.cryptopempem_info.c
push dword [esp + 0x1c]
call fcn.1002a880
push 0xb6
push str.cryptopempem_info.c
push dword [esp + 0x30]
mov dword [esp + 0x2c], 0
call fcn.1002a880
push 0xb8
push str.cryptopempem_info.c
push dword [esp + 0x38]
mov dword [esp + 0x40], 0
call fcn.1002a880
mov dword [esp + 0x3c], 0
call fcn.1002c060
mov esi, dword [esp + 0x5c]
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x44]
push eax
push esi
call fcn.100e2b90
add esp, 0x38
test eax, eax
je 0x100cb7e9
mov ebp, dword [esp + 0x10]
jmp 0x100cb402
call fcn.1002b2c0
mov ecx, eax
sar ecx, 0x1f
and ecx, 0x7f800000
add ecx, 0x7fffff
and ecx, eax
cmp ecx, 0x6c
jne 0x100cb850
call fcn.1002bf30
cmp dword [ebx], 0
jne 0x100cb822
cmp dword [ebx + 4], 0
jne 0x100cb822
cmp dword [ebx + 8], 0
jne 0x100cb822
cmp dword [ebx + 0x24], 0
je 0x100cb841
mov edi, dword [esp + 0x10]
push ebx
push edi
call fcn.1003e9e0
add esp, 8
test eax, eax
je 0x100cb859
xor ebx, ebx
push ebx
call fcn.100cb2b0
add esp, 4
jmp 0x100cb89c
mov edi, dword [esp + 0x10]
push ebx
call fcn.100cb2b0
add esp, 4
jmp 0x100cb89c
call fcn.1002bea0
mov edi, dword [esp + 0x10]
push ebx
call fcn.100cb2b0
push edi
xor esi, esi
call fcn.1003e950
add esp, 8
test eax, eax
jle 0x100cb88b
nop
push esi
push edi
call fcn.1003eba0
push eax
call fcn.100cb2b0
push edi
inc esi
call fcn.1003e950
add esp, 0x10
cmp esi, eax
jl 0x100cb870
cmp edi, dword [esp + 0x3c]
je 0x100cb89a
push edi
call fcn.1003e750
add esp, 4
xor edi, edi
push 0xd3
push str.cryptopempem_info.c
push dword [esp + 0x1c]
call fcn.1002a880
push 0xd4
push str.cryptopempem_info.c
push dword [esp + 0x30]
call fcn.1002a880
push 0xd5
push str.cryptopempem_info.c
push dword [esp + 0x38]
call fcn.1002a880
mov ecx, dword [esp + 0x78]
add esp, 0x24
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.101ebfaa
add esp, 0x48
ret