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

Disassembly:
sub esp, 0x114
mov eax, dword [esp + 0x118]
push ebx
mov ebx, dword [esp + 0x120]
push ebp
mov ebp, dword [eax]
mov dword [esp + 0x10], ebp
cmp byte [ebp + 0x88c], 0
jne 0x46a8a4
test ebx, ebx
je 0x46a8a4
pop ebp
xor eax, eax
pop ebx
add esp, 0x114
ret
push dword [esp + 0x12c]
lea eax, [esp + 0x20]
push dword [esp + 0x12c]
push eax
call fcn.0046c030
add esp, 0xc
test eax, eax
je 0x46a8d1
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
push esi
lea eax, [esp + 0xa0]
push edi
push eax
call fcn.0046c340
mov esi, eax
add esp, 4
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
je 0x46a906
push esi
push str.Subject
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46a91a
push esi
push ebx
push str._2d_Subject:__s_n
push ebp
call fcn.00447cb0
add esp, 0x10
push esi
call dword [0x4b52e0]
lea eax, [esp + 0x78]
push eax
call fcn.0046c340
mov esi, eax
add esp, 8
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
je 0x46a951
push esi
push str.Issuer
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46a964
push esi
push str.___Issuer:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push esi
call dword [0x4b52e0]
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, dword [esp + 0x3c]
xor esi, esi
cmp ecx, edx
jae 0x46a98d
nop dword [eax]
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x46a980
cmp byte [ebp + 0x88c], 0
je 0x46a9c5
push esi
push 0x49f36c
call fcn.00455d70
mov edi, eax
add esp, 8
test edi, edi
je case.0x46b885.7
push edi
push str.Version
push ebx
push ebp
call fcn.004424f0
push edi
call dword [0x4b52e0]
add esp, 0x14
test ebx, ebx
jne 0x46a9dc
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx__n
push ebp
call fcn.00447cb0
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x46b885.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46b885.7
movzx eax, byte [eax + 0x46bea8]
mov edi, 0x490500
mov edx, str.FALSE
jmp dword [eax*4 + 0x46be80]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x46aa26
xor edi, edi
jmp 0x46ae07
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x4b52e8]
add esp, 4
mov edi, eax
jmp 0x46ae07
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x46aa57
xor edi, edi
jmp 0x46ae07
cmp eax, 4
jbe 0x46aa6d
push esi
push edx
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46ae07
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46aa73
cmp ecx, 0xa
mov eax, 0x4a0f44
push ecx
cmovb eax, edi
push eax
push str._s_lx
call fcn.00455d70
add esp, 0xc
mov edi, eax
jmp 0x46ae07
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x46aab5
xor edi, edi
jmp 0x46ae07
push ecx
push eax
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46ae07
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46ae07
push 0x490500
call dword [0x4b52e8]
add esp, 4
mov edi, eax
jmp 0x46ae07
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.0046c390
add esp, 0xc
mov edi, eax
jmp 0x46ae07
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x46ab2d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46ab2d
inc ecx
cmp ecx, edx
jb 0x46ab20
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46ab45
sub eax, 2
je 0x46ab4a
xor edi, edi
jmp 0x46ae07
mov edi, 0x4a0f84
cmp ecx, edx
jb 0x46ab55
xor edi, edi
jmp 0x46ae07
cmp byte [ecx], 0x5a
jne 0x46ab66
mov ecx, 0x4a0f88
mov edx, 0x4a0f8b
jmp 0x46ab67
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.00455d70
add esp, 0x28
mov edi, eax
jmp 0x46ae07
mov ebp, dword [esp + 0x48]
mov esi, 0x490500
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x46abbd
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46abbd
inc ecx
cmp ecx, edi
jb 0x46abb0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46abeb
sub eax, 1
je 0x46abe6
sub eax, 1
je 0x46abdf
xor edi, edi
jmp 0x46ae03
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46abed
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46ac4c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46ac01
cmp bl, 0x2c
jne 0x46ac31
inc ecx
inc eax
cmp eax, edi
jae 0x46ac13
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46ac13
cmp dl, 0x39
jle 0x46ac02
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46ac31
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46ac2c
dec esi
sub edx, 1
jne 0x46ac21
mov esi, 0x490500
cmp eax, edi
jae 0x46ac4c
cmp byte [eax], 0x5a
jne 0x46ac46
mov eax, str._GMT
mov edi, 0x4a0f54
jmp 0x46ac4c
mov esi, 0x49cdf8
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x490500
mov eax, 0x4983fc
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.00455d70
add esp, 0x38
mov edi, eax
jmp 0x46ae03
mov esi, dword [esp + 0x4c]
lea eax, [ebx - 0xc]
mov edi, dword [esp + 0x48]
mov ecx, 1
sub esi, edi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x46acb8.13
movzx eax, byte [eax + 0x46bed8]
jmp dword [eax*4 + 0x46bec8]
mov ecx, 2
jmp 0x46accb
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, esi
div ecx
test edx, edx
jne case.0x46acb8.13
mov eax, esi
div ecx
cmp eax, 0x3fffffff
ja case.0x46acb8.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4b52dc]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46acb8.13
cmp ebx, 0xc
jne 0x46ad24
test esi, esi
je 0x46ad1b
push esi
push edi
push ebp
call fcn.00414790
add esp, 0xc
mov byte [esi + ebp], 0
jmp 0x46adfc
xor esi, esi
cmp edi, dword [esp + 0x4c]
jae 0x46ad1b
nop dword [eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x46ad4f
sub eax, 2
jne 0x46ad58
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add edi, 2
movzx eax, byte [edi]
shl ecx, 8
or ecx, eax
inc edi
movzx eax, byte [edi]
mov ebx, 1
shl ecx, 8
inc edi
or ecx, eax
cmp ecx, 0x80
jb 0x46add6
cmp ecx, 0x800
jb 0x46adbe
cmp ecx, 0x10000
jb 0x46ada2
cmp ecx, 0x200000
jae 0x46aded
mov al, cl
lea edx, [esi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x46adaa
lea edx, [esi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x46adc1
lea edx, [esi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x46add9
lea edx, [esi + ebp]
add esi, ebx
mov byte [edx], cl
cmp edi, dword [esp + 0x4c]
jb 0x46ad30
mov byte [esi + ebp], 0
jmp 0x46adfc
push ebp
call dword [0x4b52e0]
add esp, 4
or esi, 0xffffffff
xor ebp, ebp
xor edi, edi
test esi, esi
cmovns edi, ebp
mov ebp, dword [esp + 0x18]
test edi, edi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
mov ebx, dword [esp + 0x12c]
je 0x46ae2f
push edi
push str.Serial_Number
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46ae42
push edi
push str.___Serial_Number:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push edi
call dword [0x4b52e0]
push dword [esp + 0x60]
lea eax, [esp + 0x11c]
push dword [esp + 0x60]
push eax
call fcn.0046cc80
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
je 0x46ae84
push esi
push str.Signature_Algorithm
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46ae97
push esi
push str.___Signature_Algorithm:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push esi
call dword [0x4b52e0]
add esp, 4
cmp byte [esp + 0x92], 0
jne case.0x46b885.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46b885.7
movzx eax, byte [eax + 0x46bf14]
jmp dword [eax*4 + 0x46beec]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x46aeed
xor esi, esi
jmp 0x46b2ff
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4b52e8]
add esp, 4
mov esi, eax
jmp 0x46b2ff
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x46af29
xor esi, esi
jmp 0x46b2ff
cmp eax, 4
jbe 0x46af3f
push esi
push edx
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46b2ff
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46af45
push ecx
cmp ecx, 0xa
mov eax, 0x4a0f44
mov ecx, 0x490500
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00455d70
add esp, 0xc
mov esi, eax
jmp 0x46b2ff
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x46af92
xor esi, esi
jmp 0x46b2ff
push ecx
push eax
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46b2ff
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46b2ff
push 0x490500
call dword [0x4b52e8]
add esp, 4
mov esi, eax
jmp 0x46b2ff
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.0046c390
add esp, 0xc
mov esi, eax
jmp 0x46b2ff
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x46b015
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b015
inc ecx
cmp ecx, edx
jb 0x46b008
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46b02d
sub eax, 2
je 0x46b032
xor esi, esi
jmp 0x46b2ff
mov edi, 0x4a0f84
cmp ecx, edx
jb 0x46b03d
xor esi, esi
jmp 0x46b2ff
cmp byte [ecx], 0x5a
jne 0x46b04e
mov ecx, 0x4a0f88
mov edx, 0x4a0f8b
jmp 0x46b04f
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.00455d70
add esp, 0x28
mov esi, eax
jmp 0x46b2ff
mov ebp, dword [esp + 0x88]
mov esi, 0x490500
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x46b0ad
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b0ad
inc ecx
cmp ecx, edi
jb 0x46b0a0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46b0db
sub eax, 1
je 0x46b0d6
sub eax, 1
je 0x46b0cf
xor esi, esi
jmp 0x46b2fb
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46b0dd
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46b13c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46b0f1
cmp bl, 0x2c
jne 0x46b121
inc ecx
inc eax
cmp eax, edi
jae 0x46b103
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46b103
cmp dl, 0x39
jle 0x46b0f2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46b121
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46b11c
dec esi
sub edx, 1
jne 0x46b111
mov esi, 0x490500
cmp eax, edi
jae 0x46b13c
cmp byte [eax], 0x5a
jne 0x46b136
mov eax, str._GMT
mov edi, 0x4a0f54
jmp 0x46b13c
mov esi, 0x49cdf8
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x490500
mov eax, 0x4983fc
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.00455d70
add esp, 0x38
mov esi, eax
jmp 0x46b2fb
mov edi, dword [esp + 0x8c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x46b1ae.13
movzx eax, byte [eax + 0x46bf44]
jmp dword [eax*4 + 0x46bf34]
mov ecx, 2
jmp 0x46b1c1
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46b1ae.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46b1ae.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4b52dc]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46b1ae.13
cmp ebx, 0xc
jne 0x46b21a
test edi, edi
je 0x46b211
push edi
push esi
push ebp
call fcn.00414790
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46b2f4
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x46b211
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x46b244
sub eax, 2
jne 0x46b24d
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x46b2cb
cmp ecx, 0x800
jb 0x46b2b3
cmp ecx, 0x10000
jb 0x46b297
cmp ecx, 0x200000
jae 0x46b2e5
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x46b29f
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x46b2b6
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x46b2ce
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x46b225
mov byte [edi + ebp], 0
jmp 0x46b2f4
push ebp
call dword [0x4b52e0]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x18]
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
mov edi, dword [esp + 0x12c]
je 0x46b327
push esi
push str.Start_Date
push edi
push ebp
call fcn.004424f0
add esp, 0x10
test edi, edi
jne 0x46b33a
push esi
push str.___Start_Date:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push esi
call dword [0x4b52e0]
add esp, 4
cmp byte [esp + 0xa2], 0
jne case.0x46b885.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46b885.7
movzx eax, byte [eax + 0x46bf80]
jmp dword [eax*4 + 0x46bf58]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x46b390
xor edi, edi
jmp 0x46b7aa
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4b52e8]
add esp, 4
mov edi, eax
jmp 0x46b7aa
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x46b3cc
xor edi, edi
jmp 0x46b7aa
cmp eax, 4
jbe 0x46b3e2
push esi
push edx
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46b7aa
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46b3e8
push ecx
cmp ecx, 0xa
mov eax, 0x4a0f44
mov ecx, 0x490500
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00455d70
add esp, 0xc
mov edi, eax
jmp 0x46b7aa
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x46b435
xor edi, edi
jmp 0x46b7aa
push ecx
push eax
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46b7aa
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0046db90
add esp, 8
mov edi, eax
jmp 0x46b7aa
push 0x490500
call dword [0x4b52e8]
add esp, 4
mov edi, eax
jmp 0x46b7aa
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.0046c390
add esp, 0xc
mov edi, eax
jmp 0x46b7aa
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x46b4bd
nop dword [eax + eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b4bd
inc ecx
cmp ecx, edx
jb 0x46b4b0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46b4d5
sub eax, 2
je 0x46b4da
xor edi, edi
jmp 0x46b7aa
mov edi, 0x4a0f84
cmp ecx, edx
jb 0x46b4e5
xor edi, edi
jmp 0x46b7aa
cmp byte [ecx], 0x5a
jne 0x46b4f6
mov ecx, 0x4a0f88
mov edx, 0x4a0f8b
jmp 0x46b4f7
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.00455d70
add esp, 0x28
mov edi, eax
jmp 0x46b7aa
mov ebp, dword [esp + 0x98]
mov esi, 0x490500
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x46b553
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b553
inc ecx
cmp ecx, edi
jb 0x46b546
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46b581
sub eax, 1
je 0x46b57c
sub eax, 1
je 0x46b575
xor edi, edi
jmp 0x46b7a6
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46b583
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46b5e2
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46b597
cmp bl, 0x2c
jne 0x46b5c7
inc ecx
inc eax
cmp eax, edi
jae 0x46b5a9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46b5a9
cmp dl, 0x39
jle 0x46b598
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46b5c7
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46b5c2
dec esi
sub edx, 1
jne 0x46b5b7
mov esi, 0x490500
cmp eax, edi
jae 0x46b5e2
cmp byte [eax], 0x5a
jne 0x46b5dc
mov eax, str._GMT
mov edi, 0x4a0f54
jmp 0x46b5e2
mov esi, 0x49cdf8
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x490500
mov eax, 0x4983fc
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.00455d70
add esp, 0x38
mov edi, eax
jmp 0x46b7a6
mov esi, dword [esp + 0x9c]
lea eax, [ebx - 0xc]
mov edi, dword [esp + 0x98]
mov ecx, 1
sub esi, edi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x46b654.13
movzx eax, byte [eax + 0x46bfb0]
jmp dword [eax*4 + 0x46bfa0]
mov ecx, 2
jmp 0x46b667
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, esi
div ecx
test edx, edx
jne case.0x46b654.13
mov eax, esi
div ecx
cmp eax, 0x3fffffff
ja case.0x46b654.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4b52dc]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46b654.13
cmp ebx, 0xc
jne 0x46b6c0
test esi, esi
je 0x46b6b7
push esi
push edi
push ebp
call fcn.00414790
add esp, 0xc
mov byte [esi + ebp], 0
jmp 0x46b79f
xor esi, esi
cmp edi, dword [esp + 0x9c]
jae 0x46b6b7
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x46b6ef
sub eax, 2
jne 0x46b6f8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add edi, 2
movzx eax, byte [edi]
shl ecx, 8
or ecx, eax
inc edi
movzx eax, byte [edi]
mov ebx, 1
shl ecx, 8
inc edi
or ecx, eax
cmp ecx, 0x80
jb 0x46b776
cmp ecx, 0x800
jb 0x46b75e
cmp ecx, 0x10000
jb 0x46b742
cmp ecx, 0x200000
jae 0x46b790
mov al, cl
lea edx, [esi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x46b74a
lea edx, [esi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x46b761
lea edx, [esi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x46b779
lea edx, [esi + ebp]
add esi, ebx
mov byte [edx], cl
cmp edi, dword [esp + 0x9c]
jb 0x46b6d0
mov byte [esi + ebp], 0
jmp 0x46b79f
push ebp
call dword [0x4b52e0]
add esp, 4
or esi, 0xffffffff
xor ebp, ebp
xor edi, edi
test esi, esi
cmovns edi, ebp
mov ebp, dword [esp + 0x18]
test edi, edi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
mov ebx, dword [esp + 0x12c]
je 0x46b7d2
push edi
push str.Expire_Date
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46b7e5
push edi
push str.___Expire_Date:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push edi
call dword [0x4b52e0]
push dword [esp + 0xd0]
lea eax, [esp + 0x11c]
push dword [esp + 0xd0]
push eax
call fcn.0046cc80
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
je 0x46b82d
push esi
push str.Public_Key_Algorithm
push ebx
push ebp
call fcn.004424f0
add esp, 0x10
test ebx, ebx
jne 0x46b840
push esi
push str.___Public_Key_Algorithm:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push ebp
call fcn.0046c500
push esi
call dword [0x4b52e0]
add esp, 0x18
cmp byte [esp + 0x72], 0
jne case.0x46b885.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46b885.7
movzx eax, byte [eax + 0x46bfec]
jmp dword [eax*4 + 0x46bfc4]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x46b8a2
xor esi, esi
jmp 0x46bc87
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4b52e8]
add esp, 4
mov esi, eax
jmp 0x46bc87
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x46b8d8
xor esi, esi
jmp 0x46bc87
cmp eax, 4
jbe 0x46b8ee
push esi
push edx
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46bc87
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46b8f4
push ecx
cmp ecx, 0xa
mov eax, 0x4a0f44
mov ecx, 0x490500
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00455d70
add esp, 0xc
mov esi, eax
jmp 0x46bc87
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x46b93b
xor esi, esi
jmp 0x46bc87
push ecx
push eax
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46bc87
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0046db90
add esp, 8
mov esi, eax
jmp 0x46bc87
push 0x490500
call dword [0x4b52e8]
add esp, 4
mov esi, eax
jmp 0x46bc87
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.0046c390
add esp, 0xc
mov esi, eax
jmp 0x46bc87
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x46b9ad
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b9ad
inc ecx
cmp ecx, edx
jb 0x46b9a0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46b9c5
sub eax, 2
je 0x46b9ca
xor esi, esi
jmp 0x46bc87
mov edi, 0x4a0f84
cmp ecx, edx
jb 0x46b9d5
xor esi, esi
jmp 0x46bc87
cmp byte [ecx], 0x5a
jne 0x46b9e6
mov ecx, 0x4a0f88
mov edx, 0x4a0f8b
jmp 0x46b9e7
inc ecx
push ecx
sub edx, ecx
lea eax, [esi + 8]
push edx
push edi
push eax
lea eax, [esi + 6]
push eax
lea eax, [esi + 4]
push eax
lea eax, [esi + 2]
push eax
xor eax, eax
cmp byte [esi], 0x35
push esi
setl al
add eax, 0x13
push eax
push str._u_.2s__.2s__.2s__.2s:_.2s:_.2s__.s
call fcn.00455d70
add esp, 0x28
mov esi, eax
jmp 0x46bc87
mov ebp, dword [esp + 0x68]
mov edi, 0x490500
mov esi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, esi
jae 0x46ba3d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46ba3d
inc ecx
cmp ecx, esi
jb 0x46ba30
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46ba6b
sub eax, 1
je 0x46ba66
sub eax, 1
je 0x46ba5f
xor esi, esi
jmp 0x46bc83
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46ba6d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, esi
jae 0x46bacc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46ba81
cmp bl, 0x2c
jne 0x46bab1
inc ecx
inc eax
cmp eax, esi
jae 0x46ba93
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46ba93
cmp dl, 0x39
jle 0x46ba82
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46bab1
lea edi, [ecx - 1]
add edi, edx
cmp byte [edi], 0x30
jne 0x46baac
dec edi
sub edx, 1
jne 0x46baa1
mov edi, 0x490500
cmp eax, esi
jae 0x46bacc
cmp byte [eax], 0x5a
jne 0x46bac6
mov eax, str._GMT
mov esi, 0x4a0f54
jmp 0x46bacc
mov edi, 0x49cdf8
inc eax
push eax
sub esi, eax
test edx, edx
push esi
push edi
push ecx
push edx
mov ecx, 0x490500
mov eax, 0x4983fc
cmove eax, ecx
push eax
movsx eax, bh
push eax
movsx eax, byte [esp + 0x2f]
push eax
lea eax, [ebp + 0xa]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp + 6]
push eax
lea eax, [ebp + 4]
push eax
push ebp
push str._.4s__.2s__.2s__.2s:_.2s:_c_c_s_.s_s_.s
call fcn.00455d70
add esp, 0x38
mov esi, eax
jmp 0x46bc83
mov edi, dword [esp + 0x6c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x68]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x46bb38.13
movzx eax, byte [eax + 0x46c01c]
jmp dword [eax*4 + 0x46c00c]
mov ecx, 2
jmp 0x46bb4b
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46bb38.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46bb38.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4b52dc]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46bb38.13
cmp ebx, 0xc
jne 0x46bba4
test edi, edi
je 0x46bb9b
push edi
push esi
push ebp
call fcn.00414790
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46bc7c
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x46bb9b
nop dword [eax]
mov eax, dword [esp + 0x14]
xor ecx, ecx
sub eax, 2
je 0x46bbcf
sub eax, 2
jne 0x46bbd8
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
shl ecx, 8
or ecx, eax
add esi, 2
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
inc esi
movzx eax, byte [esi]
mov ebx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x46bc56
cmp ecx, 0x800
jb 0x46bc3e
cmp ecx, 0x10000
jb 0x46bc22
cmp ecx, 0x200000
jae 0x46bc6d
mov al, cl
lea edx, [edi + ebp]
and al, 0x3f
or ecx, 0x400000
or al, 0x80
mov ebx, 3
mov byte [edx + 3], al
shr ecx, 6
jmp 0x46bc2a
lea edx, [edi + ebp]
mov ebx, 2
mov al, cl
or ecx, 0x20000
and al, 0x3f
or al, 0x80
shr ecx, 6
mov byte [edx + 2], al
jmp 0x46bc41
lea edx, [edi + ebp]
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc ebx
mov byte [edx + 1], al
jmp 0x46bc59
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x46bbb0
mov byte [edi + ebp], 0
jmp 0x46bc7c
push ebp
call dword [0x4b52e0]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x18]
test esi, esi
je case.0x46b885.7
cmp byte [ebp + 0x88c], 0
mov edi, dword [esp + 0x12c]
je 0x46bcaf
push esi
push str.Signature
push edi
push ebp
call fcn.004424f0
add esp, 0x10
test edi, edi
jne 0x46bcc2
push esi
push str.___Signature:__s_n
push ebp
call fcn.00447cb0
add esp, 0xc
push esi
call dword [0x4b52e0]
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
mov eax, dword [esp + 0x38]
sub eax, ecx
push eax
push ecx
push ebp
call fcn.0045bd50
add esp, 0x18
test eax, eax
jne 0x46bd1d
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x4b52dc]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x46bd28
push dword [esp + 0x20]
call dword [0x4b52e0]
add esp, 4
mov eax, 0x1b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret
mov ecx, str._____BEGIN_CERTIFICATE_____
lea edx, [ebx + 2]
xor esi, esi
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x46bd86
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x46bd85
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x46bd80
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x46bd7b
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x46bd32
jmp 0x46bd86
add esi, 3
jmp 0x46bd86
add esi, 2
jmp 0x46bd86
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x46bdb3
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.0046c470
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x46bd95
lea ebp, [ebx + edi]
mov ecx, str._____END_CERTIFICATE_____
xor esi, esi
lea edx, [ebp + 2]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x46be14
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x46be13
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x46be0e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x46be09
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x46bdc0
jmp 0x46be14
add esi, 3
jmp 0x46be14
add esi, 2
jmp 0x46be14
inc esi
mov byte [esi + ebp], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x4b52e0]
mov esi, dword [esp + 0x1c]
add esp, 4
cmp byte [esi + 0x88c], 0
je 0x46be50
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.004424f0
add esp, 0x10
cmp dword [esp + 0x12c], 0
jne 0x46be69
push ebx
push 0x4980a0
push esi
call fcn.00447cb0
add esp, 0xc
push ebx
call dword [0x4b52e0]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret