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

Disassembly:
sub esp, 0x114
push ebx
push ebp
mov ebp, dword [esp + 0x120]
xor ebx, ebx
push edi
mov edi, dword [esp + 0x128]
mov dword [esp + 0x10], ebx
cmp byte [ebp + 0x444], bl
jne 0x46af65
test edi, edi
je 0x46af65
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0x114
ret
push dword [esp + 0x130]
lea eax, [esp + 0x24]
push dword [esp + 0x130]
push eax
call fcn.0046c7e0
add esp, 0xc
test eax, eax
je 0x46af93
pop edi
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.0046caf0
mov esi, eax
add esp, 4
test esi, esi
je case.0x46c007.7
cmp byte [ebp + 0x444], bl
je 0x46afd4
push esi
push str.Subject
push edi
push ebp
call fcn.00431c10
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x46c4b6
test edi, edi
jne 0x46afe8
push esi
push edi
push str._2d_Subject:__s
push ebp
call fcn.00437b20
add esp, 0x10
push esi
call dword [0x4c101c]
lea eax, [esp + 0x78]
push eax
call fcn.0046caf0
mov esi, eax
add esp, 8
test esi, esi
je case.0x46c007.7
cmp byte [ebp + 0x444], 0
je 0x46b025
push esi
push str.Issuer
push edi
push ebp
call fcn.00431c10
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test edi, edi
jne 0x46b038
push esi
push str.___Issuer:__s
push ebp
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebx, ebx
jne 0x46b0aa
mov ecx, dword [esp + 0x38]
xor esi, esi
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x46b061
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x46b054
cmp byte [ebp + 0x444], 0
je 0x46b0be
push esi
push 0x4b0adc
call fcn.00449710
mov edi, eax
add esp, 8
test edi, edi
je case.0x46c007.7
mov ebx, dword [esp + 0x12c]
push edi
push str.Version
push ebx
push ebp
call fcn.00431c10
mov ebx, eax
push edi
mov dword [esp + 0x28], ebx
call dword [0x4c101c]
add esp, 0x14
test ebx, ebx
je 0x46b0b7
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x114
ret
mov edi, dword [esp + 0x12c]
test edi, edi
jne 0x46b0d5
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx_
push ebp
call fcn.00437b20
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x46c007.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46c007.7
movzx eax, byte [eax + 0x46c650]
mov ebp, 0x4a25c0
mov edx, str.FALSE
jmp dword [eax*4 + 0x46c628]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x46b11f
xor esi, esi
jmp 0x46b4f5
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46b4f5
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x46b150
xor esi, esi
jmp 0x46b4f5
cmp eax, 4
jbe 0x46b166
push esi
push edx
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46b4f5
movsx ecx, byte [edx]
sar ecx, 0x1f
nop dword [eax]
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46b170
cmp ecx, 0xa
mov eax, 0x4b2500
push ecx
cmovb eax, ebp
push eax
push str._s_lx
call fcn.00449710
add esp, 0xc
mov esi, eax
jmp 0x46b4f5
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x46b1b2
xor esi, esi
jmp 0x46b4f5
push ecx
push eax
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46b4f5
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46b4f5
push 0x4a25c0
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46b4f5
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.0046cb50
add esp, 0xc
mov esi, eax
jmp 0x46b4f5
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x46b223
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b223
inc ecx
cmp ecx, edx
jb 0x46b216
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46b23b
sub eax, 2
je 0x46b240
xor esi, esi
jmp 0x46b4f5
mov edi, 0x4b2540
cmp ecx, edx
jb 0x46b24b
xor esi, esi
jmp 0x46b4f5
cmp byte [ecx], 0x5a
jne 0x46b25c
mov ecx, 0x4b2544
mov edx, 0x4b2547
jmp 0x46b25d
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.00449710
add esp, 0x28
mov esi, eax
jmp 0x46b4f5
mov ebp, dword [esp + 0x48]
mov esi, 0x4a25c0
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x46b2b3
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b2b3
inc ecx
cmp ecx, edi
jb 0x46b2a6
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46b2e1
sub eax, 1
je 0x46b2dc
sub eax, 1
je 0x46b2d5
xor esi, esi
jmp 0x46b4f5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46b2e3
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46b342
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46b2f7
cmp bl, 0x2c
jne 0x46b327
inc ecx
inc eax
cmp eax, edi
jae 0x46b309
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46b309
cmp dl, 0x39
jle 0x46b2f8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46b327
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46b322
dec esi
sub edx, 1
jne 0x46b317
mov esi, 0x4a25c0
cmp eax, edi
jae 0x46b342
cmp byte [eax], 0x5a
jne 0x46b33c
mov eax, str._GMT
mov edi, 0x4b2510
jmp 0x46b342
mov esi, 0x4a8b40
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4a25c0
mov eax, 0x4a8414
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.00449710
add esp, 0x38
mov esi, eax
jmp 0x46b4f5
mov edi, dword [esp + 0x4c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x48]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x46b3ae.13
movzx eax, byte [eax + 0x46c680]
jmp dword [eax*4 + 0x46c670]
mov ecx, 2
jmp 0x46b3c1
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46b3ae.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46b3ae.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4c1018]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46b3ae.13
cmp ebx, 0xc
jne 0x46b41a
test edi, edi
je 0x46b411
push edi
push esi
push ebp
call fcn.00476dc0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46b4ee
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x46b411
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x46b441
sub eax, 2
jne 0x46b44a
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 0x46b4c8
cmp ecx, 0x800
jb 0x46b4b0
cmp ecx, 0x10000
jb 0x46b494
cmp ecx, 0x200000
jae 0x46b4df
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 0x46b49c
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 0x46b4b3
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 0x46b4cb
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x4c]
jb 0x46b422
mov byte [edi + ebp], 0
jmp 0x46b4ee
push ebp
call dword [0x4c101c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
test esi, esi
je case.0x46c007.7
mov edi, dword [esp + 0x128]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x444], 0
je 0x46b52c
push esi
push str.Serial_Number
push ebx
push edi
call fcn.00431c10
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
jmp 0x46b530
mov ebp, dword [esp + 0x14]
test ebx, ebx
jne 0x46b543
push esi
push str.___Serial_Number:__s
push edi
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
push dword [esp + 0x5c]
lea eax, [esp + 0x118]
push dword [esp + 0x5c]
push eax
call fcn.0046d540
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x46c007.7
cmp byte [edi + 0x444], 0
je 0x46b596
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.00431c10
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x46b5a9
push esi
push str.___Signature_Algorithm:__s
push edi
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
cmp byte [esp + 0x92], 0
jne case.0x46c007.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46c007.7
movzx eax, byte [eax + 0x46c6bc]
jmp dword [eax*4 + 0x46c694]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x46b607
xor esi, esi
jmp 0x46ba26
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46ba26
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x46b643
xor esi, esi
jmp 0x46ba26
cmp eax, 4
jbe 0x46b659
push esi
push edx
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46ba26
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46b660
push ecx
cmp ecx, 0xa
mov eax, 0x4b2500
mov ecx, 0x4a25c0
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00449710
add esp, 0xc
mov esi, eax
jmp 0x46ba26
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x46b6ad
xor esi, esi
jmp 0x46ba26
push ecx
push eax
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46ba26
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46ba26
push 0x4a25c0
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46ba26
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.0046cb50
add esp, 0xc
mov esi, eax
jmp 0x46ba26
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x46b730
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b730
inc ecx
cmp ecx, edx
jb 0x46b723
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46b748
sub eax, 2
je 0x46b74d
xor esi, esi
jmp 0x46ba1f
mov edi, 0x4b2540
cmp ecx, edx
jb 0x46b758
xor esi, esi
jmp 0x46ba1f
cmp byte [ecx], 0x5a
jne 0x46b769
mov ecx, 0x4b2544
mov edx, 0x4b2547
jmp 0x46b76a
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.00449710
add esp, 0x28
mov esi, eax
jmp 0x46ba1f
mov ebp, dword [esp + 0x88]
mov esi, 0x4a25c0
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x46b7cd
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46b7cd
inc ecx
cmp ecx, edi
jb 0x46b7c0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46b7fb
sub eax, 1
je 0x46b7f6
sub eax, 1
je 0x46b7ef
xor esi, esi
jmp 0x46ba1b
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46b7fd
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46b85c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46b811
cmp bl, 0x2c
jne 0x46b841
inc ecx
inc eax
cmp eax, edi
jae 0x46b823
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46b823
cmp dl, 0x39
jle 0x46b812
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46b841
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46b83c
dec esi
sub edx, 1
jne 0x46b831
mov esi, 0x4a25c0
cmp eax, edi
jae 0x46b85c
cmp byte [eax], 0x5a
jne 0x46b856
mov eax, str._GMT
mov edi, 0x4b2510
jmp 0x46b85c
mov esi, 0x4a8b40
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4a25c0
mov eax, 0x4a8414
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.00449710
add esp, 0x38
mov esi, eax
jmp 0x46ba1b
mov edi, dword [esp + 0x8c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x46b8ce.13
movzx eax, byte [eax + 0x46c6ec]
jmp dword [eax*4 + 0x46c6dc]
mov ecx, 2
jmp 0x46b8e1
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46b8ce.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46b8ce.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4c1018]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46b8ce.13
cmp ebx, 0xc
jne 0x46b93a
test edi, edi
je 0x46b931
push edi
push esi
push ebp
call fcn.00476dc0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46ba14
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x46b931
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x46b964
sub eax, 2
jne 0x46b96d
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 0x46b9eb
cmp ecx, 0x800
jb 0x46b9d3
cmp ecx, 0x10000
jb 0x46b9b7
cmp ecx, 0x200000
jae 0x46ba05
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 0x46b9bf
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 0x46b9d6
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 0x46b9ee
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x46b945
mov byte [edi + ebp], 0
jmp 0x46ba14
push ebp
call dword [0x4c101c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x46c007.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x46ba54
push esi
push str.Start_Date
push ebx
push edi
call fcn.00431c10
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x46ba67
push esi
push str.___Start_Date:__s
push edi
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
cmp byte [esp + 0xa2], 0
jne case.0x46c007.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46c007.7
movzx eax, byte [eax + 0x46c728]
jmp dword [eax*4 + 0x46c700]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x46bac5
xor esi, esi
jmp 0x46bee6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46bee6
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x46bb01
xor esi, esi
jmp 0x46bee6
cmp eax, 4
jbe 0x46bb17
push esi
push edx
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46bee6
movsx ecx, byte [edx]
sar ecx, 0x1f
nop dword [eax]
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46bb20
push ecx
cmp ecx, 0xa
mov eax, 0x4b2500
mov ecx, 0x4a25c0
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00449710
add esp, 0xc
mov esi, eax
jmp 0x46bee6
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x46bb6d
xor esi, esi
jmp 0x46bee6
push ecx
push eax
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46bee6
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46bee6
push 0x4a25c0
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46bee6
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.0046cb50
add esp, 0xc
mov esi, eax
jmp 0x46bee6
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x46bbf0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46bbf0
inc ecx
cmp ecx, edx
jb 0x46bbe3
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46bc08
sub eax, 2
je 0x46bc0d
xor esi, esi
jmp 0x46bedf
mov edi, 0x4b2540
cmp ecx, edx
jb 0x46bc18
xor esi, esi
jmp 0x46bedf
cmp byte [ecx], 0x5a
jne 0x46bc29
mov ecx, 0x4b2544
mov edx, 0x4b2547
jmp 0x46bc2a
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.00449710
add esp, 0x28
mov esi, eax
jmp 0x46bedf
mov ebp, dword [esp + 0x98]
mov esi, 0x4a25c0
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x46bc8d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46bc8d
inc ecx
cmp ecx, edi
jb 0x46bc80
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46bcbb
sub eax, 1
je 0x46bcb6
sub eax, 1
je 0x46bcaf
xor esi, esi
jmp 0x46bedb
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46bcbd
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46bd1c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46bcd1
cmp bl, 0x2c
jne 0x46bd01
inc ecx
inc eax
cmp eax, edi
jae 0x46bce3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46bce3
cmp dl, 0x39
jle 0x46bcd2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46bd01
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46bcfc
dec esi
sub edx, 1
jne 0x46bcf1
mov esi, 0x4a25c0
cmp eax, edi
jae 0x46bd1c
cmp byte [eax], 0x5a
jne 0x46bd16
mov eax, str._GMT
mov edi, 0x4b2510
jmp 0x46bd1c
mov esi, 0x4a8b40
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4a25c0
mov eax, 0x4a8414
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.00449710
add esp, 0x38
mov esi, eax
jmp 0x46bedb
mov edi, dword [esp + 0x9c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x98]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x46bd8e.13
movzx eax, byte [eax + 0x46c758]
jmp dword [eax*4 + 0x46c748]
mov ecx, 2
jmp 0x46bda1
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46bd8e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46bd8e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4c1018]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46bd8e.13
cmp ebx, 0xc
jne 0x46bdfa
test edi, edi
je 0x46bdf1
push edi
push esi
push ebp
call fcn.00476dc0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46bed4
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x46bdf1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x46be24
sub eax, 2
jne 0x46be2d
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 0x46beab
cmp ecx, 0x800
jb 0x46be93
cmp ecx, 0x10000
jb 0x46be77
cmp ecx, 0x200000
jae 0x46bec5
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 0x46be7f
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 0x46be96
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 0x46beae
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x9c]
jb 0x46be05
mov byte [edi + ebp], 0
jmp 0x46bed4
push ebp
call dword [0x4c101c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x46c007.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x46bf14
push esi
push str.Expire_Date
push ebx
push edi
call fcn.00431c10
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x46bf27
push esi
push str.___Expire_Date:__s
push edi
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
push dword [esp + 0xcc]
lea eax, [esp + 0x118]
push dword [esp + 0xcc]
push eax
call fcn.0046d540
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x46c007.7
cmp byte [edi + 0x444], 0
je 0x46bf84
push esi
push str.Public_Key_Algorithm
push ebx
push edi
call fcn.00431c10
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x46bfd2
test ebx, ebx
jne 0x46bf97
push esi
push str.___Public_Key_Algorithm:__s
push edi
call fcn.00437b20
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push edi
call fcn.0046ccc0
add esp, 0x14
test eax, eax
je 0x46bfd2
push esi
mov ebp, 0x1b
call dword [0x4c101c]
add esp, 4
mov eax, ebp
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
cmp byte [esp + 0x72], 0
jne case.0x46c007.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x46c007.7
movzx eax, byte [eax + 0x46c794]
jmp dword [eax*4 + 0x46c76c]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x46c024
xor esi, esi
jmp 0x46c40e
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46c40e
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x46c05a
xor esi, esi
jmp 0x46c40e
cmp eax, 4
jbe 0x46c070
push esi
push edx
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46c40e
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x46c076
push ecx
cmp ecx, 0xa
mov eax, 0x4b2500
mov ecx, 0x4a25c0
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00449710
add esp, 0xc
mov esi, eax
jmp 0x46c40e
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x46c0bd
xor esi, esi
jmp 0x46c40e
push ecx
push eax
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46c40e
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0046e450
add esp, 8
mov esi, eax
jmp 0x46c40e
push 0x4a25c0
call dword [0x4c1024]
add esp, 4
mov esi, eax
jmp 0x46c40e
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.0046cb50
add esp, 0xc
mov esi, eax
jmp 0x46c40e
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x46c12e
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46c12e
inc ecx
cmp ecx, edx
jb 0x46c121
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46c146
sub eax, 2
je 0x46c14b
xor esi, esi
jmp 0x46c407
mov edi, 0x4b2540
cmp ecx, edx
jb 0x46c156
xor esi, esi
jmp 0x46c407
cmp byte [ecx], 0x5a
jne 0x46c167
mov ecx, 0x4b2544
mov edx, 0x4b2547
jmp 0x46c168
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.00449710
add esp, 0x28
mov esi, eax
jmp 0x46c407
mov ebp, dword [esp + 0x68]
mov esi, 0x4a25c0
mov edi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, edi
jae 0x46c1be
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46c1be
inc ecx
cmp ecx, edi
jb 0x46c1b1
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46c1ec
sub eax, 1
je 0x46c1e7
sub eax, 1
je 0x46c1e0
xor esi, esi
jmp 0x46c403
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46c1ee
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46c24d
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x46c202
cmp bl, 0x2c
jne 0x46c232
inc ecx
inc eax
cmp eax, edi
jae 0x46c214
mov dl, byte [eax]
cmp dl, 0x30
jl 0x46c214
cmp dl, 0x39
jle 0x46c203
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x46c232
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x46c22d
dec esi
sub edx, 1
jne 0x46c222
mov esi, 0x4a25c0
cmp eax, edi
jae 0x46c24d
cmp byte [eax], 0x5a
jne 0x46c247
mov eax, str._GMT
mov edi, 0x4b2510
jmp 0x46c24d
mov esi, 0x4a8b40
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x4a25c0
mov eax, 0x4a8414
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.00449710
add esp, 0x38
mov esi, eax
jmp 0x46c403
mov edi, dword [esp + 0x6c]
lea eax, [ebx - 0xc]
mov esi, dword [esp + 0x68]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x46c2b9.13
movzx eax, byte [eax + 0x46c7c4]
jmp dword [eax*4 + 0x46c7b4]
mov ecx, 2
jmp 0x46c2cc
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46c2b9.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46c2b9.13
lea eax, [eax*4 + 1]
push eax
call dword [0x4c1018]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x46c2b9.13
cmp ebx, 0xc
jne 0x46c325
test edi, edi
je 0x46c31c
push edi
push esi
push ebp
call fcn.00476dc0
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x46c3fc
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x46c31c
nop dword [eax]
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x46c34f
sub eax, 2
jne 0x46c358
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 0x46c3d6
cmp ecx, 0x800
jb 0x46c3be
cmp ecx, 0x10000
jb 0x46c3a2
cmp ecx, 0x200000
jae 0x46c3ed
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 0x46c3aa
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 0x46c3c1
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 0x46c3d9
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x46c330
mov byte [edi + ebp], 0
jmp 0x46c3fc
push ebp
call dword [0x4c101c]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x128]
test esi, esi
je case.0x46c007.7
cmp byte [edi + 0x444], 0
mov ebx, dword [esp + 0x12c]
je 0x46c438
push esi
push str.Signature
push ebx
push edi
call fcn.00431c10
add esp, 0x10
mov ebp, eax
test ebx, ebx
jne 0x46c44b
push esi
push str.___Signature:__s
push edi
call fcn.00437b20
add esp, 0xc
push esi
call dword [0x4c101c]
add esp, 4
test ebp, ebp
jne 0x46c61b
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x24]
push eax
mov eax, dword [esp + 0x34]
sub eax, ecx
push eax
push ecx
call fcn.004501e0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x46c61b
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x4c1018]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x46c4c1
push dword [esp + 0x20]
call dword [0x4c101c]
add esp, 4
mov eax, 0x1b
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
mov ecx, str._____BEGIN_CERTIFICATE_____
lea edx, [ebx + 2]
xor esi, esi
nop dword [eax + eax]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x46c524
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x46c523
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x46c51e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x46c519
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x46c4d0
jmp 0x46c524
add esi, 3
jmp 0x46c524
add esi, 2
jmp 0x46c524
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x46c551
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.0046cc30
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x46c533
lea edx, [ebx + 2]
xor esi, esi
mov ecx, str._____END_CERTIFICATE_____
add edx, edi
nop dword [eax]
movzx eax, byte [ecx]
mov byte [edx - 2], al
movzx eax, byte [ecx]
test al, al
je 0x46c5b4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x46c5b3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x46c5ae
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x46c5a9
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x46c560
jmp 0x46c5b4
add esi, 3
jmp 0x46c5b4
add esi, 2
jmp 0x46c5b4
inc esi
lea eax, [ebx + edi]
mov byte [esi + eax], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x4c101c]
mov esi, dword [esp + 0x12c]
add esp, 4
cmp byte [esi + 0x444], 0
je 0x46c5f8
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.00431c10
add esp, 0x10
mov ebp, eax
cmp dword [esp + 0x12c], 0
jne 0x46c611
push ebx
push 0x4a64d8
push esi
call fcn.00437b20
add esp, 0xc
push ebx
call dword [0x4c101c]
add esp, 4
pop esi
pop edi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x114
ret