Function at 0x453f30
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 + 0x89c], 0
jne 0x453f64
test ebx, ebx
je 0x453f64
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.004556c0
add esp, 0xc
test eax, eax
je 0x453f91
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
push esi
lea eax, [esp + 0xa0]
push edi
push eax
call fcn.004559c0
mov esi, eax
add esp, 4
test esi, esi
je case.0x454f25.7
cmp byte [ebp + 0x89c], 0
je 0x453fc6
push esi
push str.Subject
push ebx
push ebp
call fcn.0041fc30
add esp, 0x10
test ebx, ebx
jne 0x453fda
push esi
push ebx
push str._2d_Subject:__s_n
push ebp
call fcn.00424f80
add esp, 0x10
push esi
call dword [0x475098]
lea eax, [esp + 0x78]
push eax
call fcn.004559c0
mov esi, eax
add esp, 8
test esi, esi
je case.0x454f25.7
cmp byte [ebp + 0x89c], 0
je 0x454011
push esi
push str.Issuer
push ebx
push ebp
call fcn.0041fc30
add esp, 0x10
test ebx, ebx
jne 0x454024
push esi
push str.___Issuer:__s_n
push ebp
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, dword [esp + 0x3c]
xor esi, esi
cmp ecx, edx
jae 0x45404d
nop dword [eax]
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x454040
cmp byte [ebp + 0x89c], 0
je 0x454085
push esi
push 0x46cd48
call fcn.00434ad0
mov edi, eax
add esp, 8
test edi, edi
je case.0x454f25.7
push edi
push str.Version
push ebx
push ebp
call fcn.0041fc30
push edi
call dword [0x475098]
add esp, 0x14
test ebx, ebx
jne 0x45409c
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx__n
push ebp
call fcn.00424f80
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x454f25.7
movzx ebp, byte [esp + 0x51]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x454f25.7
movzx eax, byte [eax + 0x45552c]
mov ebx, 0x45fc37
mov edx, str.FALSE
jmp dword [eax*4 + 0x455504]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x4540e6
xor esi, esi
jmp 0x4544af
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x4544af
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x454117
xor esi, esi
jmp 0x4544af
cmp eax, 4
jbe 0x45412d
push esi
push edx
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4544af
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x454133
cmp ecx, 0xa
mov eax, 0x46e4d8
push ecx
cmovb eax, ebx
push eax
push str._s_lx
call fcn.00434ad0
add esp, 0xc
mov esi, eax
jmp 0x4544af
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x454175
xor esi, esi
jmp 0x4544af
push ecx
push eax
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4544af
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4544af
push 0x45fc37
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x4544af
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.00455a10
add esp, 0xc
mov esi, eax
jmp 0x4544af
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x4541ed
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4541ed
inc ecx
cmp ecx, edx
jb 0x4541e0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x454205
sub eax, 2
je 0x45420a
xor esi, esi
jmp 0x4544af
mov edi, 0x46e518
cmp ecx, edx
jb 0x454215
xor esi, esi
jmp 0x4544af
cmp byte [ecx], 0x5a
jne 0x454226
mov ecx, 0x46e51c
mov edx, 0x46e51f
jmp 0x454227
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.00434ad0
add esp, 0x28
mov esi, eax
jmp 0x4544af
mov ebp, dword [esp + 0x48]
mov esi, 0x45fc37
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x45427d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45427d
inc ecx
cmp ecx, edi
jb 0x454270
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4542ab
sub eax, 1
je 0x4542a6
sub eax, 1
je 0x45429f
xor esi, esi
jmp 0x4544af
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4542ad
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x45430c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4542c1
cmp bl, 0x2c
jne 0x4542f1
inc ecx
inc eax
cmp eax, edi
jae 0x4542d3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4542d3
cmp dl, 0x39
jle 0x4542c2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4542f1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4542ec
dec esi
sub edx, 1
jne 0x4542e1
mov esi, 0x45fc37
cmp eax, edi
jae 0x45430c
cmp byte [eax], 0x5a
jne 0x454306
mov eax, str._GMT
mov edi, 0x46e4e8
jmp 0x45430c
mov esi, 0x45fb10
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x45fc37
mov eax, 0x46378c
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.00434ad0
add esp, 0x38
mov esi, eax
jmp 0x4544af
mov edi, dword [esp + 0x4c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x48]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x454378.13
movzx eax, byte [eax + 0x45555c]
jmp dword [eax*4 + 0x45554c]
mov ecx, 2
jmp 0x45438b
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x454378.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x454378.13
lea eax, [eax*4 + 1]
push eax
call dword [0x475094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x454378.13
cmp ebp, 0xc
jne 0x4543e4
test edi, edi
je 0x4543db
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x4544a8
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x4543db
mov ebp, dword [esp + 0x14]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x45440d
sub eax, 2
jne 0x454416
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 edx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x454484
cmp ecx, 0x800
jb 0x454470
cmp ecx, 0x10000
jb 0x45445c
cmp ecx, 0x200000
jae 0x454499
mov al, cl
mov edx, 2
and al, 0x3f
or ecx, 0x400000
or al, 0x80
shr ecx, 6
mov byte [edi + ebx + 3], al
mov al, cl
or ecx, 0x20000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 2], al
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 1], al
mov byte [edi + ebx], cl
add edi, edx
cmp esi, dword [esp + 0x4c]
jb 0x4543f0
mov byte [edi + ebx], 0
jmp 0x4544a8
push ebx
call dword [0x475098]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
test esi, esi
je case.0x454f25.7
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x89c], 0
je 0x4544db
push esi
push str.Serial_Number
push ebx
push edi
call fcn.0041fc30
add esp, 0x10
test ebx, ebx
jne 0x4544ee
push esi
push str.___Serial_Number:__s_n
push edi
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
push dword [esp + 0x60]
lea eax, [esp + 0x11c]
push dword [esp + 0x60]
push eax
call fcn.004562f0
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x454f25.7
cmp byte [edi + 0x89c], 0
je 0x454530
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.0041fc30
add esp, 0x10
test ebx, ebx
jne 0x454543
push esi
push str.___Signature_Algorithm:__s_n
push edi
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
add esp, 4
cmp byte [esp + 0x92], 0
jne case.0x454f25.7
movzx ebp, byte [esp + 0x91]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x454f25.7
movzx eax, byte [eax + 0x455598]
jmp dword [eax*4 + 0x455570]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x454599
xor esi, esi
jmp 0x4549a6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x4549a6
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x4545d5
xor esi, esi
jmp 0x4549a6
cmp eax, 4
jbe 0x4545eb
push esi
push edx
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4549a6
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4545f1
push ecx
cmp ecx, 0xa
mov eax, 0x46e4d8
mov ecx, 0x45fc37
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00434ad0
add esp, 0xc
mov esi, eax
jmp 0x4549a6
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x45463e
xor esi, esi
jmp 0x4549a6
push ecx
push eax
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4549a6
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x4549a6
push 0x45fc37
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x4549a6
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.00455a10
add esp, 0xc
mov esi, eax
jmp 0x4549a6
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x4546c1
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4546c1
inc ecx
cmp ecx, edx
jb 0x4546b4
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4546d9
sub eax, 2
je 0x4546de
xor esi, esi
jmp 0x4549a2
mov edi, 0x46e518
cmp ecx, edx
jb 0x4546e9
xor esi, esi
jmp 0x4549a2
cmp byte [ecx], 0x5a
jne 0x4546fa
mov ecx, 0x46e51c
mov edx, 0x46e51f
jmp 0x4546fb
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.00434ad0
add esp, 0x28
mov esi, eax
jmp 0x4549a2
mov ebp, dword [esp + 0x88]
mov esi, 0x45fc37
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x45475d
nop word [eax + eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45475d
inc ecx
cmp ecx, edi
jb 0x454750
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x45478b
sub eax, 1
je 0x454786
sub eax, 1
je 0x45477f
xor esi, esi
jmp 0x4549a2
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x45478d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4547ec
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4547a1
cmp bl, 0x2c
jne 0x4547d1
inc ecx
inc eax
cmp eax, edi
jae 0x4547b3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4547b3
cmp dl, 0x39
jle 0x4547a2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4547d1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4547cc
dec esi
sub edx, 1
jne 0x4547c1
mov esi, 0x45fc37
cmp eax, edi
jae 0x4547ec
cmp byte [eax], 0x5a
jne 0x4547e6
mov eax, str._GMT
mov edi, 0x46e4e8
jmp 0x4547ec
mov esi, 0x45fb10
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x45fc37
mov eax, 0x46378c
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.00434ad0
add esp, 0x38
mov esi, eax
jmp 0x4549a2
mov edi, dword [esp + 0x8c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x45485e.13
movzx eax, byte [eax + 0x4555c8]
jmp dword [eax*4 + 0x4555b8]
mov ecx, 2
jmp 0x454871
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x45485e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x45485e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x475094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x45485e.13
cmp ebp, 0xc
jne 0x4548ca
test edi, edi
je 0x4548c1
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x45499b
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x4548c1
mov ebp, dword [esp + 0x14]
nop dword [eax]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x4548fd
sub eax, 2
jne 0x454906
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 edx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x454974
cmp ecx, 0x800
jb 0x454960
cmp ecx, 0x10000
jb 0x45494c
cmp ecx, 0x200000
jae 0x45498c
mov al, cl
mov edx, 2
and al, 0x3f
or ecx, 0x400000
or al, 0x80
shr ecx, 6
mov byte [edi + ebx + 3], al
mov al, cl
or ecx, 0x20000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 2], al
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 1], al
mov byte [edi + ebx], cl
add edi, edx
cmp esi, dword [esp + 0x8c]
jb 0x4548e0
mov byte [edi + ebx], 0
jmp 0x45499b
push ebx
call dword [0x475098]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov edi, dword [esp + 0x18]
test esi, esi
je case.0x454f25.7
cmp byte [edi + 0x89c], 0
mov ebx, dword [esp + 0x12c]
je 0x4549ce
push esi
push str.Start_Date
push ebx
push edi
call fcn.0041fc30
add esp, 0x10
test ebx, ebx
jne 0x4549e1
push esi
push str.___Start_Date:__s_n
push edi
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
add esp, 4
cmp byte [esp + 0xa2], 0
jne case.0x454f25.7
movzx ebp, byte [esp + 0xa1]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x454f25.7
movzx eax, byte [eax + 0x455604]
jmp dword [eax*4 + 0x4555dc]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x454a37
xor esi, esi
jmp 0x454e46
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x454e46
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x454a73
xor esi, esi
jmp 0x454e46
cmp eax, 4
jbe 0x454a89
push esi
push edx
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x454e46
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x454a90
push ecx
cmp ecx, 0xa
mov eax, 0x46e4d8
mov ecx, 0x45fc37
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00434ad0
add esp, 0xc
mov esi, eax
jmp 0x454e46
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x454add
xor esi, esi
jmp 0x454e46
push ecx
push eax
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x454e46
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x454e46
push 0x45fc37
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x454e46
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.00455a10
add esp, 0xc
mov esi, eax
jmp 0x454e46
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x454b60
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x454b60
inc ecx
cmp ecx, edx
jb 0x454b53
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x454b78
sub eax, 2
je 0x454b7d
xor esi, esi
jmp 0x454e42
mov edi, 0x46e518
cmp ecx, edx
jb 0x454b88
xor esi, esi
jmp 0x454e42
cmp byte [ecx], 0x5a
jne 0x454b99
mov ecx, 0x46e51c
mov edx, 0x46e51f
jmp 0x454b9a
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.00434ad0
add esp, 0x28
mov esi, eax
jmp 0x454e42
mov ebp, dword [esp + 0x98]
mov esi, 0x45fc37
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x454bfd
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x454bfd
inc ecx
cmp ecx, edi
jb 0x454bf0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x454c2b
sub eax, 1
je 0x454c26
sub eax, 1
je 0x454c1f
xor esi, esi
jmp 0x454e42
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x454c2d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x454c8c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x454c41
cmp bl, 0x2c
jne 0x454c71
inc ecx
inc eax
cmp eax, edi
jae 0x454c53
mov dl, byte [eax]
cmp dl, 0x30
jl 0x454c53
cmp dl, 0x39
jle 0x454c42
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x454c71
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x454c6c
dec esi
sub edx, 1
jne 0x454c61
mov esi, 0x45fc37
cmp eax, edi
jae 0x454c8c
cmp byte [eax], 0x5a
jne 0x454c86
mov eax, str._GMT
mov edi, 0x46e4e8
jmp 0x454c8c
mov esi, 0x45fb10
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x45fc37
mov eax, 0x46378c
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.00434ad0
add esp, 0x38
mov esi, eax
jmp 0x454e42
mov edi, dword [esp + 0x9c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x98]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x14], ecx
cmp eax, 0x12
ja case.0x454cfe.13
movzx eax, byte [eax + 0x455634]
jmp dword [eax*4 + 0x455624]
mov ecx, 2
jmp 0x454d11
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x454cfe.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x454cfe.13
lea eax, [eax*4 + 1]
push eax
call dword [0x475094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x454cfe.13
cmp ebp, 0xc
jne 0x454d6a
test edi, edi
je 0x454d61
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x454e3b
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x454d61
mov ebp, dword [esp + 0x14]
nop dword [eax]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x454d9d
sub eax, 2
jne 0x454da6
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 edx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x454e14
cmp ecx, 0x800
jb 0x454e00
cmp ecx, 0x10000
jb 0x454dec
cmp ecx, 0x200000
jae 0x454e2c
mov al, cl
mov edx, 2
and al, 0x3f
or ecx, 0x400000
or al, 0x80
shr ecx, 6
mov byte [edi + ebx + 3], al
mov al, cl
or ecx, 0x20000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 2], al
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 1], al
mov byte [edi + ebx], cl
add edi, edx
cmp esi, dword [esp + 0x9c]
jb 0x454d80
mov byte [edi + ebx], 0
jmp 0x454e3b
push ebx
call dword [0x475098]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov edi, dword [esp + 0x18]
test esi, esi
je case.0x454f25.7
cmp byte [edi + 0x89c], 0
mov ebp, dword [esp + 0x12c]
je 0x454e6e
push esi
push str.Expire_Date
push ebp
push edi
call fcn.0041fc30
add esp, 0x10
test ebp, ebp
jne 0x454e81
push esi
push str.___Expire_Date:__s_n
push edi
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
push dword [esp + 0xd0]
lea eax, [esp + 0x11c]
push dword [esp + 0xd0]
push eax
call fcn.004562f0
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x454f25.7
cmp byte [edi + 0x89c], 0
je 0x454ec9
push esi
push str.Public_Key_Algorithm
push ebp
push edi
call fcn.0041fc30
add esp, 0x10
test ebp, ebp
jne 0x454edc
push esi
push str.___Public_Key_Algorithm:__s_n
push edi
call fcn.00424f80
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebp
push edi
call fcn.00455b80
push esi
call dword [0x475098]
add esp, 0x18
cmp byte [esp + 0x72], 0
jne case.0x454f25.7
movzx ecx, byte [esp + 0x71]
mov dword [esp + 0x14], ecx
lea eax, [ecx - 1]
cmp eax, 0x1d
ja case.0x454f25.7
movzx eax, byte [eax + 0x455670]
jmp dword [eax*4 + 0x455648]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x454f42
xor esi, esi
jmp 0x455310
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x455310
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x454f78
xor esi, esi
jmp 0x455310
cmp eax, 4
jbe 0x454f8e
push esi
push edx
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x455310
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x454f94
push ecx
cmp ecx, 0xa
mov eax, 0x46e4d8
mov ecx, 0x45fc37
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00434ad0
add esp, 0xc
mov esi, eax
jmp 0x455310
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x454fdb
xor esi, esi
jmp 0x455310
push ecx
push eax
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x455310
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.004571e0
add esp, 8
mov esi, eax
jmp 0x455310
push 0x45fc37
call dword [0x4750a0]
add esp, 4
mov esi, eax
jmp 0x455310
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.00455a10
add esp, 0xc
mov esi, eax
jmp 0x455310
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x45504d
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45504d
inc ecx
cmp ecx, edx
jb 0x455040
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x455065
sub eax, 2
je 0x45506a
xor esi, esi
jmp 0x45530c
mov edi, 0x46e518
cmp ecx, edx
jb 0x455075
xor esi, esi
jmp 0x45530c
cmp byte [ecx], 0x5a
jne 0x455086
mov ecx, 0x46e51c
mov edx, 0x46e51f
jmp 0x455087
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.00434ad0
add esp, 0x28
mov esi, eax
jmp 0x45530c
mov ebp, dword [esp + 0x68]
mov edi, 0x45fc37
mov esi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, esi
jae 0x4550dd
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4550dd
inc ecx
cmp ecx, esi
jb 0x4550d0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x45510b
sub eax, 1
je 0x455106
sub eax, 1
je 0x4550ff
xor esi, esi
jmp 0x455305
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x45510d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, esi
jae 0x45516c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x455121
cmp bl, 0x2c
jne 0x455151
inc ecx
inc eax
cmp eax, esi
jae 0x455133
mov dl, byte [eax]
cmp dl, 0x30
jl 0x455133
cmp dl, 0x39
jle 0x455122
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x455151
lea edi, [ecx - 1]
add edi, edx
cmp byte [edi], 0x30
jne 0x45514c
dec edi
sub edx, 1
jne 0x455141
mov edi, 0x45fc37
cmp eax, esi
jae 0x45516c
cmp byte [eax], 0x5a
jne 0x455166
mov eax, str._GMT
mov esi, 0x46e4e8
jmp 0x45516c
mov edi, 0x45fb10
inc eax
push eax
sub esi, eax
test edx, edx
push esi
push edi
push ecx
push edx
mov ecx, 0x45fc37
mov eax, 0x46378c
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.00434ad0
add esp, 0x38
mov esi, eax
jmp 0x455305
mov edi, dword [esp + 0x6c]
add ecx, 0xfffffff4
mov esi, dword [esp + 0x68]
mov ebp, 1
sub edi, esi
cmp ecx, 0x12
ja case.0x4551d4.13
movzx eax, byte [ecx + 0x4556a0]
jmp dword [eax*4 + 0x455690]
mov ebp, 2
jmp case.0x4551d4.12
mov ebp, 4
xor edx, edx
mov eax, edi
div ebp
test edx, edx
jne case.0x4551d4.13
mov eax, edi
div ebp
cmp eax, 0x3fffffff
ja case.0x4551d4.13
lea eax, [eax*4 + 1]
push eax
call dword [0x475094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x4551d4.13
cmp dword [esp + 0x14], 0xc
jne 0x45523e
test edi, edi
je 0x455235
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x4552fe
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x455235
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x455263
sub eax, 2
jne 0x45526c
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 edx, 1
shl ecx, 8
inc esi
or ecx, eax
cmp ecx, 0x80
jb 0x4552da
cmp ecx, 0x800
jb 0x4552c6
cmp ecx, 0x10000
jb 0x4552b2
cmp ecx, 0x200000
jae 0x4552ef
mov al, cl
mov edx, 2
and al, 0x3f
or ecx, 0x400000
or al, 0x80
shr ecx, 6
mov byte [edi + ebx + 3], al
mov al, cl
or ecx, 0x20000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 2], al
mov al, cl
or ecx, 0x3000
and al, 0x3f
shr ecx, 6
or al, 0x80
inc edx
mov byte [edi + ebx + 1], al
mov byte [edi + ebx], cl
add edi, edx
cmp esi, dword [esp + 0x6c]
jb 0x455246
mov byte [edi + ebx], 0
jmp 0x4552fe
push ebx
call dword [0x475098]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov ebp, dword [esp + 0x12c]
mov edi, dword [esp + 0x18]
test esi, esi
je case.0x454f25.7
cmp byte [edi + 0x89c], 0
je 0x455331
push esi
push str.Signature
push ebp
push edi
call fcn.0041fc30
add esp, 0x10
test ebp, ebp
jne 0x455344
push esi
push str.___Signature:__s_n
push edi
call fcn.00424f80
add esp, 0xc
push esi
call dword [0x475098]
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 edi
call fcn.0043b160
add esp, 0x18
test eax, eax
jne 0x45539f
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x475094]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4553aa
push dword [esp + 0x20]
call dword [0x475098]
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 0x455408
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x455407
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x455402
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4553fd
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4553b4
jmp 0x455408
add esi, 3
jmp 0x455408
add esi, 2
jmp 0x455408
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x455435
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.00455af0
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x455417
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 0x455496
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x455495
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x455490
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x45548b
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x455442
jmp 0x455496
add esi, 3
jmp 0x455496
add esi, 2
jmp 0x455496
inc esi
mov byte [esi + ebp], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x475098]
mov ebp, dword [esp + 0x1c]
add esp, 4
cmp byte [ebp + 0x89c], 0
je 0x4554d2
push ebx
push str.Cert
push dword [esp + 0x134]
push ebp
call fcn.0041fc30
add esp, 0x10
cmp dword [esp + 0x12c], 0
jne 0x4554eb
push ebx
push 0x463430
push ebp
call fcn.00424f80
add esp, 0xc
push ebx
call dword [0x475098]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret