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

Disassembly:
push 0xffffffffffffffff
push 0x1024d262
mov eax, dword fs:[0]
push eax
sub esp, 0x8e0
push ebx
push ebp
push esi
push edi
mov eax, dword [0x102a8930]
xor eax, esp
push eax
lea eax, [esp + 0x8f4]
mov dword fs:[0], eax
mov ebp, dword [esp + 0x904]
lea esi, [esp + 0x1c4]
mov dword [ebp + 0x34], str.decrypt
call fcn.101778f0
lea eax, [esp + 0x208]
mov dword [esp + method.RSubjectPublicKeyInfo.virtual_0], vtable.RSubjectPublicKeyInfo.0
call fcn.10177180
lea eax, [esp + 0x2c8]
call fcn.1017c4f0
mov ebx, 0x1025bd4e
mov dword [esp + method.ASN1BitString.virtual_0], vtable.ASN1BitString.0
mov dword [esp + 0x324], str.ASN1BitString
mov dword [esp + 0x328], ebx
mov byte [esp + 0x2cc], 3
mov dword [esp + 0x200], str.RSubjectPublicKeyInfo
mov dword [esp + 0x204], ebx
mov eax, dword [esp + 0x90c]
xor esi, esi
mov dword [esp + 0x8fc], esi
mov ecx, dword [eax + 4]
cmp dword [eax + 8], esi
jne 0x100de2a2
mov eax, ebx
jmp 0x100de2a5
mov eax, dword [eax + 0xc]
push 1
push ecx
push eax
lea edi, [esp + 0x1d0]
call fcn.10178c00
test eax, eax
jle 0x100de310
mov eax, dword [esp + 0x1f8]
cmp eax, esi
je 0x100de2cd
cmp dword [esp + 0x1f0], esi
jne 0x100de2cf
mov eax, ebx
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 1
push str.pubKeyInfo
push eax
push ecx
push 0x23f
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 1
jmp 0x100df948
mov dword [esp + 0x28], vtable.C3303::ByteString.0
mov dword [esp + 0x38], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x30], esi
lea ebx, [esp + 0x208]
mov byte [esp + 0x8fc], 1
call fcn.101773b0
mov edi, eax
lea esi, [esp + 0x28]
call fcn.101e5f90
xor ebx, ebx
cmp dword [esp + 0x20c], ebx
jle 0x100de3d7
mov eax, dword [esp + 0x1f8]
cmp eax, ebx
je 0x100de36a
cmp dword [esp + 0x1f0], ebx
jne 0x100de36f
mov eax, 0x1025bd4e
mov edx, dword [ebp + 0x34]
push eax
mov eax, dword [ebp + 0x30]
push 2
push str.pubKeyInfo
push edx
push eax
push 0x245
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov byte [esp + 0x8fc], bl
mov esi, dword [esp + 0x34]
cmp esi, ebx
je 0x100de3b6
mov ecx, dword [esp + 0x30]
push ecx
push ebx
push esi
call fcn.10228aa0
add esp, 0xc
push esi
call fcn.1021b8de
add esp, 4
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 2
jmp 0x100df948
mov ecx, str.1_2_840_10045_2_1
lea eax, [esp + 0x28]
call fcn.101e63c0
test al, al
je 0x100de450
mov ecx, str.1_2_840_10046_2_1
lea eax, [esp + 0x28]
call fcn.101e63c0
test al, al
je 0x100de450
mov edx, dword [ebp + 0x34]
mov eax, dword [ebp + 0x30]
push str.Only_support_for_ECDH_and_DH_Algorithm.
push 3
push str.bsPubKeyAlgorithm
push edx
push eax
push 0x248
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 3
jmp 0x100df948
mov esi, vtable.C3303::ByteString.0
mov dword [esp + 0x64], esi
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], ebx
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
mov edx, dword [esp + 0x90c]
lea ecx, [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x90c]
push edx
push ebp
mov byte [esp + 0x908], 2
call fcn.100dd960
test eax, eax
jle 0x100de502
mov eax, dword [ebp + 0x28]
cmp eax, ebx
je 0x100de49b
cmp dword [ebp + 0x20], ebx
jne 0x100de4a0
mov eax, 0x1025bd4e
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 4
push str.this
push eax
push ecx
push 0x24e
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 4
jmp 0x100df948
mov dword [esp + 0x3c], esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov ecx, dword [esp + 0x910]
lea eax, [ecx - 0xbc3]
mov byte [esp + 0x8fc], 3
mov dword [esp + 0x1c], ebx
cmp eax, 0x2b
ja case.0x100de53f.3012
movzx edx, byte [eax + 0x100df97c]
jmp dword [edx*4 + 0x100df964]
lea eax, [esp + 0x3c]
push eax
mov edx, str.1_2_840_113549_1_9_16_3_6
call fcn.101e5eb0
mov dword [esp + 0x20], 0x18
jmp 0x100de5c1
lea ecx, [esp + 0x3c]
push ecx
mov edx, str.1_2_840_113549_1_9_16_3_7
call fcn.101e5eb0
mov dword [esp + 0x20], 5
jmp 0x100de5c1
lea edx, [esp + 0x3c]
push edx
mov edx, str.1_2_840_113549_1_9_16_3_7
call fcn.101e5eb0
mov dword [esp + 0x20], 8
jmp 0x100de5c1
lea eax, [esp + 0x3c]
push eax
mov edx, str.1_2_840_113549_1_9_16_3_7
call fcn.101e5eb0
mov dword [esp + 0x20], 0x10
jmp 0x100de5c1
lea ecx, [esp + 0x3c]
push ecx
mov edx, str.1_2_840_113549_1_9_16_3_7
call fcn.101e5eb0
mov dword [esp + 0x20], 0x20
mov dl, byte [esp + 0x20]
add dl, dl
add dl, dl
lea eax, [esp + 0x1c]
add dl, dl
push eax
mov edi, 4
lea eax, [esp + 0xb8]
mov byte [esp + 0x23], dl
call fcn.101e5aa0
mov dword [esp + 0x78], esi
mov dword [esp + 0x88], ebx
mov dword [esp + 0x84], ebx
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], ebx
mov eax, 0x66666667
imul dword [esp + 0x20]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x24], eax
inc eax
mov dword [esp + 0x18], eax
mov ecx, str.1_2_840_10046_2_1
lea eax, [esp + 0x28]
call fcn.101e62f0
test al, al
je 0x100dee30
lea eax, [esp + 0x6cc]
call fcn.1018ec50
lea eax, [esp + 0x3ec]
call fcn.10185d80
lea eax, [esp + 0x3c]
lea esi, [esp + 0x3ec]
mov byte [esp + 0x8fc], 8
call fcn.10185e80
test eax, eax
jle 0x100de731
lea ecx, [esp + 0x414]
call fcn.101e6430
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x30]
push eax
push 6
push str.keyInfo
push ecx
push edx
push 0x28c
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov ecx, esi
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
lea eax, [edi + 2]
jmp 0x100df948
mov ecx, dword [esp + 0x914]
mov eax, dword [ecx + 4]
cmp eax, ebx
je 0x100de81c
cmp eax, 0x40
je 0x100de810
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x30]
push str.partAInfo_MUST_contain_512_bits.
push 7
push str.bsUKM
push eax
push ecx
push 0x291
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 7
jmp 0x100df948
lea edi, [esp + 0x6cc]
call fcn.1018ee50
lea ecx, [esp + 0xb4]
lea eax, [esp + 0x6cc]
call fcn.1018ee80
cmp dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
jle 0x100dea3f
lea ecx, [ecx]
mov dl, byte [esp + 0x1c]
lea eax, [esp + 0x18]
inc dl
push eax
mov dword [esp + 0x1c], ebx
mov edi, 4
lea eax, [esp + 0x54]
mov byte [esp + 0x1f], dl
call fcn.101e5aa0
mov byte [esp + 0x8fc], 9
mov edx, dword [esp + 0x494]
mov eax, dword [edx + 0x10]
lea ecx, [esp + 0x50]
push ecx
lea ecx, [esp + 0x498]
mov dword [esp + 0x430], 0x10275aa4
call eax
test eax, eax
jle 0x100de8a4
lea eax, [esp + 0x3ec]
call fcn.10185ef0
cmp eax, ebx
jg 0x100dea6c
lea ecx, [esp + 0x6cc]
push ecx
lea eax, [esp + 0x3f0]
call fcn.1018ed80
test eax, eax
jg 0x100deb49
mov dword [esp + 0xa0], vtable.C3303::ByteString.0
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebx
lea edx, [esp + 0x6cc]
push edx
mov byte [esp + 0x900], 0xa
call fcn.1018eeb0
mov edi, eax
lea esi, [esp + 0xa0]
call fcn.101e5f90
cmp dword [esp + 0x6d0], ebx
jg 0x100dec26
mov ebx, esi
lea esi, [esp + 0x64]
call fcn.101e61b0
xor ebx, ebx
mov dword [esp + 0x8c], vtable.C3303::ByteString.0
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
lea eax, [esp + 0xc8]
call fcn.101e16a0
push 1
push 0x3f3
push eax
lea edx, [esp + 0x98]
mov eax, esi
mov byte [esp + 0x908], 0xc
call fcn.101e1750
test eax, eax
jg 0x100ded17
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
inc edi
inc eax
mov dword [esp + 0x18], edi
cmp edi, eax
je 0x100de9a1
lea ebx, [esp + 0x8c]
lea esi, [esp + 0x78]
call fcn.101e61b0
jmp 0x100de9df
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
lea ecx, [eax + eax*4]
add ecx, ecx
add ecx, ecx
sub edi, ecx
mov eax, 0x1025bd4e
cmp dword [esp + 0x94], ebx
je 0x100de9c7
mov eax, dword [esp + 0x98]
lea esi, [ebp + 8]
push eax
call fcn.101e5d60
mov ebx, esi
lea esi, [esp + 0x78]
call fcn.101e61b0
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x8fc], 0xb
call fcn.101e16f0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x8fc], 0xa
call fcn.101e5b00
lea ecx, [esp + 0xa0]
mov byte [esp + 0x8fc], 9
call fcn.101e5b00
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 8
call fcn.101e5b00
mov eax, dword [esp + 0x24]
inc eax
xor ebx, ebx
cmp edi, eax
mov dword [esp + 0x1c], edi
jl 0x100de840
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
jmp 0x100df4c4
lea ecx, [esp + 0x414]
call fcn.101e6430
mov edx, dword [ebp + 0x34]
push eax
mov eax, dword [ebp + 0x30]
push 8
push str.keyInfo
push edx
push eax
push 0x2a1
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 8
call fcn.101e5b00
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 8
jmp 0x100df948
lea ecx, [esp + 0x6f4]
call fcn.101e6430
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x30]
push eax
push 9
push str.otherInfo
push ecx
push edx
push 0x2a4
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 8
call fcn.101e5b00
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 9
jmp 0x100df948
lea ecx, [esp + 0x6f4]
call fcn.101e6430
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 0xa
push str.otherInfo
push eax
push ecx
push 0x2a9
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0xa0]
mov byte [esp + 0x8fc], 9
call fcn.101e5b00
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 8
call fcn.101e5b00
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xa
jmp 0x100df948
lea ecx, [esp + 0xd0]
call fcn.101e6430
mov edx, dword [ebp + 0x34]
push eax
mov eax, dword [ebp + 0x30]
push 0xb
push str.hash
push edx
push eax
push 0x2b0
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0xc8]
mov byte [esp + 0x8fc], 0xb
call fcn.101e16f0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x8fc], 0xa
call fcn.101e5b00
lea ecx, [esp + 0xa0]
mov byte [esp + 0x8fc], 9
call fcn.101e5b00
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 8
call fcn.101e5b00
lea ecx, [esp + 0x3ec]
mov byte [esp + 0x8fc], 7
call fcn.10185e00
lea ecx, [esp + 0x6cc]
mov byte [esp + 0x8fc], 6
call fcn.1018ecf0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xb
jmp 0x100df948
lea eax, [esp + 0x4fc]
call fcn.1018d000
lea eax, [esp + 0x32c]
call fcn.10177180
push ebx
lea eax, [esp + 0x40]
lea esi, [esp + 0x330]
mov byte [esp + 0x900], 0xe
call fcn.101772b0
test eax, eax
jle 0x100def30
lea ecx, [esp + 0x354]
call fcn.101e6430
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x30]
push eax
push 0xc
push str.keyInfo
push ecx
push edx
push 0x2c3
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov ecx, esi
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xc
jmp 0x100df948
lea eax, [esp + 0x10c]
call fcn.10184d50
mov ecx, eax
mov byte [esp + 0x8fc], 0xf
call fcn.1017c650
mov edi, eax
lea esi, [esp + 0x3d8]
call fcn.101e5f90
or byte [esp + 0x370], 1
lea eax, [esp + 0x4fc]
push eax
lea eax, [esp + 0x330]
call fcn.1018d130
test eax, eax
jle 0x100df068
lea ecx, [esp + 0x524]
call fcn.101e6430
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x30]
push eax
push 0xd
push str.sharedInfo
push ecx
push edx
push 0x2c9
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov byte [esp + 0x8fc], 0xe
lea ecx, [esp + 0x10c]
mov dword [esp + method.ASN1Null.virtual_0], vtable.ASN1Null.0
call fcn.1017c580
lea ecx, [esp + 0x32c]
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xd
jmp 0x100df948
mov ecx, dword [esp + 0x914]
mov eax, dword [ecx + 4]
cmp eax, ebx
je 0x100df172
cmp eax, 0x40
je 0x100df166
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x30]
push str.partAInfo_MUST_contain_512_bits.
push 0xe
push str.bsUKM
push eax
push ecx
push 0x2cf
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov byte [esp + 0x8fc], 0xe
lea ecx, [esp + 0x10c]
mov dword [esp + method.ASN1Null.virtual_0], vtable.ASN1Null.0
call fcn.1017c580
lea ecx, [esp + 0x32c]
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xe
jmp 0x100df948
lea edi, [esp + 0x4fc]
call fcn.1018d200
lea ecx, [esp + 0xb4]
lea eax, [esp + 0x4fc]
call fcn.1018d230
mov dword [esp + 0x50], vtable.C3303::ByteString.0
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
lea edx, [esp + 0x4fc]
push edx
mov byte [esp + 0x900], 0x10
call fcn.1018d260
mov edi, eax
lea esi, [esp + 0x50]
call fcn.101e5f90
cmp dword [esp + 0x500], ebx
jle 0x100df2c4
lea ecx, [esp + 0x524]
call fcn.101e6430
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 0xf
push str.sharedInfo
push eax
push ecx
push 0x2da
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
mov ecx, esi
mov byte [esp + 0x8fc], 0xf
call fcn.101e5b00
mov byte [esp + 0x8fc], 0xe
lea ecx, [esp + 0x10c]
mov dword [esp + method.ASN1Null.virtual_0], vtable.ASN1Null.0
call fcn.1017c580
lea ecx, [esp + 0x32c]
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0xf
jmp 0x100df948
cmp dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
jle 0x100df46c
mov dl, byte [esp + 0x1c]
lea eax, [esp + 0x18]
inc dl
push eax
mov dword [esp + 0x1c], ebx
mov edi, 4
lea eax, [esp + 0xfc]
mov byte [esp + 0x1f], dl
call fcn.101e5aa0
mov dword [esp + 0xa0], vtable.C3303::ByteString.0
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa8], ebx
lea edi, [esp + 0x64]
lea esi, [esp + 0xa0]
mov byte [esp + 0x8fc], 0x12
call fcn.101e5f90
lea ebx, [esp + 0xf8]
call fcn.101e61b0
lea ebx, [esp + 0x50]
call fcn.101e61b0
xor ebx, ebx
mov dword [esp + 0x8c], vtable.C3303::ByteString.0
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
lea eax, [esp + 0xc8]
call fcn.101e16a0
push 1
mov ecx, eax
push 0x3f3
push ecx
lea edx, [esp + 0x98]
mov eax, esi
mov byte [esp + 0x908], 0x14
call fcn.101e1750
test eax, eax
jg 0x100df5d5
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
inc edi
inc eax
mov dword [esp + 0x18], edi
cmp edi, eax
je 0x100df3cb
lea ebx, [esp + 0x8c]
lea esi, [esp + 0x78]
call fcn.101e61b0
jmp 0x100df409
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x20]
lea edx, [eax + eax*4]
add edx, edx
add edx, edx
sub edi, edx
mov eax, 0x1025bd4e
cmp dword [esp + 0x94], ebx
je 0x100df3f1
mov eax, dword [esp + 0x98]
lea esi, [ebp + 8]
push eax
call fcn.101e5d60
mov ebx, esi
lea esi, [esp + 0x78]
call fcn.101e61b0
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x8fc], 0x13
call fcn.101e16f0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x8fc], 0x12
call fcn.101e5b00
lea ecx, [esp + 0xa0]
mov byte [esp + 0x8fc], 0x11
call fcn.101e5b00
lea ecx, [esp + 0xf8]
mov byte [esp + 0x8fc], 0x10
call fcn.101e5b00
mov eax, dword [esp + 0x24]
inc eax
xor ebx, ebx
cmp edi, eax
mov dword [esp + 0x1c], edi
jl 0x100df2d2
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 0xf
call fcn.101e5b00
mov byte [esp + 0x8fc], 0xe
lea ecx, [esp + 0x10c]
mov dword [esp + method.ASN1Null.virtual_0], vtable.ASN1Null.0
call fcn.1017c580
lea ecx, [esp + 0x32c]
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea eax, [esp + 0x174]
call fcn.10188250
lea edi, [esp + 0x78]
lea esi, [esp + 0x1ac]
mov byte [esp + 0x8fc], 0x15
call fcn.101e5f90
mov eax, dword [esp + 0x910]
cmp eax, 0xbc3
jne 0x100df721
mov edx, dword [esp + 0x91c]
mov eax, dword [esp + 0x918]
push edx
push eax
lea ecx, [esp + 0x17c]
push ecx
call fcn.10188d70
test eax, eax
jle 0x100df7ff
lea ecx, [esp + 0x190]
call fcn.101e6430
mov edx, dword [ebp + 0x34]
push eax
mov eax, dword [ebp + 0x30]
push 0x11
push str.kekAlgorithm
push edx
push eax
push 0x301
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x174]
mov byte [esp + 0x8fc], 6
call fcn.101882b0
mov ecx, edi
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0x11
jmp 0x100df948
lea ecx, [esp + 0xd0]
call fcn.101e6430
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 0x10
push str.hash
push eax
push ecx
push 0x2ee
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0xc8]
mov byte [esp + 0x8fc], 0x13
call fcn.101e16f0
lea ecx, [esp + 0x8c]
mov byte [esp + 0x8fc], 0x12
call fcn.101e5b00
lea ecx, [esp + 0xa0]
mov byte [esp + 0x8fc], 0x11
call fcn.101e5b00
lea ecx, [esp + 0xf8]
mov byte [esp + 0x8fc], 0x10
call fcn.101e5b00
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 0xf
call fcn.101e5b00
mov byte [esp + 0x8fc], 0xe
lea ecx, [esp + 0x10c]
mov dword [esp + method.ASN1Null.virtual_0], vtable.ASN1Null.0
call fcn.1017c580
lea ecx, [esp + 0x32c]
mov byte [esp + 0x8fc], 0xd
call fcn.10177200
lea ecx, [esp + 0x4fc]
mov byte [esp + 0x8fc], 6
call fcn.1018d0a0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0x10
jmp 0x100df948
mov ecx, dword [esp + 0x91c]
mov edx, dword [esp + 0x918]
push ecx
push eax
push edx
lea eax, [esp + 0x180]
push eax
call fcn.1018aa10
test eax, eax
jle 0x100df7ff
lea ecx, [esp + 0x190]
call fcn.101e6430
mov ecx, dword [ebp + 0x34]
mov edx, dword [ebp + 0x30]
push eax
push 0x12
push str.kekAlgorithm
push ecx
push edx
push 0x306
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x174]
mov byte [esp + 0x8fc], 6
call fcn.101882b0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 0x12
jmp 0x100df948
lea ecx, [esp + 0x174]
mov byte [esp + 0x8fc], 6
call fcn.101882b0
lea ecx, [esp + 0x78]
mov byte [esp + 0x8fc], 5
call fcn.101e5b00
lea ecx, [esp + 0xb4]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
xor eax, eax
jmp 0x100df948
mov dword [esp + 0x50], esi
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
push ecx
push str.nSymmetricAlgorithm__d__is_not_supported.
lea eax, [esp + 0x58]
mov byte [esp + 0x904], 4
call fcn.101e6de0
mov eax, dword [esp + 0x64]
add esp, 8
cmp eax, ebx
je 0x100df8c4
cmp dword [esp + 0x54], ebx
jne 0x100df8c9
mov eax, 0x1025bd4e
mov ecx, dword [ebp + 0x30]
push eax
mov eax, dword [ebp + 0x34]
push 5
push str.nSymmetricAlg
push eax
push ecx
push 0x27d
push ebp
mov ecx, str......._srcDSProcessPPrivateKey.cpp
call fcn.100e2fd0
lea ecx, [esp + 0x50]
mov byte [esp + 0x8fc], 3
call fcn.101e5b00
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8fc], 2
call fcn.101e5b00
lea ecx, [esp + 0x64]
mov byte [esp + 0x8fc], 1
call fcn.101e5b00
lea ecx, [esp + 0x28]
mov byte [esp + 0x8fc], bl
call fcn.101e5b00
lea ecx, [esp + 0x1c4]
mov dword [esp + 0x8fc], 0xffffffff
call fcn.101787d0
mov eax, 5
mov ecx, dword [esp + 0x8f4]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8ec
ret 0x1c