Function at 0x4572e0
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 0x457314
test ebx, ebx
je 0x457314
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.00458a70
add esp, 0xc
test eax, eax
je 0x457341
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
push esi
lea eax, [esp + 0xa0]
push edi
push eax
call fcn.00458d70
mov esi, eax
add esp, 4
test esi, esi
je case.0x4582d5.7
cmp byte [ebp + 0x89c], 0
je 0x457376
push esi
push str.Subject
push ebx
push ebp
call fcn.00422fe0
add esp, 0x10
test ebx, ebx
jne 0x45738a
push esi
push ebx
push str._2d_Subject:__s_n
push ebp
call fcn.00428330
add esp, 0x10
push esi
call dword [0x479098]
lea eax, [esp + 0x78]
push eax
call fcn.00458d70
mov esi, eax
add esp, 8
test esi, esi
je case.0x4582d5.7
cmp byte [ebp + 0x89c], 0
je 0x4573c1
push esi
push str.Issuer
push ebx
push ebp
call fcn.00422fe0
add esp, 0x10
test ebx, ebx
jne 0x4573d4
push esi
push str.___Issuer:__s_n
push ebp
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, dword [esp + 0x3c]
xor esi, esi
cmp ecx, edx
jae 0x4573fd
nop dword [eax]
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x4573f0
cmp byte [ebp + 0x89c], 0
je 0x457435
push esi
push 0x470e08
call fcn.00437e70
mov edi, eax
add esp, 8
test edi, edi
je case.0x4582d5.7
push edi
push str.Version
push ebx
push ebp
call fcn.00422fe0
push edi
call dword [0x479098]
add esp, 0x14
test ebx, ebx
jne 0x45744c
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx__n
push ebp
call fcn.00428330
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x4582d5.7
movzx ebp, byte [esp + 0x51]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4582d5.7
movzx eax, byte [eax + 0x4588dc]
mov ebx, 0x463c77
mov edx, str.FALSE
jmp dword [eax*4 + 0x4588b4]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x457496
xor esi, esi
jmp 0x45785f
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x45785f
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x4574c7
xor esi, esi
jmp 0x45785f
cmp eax, 4
jbe 0x4574dd
push esi
push edx
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x45785f
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4574e3
cmp ecx, 0xa
mov eax, 0x472598
push ecx
cmovb eax, ebx
push eax
push str._s_lx
call fcn.00437e70
add esp, 0xc
mov esi, eax
jmp 0x45785f
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x457525
xor esi, esi
jmp 0x45785f
push ecx
push eax
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x45785f
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x45785f
push 0x463c77
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x45785f
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.00458dc0
add esp, 0xc
mov esi, eax
jmp 0x45785f
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x45759d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45759d
inc ecx
cmp ecx, edx
jb 0x457590
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4575b5
sub eax, 2
je 0x4575ba
xor esi, esi
jmp 0x45785f
mov edi, 0x4725d8
cmp ecx, edx
jb 0x4575c5
xor esi, esi
jmp 0x45785f
cmp byte [ecx], 0x5a
jne 0x4575d6
mov ecx, 0x4725dc
mov edx, 0x4725df
jmp 0x4575d7
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.00437e70
add esp, 0x28
mov esi, eax
jmp 0x45785f
mov ebp, dword [esp + 0x48]
mov esi, 0x463c77
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x45762d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45762d
inc ecx
cmp ecx, edi
jb 0x457620
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x45765b
sub eax, 1
je 0x457656
sub eax, 1
je 0x45764f
xor esi, esi
jmp 0x45785f
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x45765d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4576bc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x457671
cmp bl, 0x2c
jne 0x4576a1
inc ecx
inc eax
cmp eax, edi
jae 0x457683
mov dl, byte [eax]
cmp dl, 0x30
jl 0x457683
cmp dl, 0x39
jle 0x457672
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4576a1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x45769c
dec esi
sub edx, 1
jne 0x457691
mov esi, 0x463c77
cmp eax, edi
jae 0x4576bc
cmp byte [eax], 0x5a
jne 0x4576b6
mov eax, str._GMT
mov edi, 0x4725a8
jmp 0x4576bc
mov esi, 0x463b50
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x463c77
mov eax, 0x46784c
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.00437e70
add esp, 0x38
mov esi, eax
jmp 0x45785f
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.0x457728.13
movzx eax, byte [eax + 0x45890c]
jmp dword [eax*4 + 0x4588fc]
mov ecx, 2
jmp 0x45773b
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x457728.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x457728.13
lea eax, [eax*4 + 1]
push eax
call dword [0x479094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x457728.13
cmp ebp, 0xc
jne 0x457794
test edi, edi
je 0x45778b
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x457858
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x45778b
mov ebp, dword [esp + 0x14]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x4577bd
sub eax, 2
jne 0x4577c6
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 0x457834
cmp ecx, 0x800
jb 0x457820
cmp ecx, 0x10000
jb 0x45780c
cmp ecx, 0x200000
jae 0x457849
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 0x4577a0
mov byte [edi + ebx], 0
jmp 0x457858
push ebx
call dword [0x479098]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
test esi, esi
je case.0x4582d5.7
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x89c], 0
je 0x45788b
push esi
push str.Serial_Number
push ebx
push edi
call fcn.00422fe0
add esp, 0x10
test ebx, ebx
jne 0x45789e
push esi
push str.___Serial_Number:__s_n
push edi
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
push dword [esp + 0x60]
lea eax, [esp + 0x11c]
push dword [esp + 0x60]
push eax
call fcn.004596a0
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x4582d5.7
cmp byte [edi + 0x89c], 0
je 0x4578e0
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.00422fe0
add esp, 0x10
test ebx, ebx
jne 0x4578f3
push esi
push str.___Signature_Algorithm:__s_n
push edi
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
add esp, 4
cmp byte [esp + 0x92], 0
jne case.0x4582d5.7
movzx ebp, byte [esp + 0x91]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4582d5.7
movzx eax, byte [eax + 0x458948]
jmp dword [eax*4 + 0x458920]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x457949
xor esi, esi
jmp 0x457d56
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x457d56
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x457985
xor esi, esi
jmp 0x457d56
cmp eax, 4
jbe 0x45799b
push esi
push edx
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x457d56
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4579a1
push ecx
cmp ecx, 0xa
mov eax, 0x472598
mov ecx, 0x463c77
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00437e70
add esp, 0xc
mov esi, eax
jmp 0x457d56
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x4579ee
xor esi, esi
jmp 0x457d56
push ecx
push eax
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x457d56
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x457d56
push 0x463c77
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x457d56
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.00458dc0
add esp, 0xc
mov esi, eax
jmp 0x457d56
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x457a71
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x457a71
inc ecx
cmp ecx, edx
jb 0x457a64
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x457a89
sub eax, 2
je 0x457a8e
xor esi, esi
jmp 0x457d52
mov edi, 0x4725d8
cmp ecx, edx
jb 0x457a99
xor esi, esi
jmp 0x457d52
cmp byte [ecx], 0x5a
jne 0x457aaa
mov ecx, 0x4725dc
mov edx, 0x4725df
jmp 0x457aab
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.00437e70
add esp, 0x28
mov esi, eax
jmp 0x457d52
mov ebp, dword [esp + 0x88]
mov esi, 0x463c77
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x457b0d
nop word [eax + eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x457b0d
inc ecx
cmp ecx, edi
jb 0x457b00
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x457b3b
sub eax, 1
je 0x457b36
sub eax, 1
je 0x457b2f
xor esi, esi
jmp 0x457d52
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x457b3d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x457b9c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x457b51
cmp bl, 0x2c
jne 0x457b81
inc ecx
inc eax
cmp eax, edi
jae 0x457b63
mov dl, byte [eax]
cmp dl, 0x30
jl 0x457b63
cmp dl, 0x39
jle 0x457b52
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x457b81
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x457b7c
dec esi
sub edx, 1
jne 0x457b71
mov esi, 0x463c77
cmp eax, edi
jae 0x457b9c
cmp byte [eax], 0x5a
jne 0x457b96
mov eax, str._GMT
mov edi, 0x4725a8
jmp 0x457b9c
mov esi, 0x463b50
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x463c77
mov eax, 0x46784c
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.00437e70
add esp, 0x38
mov esi, eax
jmp 0x457d52
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.0x457c0e.13
movzx eax, byte [eax + 0x458978]
jmp dword [eax*4 + 0x458968]
mov ecx, 2
jmp 0x457c21
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x457c0e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x457c0e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x479094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x457c0e.13
cmp ebp, 0xc
jne 0x457c7a
test edi, edi
je 0x457c71
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x457d4b
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x457c71
mov ebp, dword [esp + 0x14]
nop dword [eax]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x457cad
sub eax, 2
jne 0x457cb6
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 0x457d24
cmp ecx, 0x800
jb 0x457d10
cmp ecx, 0x10000
jb 0x457cfc
cmp ecx, 0x200000
jae 0x457d3c
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 0x457c90
mov byte [edi + ebx], 0
jmp 0x457d4b
push ebx
call dword [0x479098]
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.0x4582d5.7
cmp byte [edi + 0x89c], 0
mov ebx, dword [esp + 0x12c]
je 0x457d7e
push esi
push str.Start_Date
push ebx
push edi
call fcn.00422fe0
add esp, 0x10
test ebx, ebx
jne 0x457d91
push esi
push str.___Start_Date:__s_n
push edi
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
add esp, 4
cmp byte [esp + 0xa2], 0
jne case.0x4582d5.7
movzx ebp, byte [esp + 0xa1]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4582d5.7
movzx eax, byte [eax + 0x4589b4]
jmp dword [eax*4 + 0x45898c]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x457de7
xor esi, esi
jmp 0x4581f6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x4581f6
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x457e23
xor esi, esi
jmp 0x4581f6
cmp eax, 4
jbe 0x457e39
push esi
push edx
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4581f6
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x457e40
push ecx
cmp ecx, 0xa
mov eax, 0x472598
mov ecx, 0x463c77
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00437e70
add esp, 0xc
mov esi, eax
jmp 0x4581f6
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x457e8d
xor esi, esi
jmp 0x4581f6
push ecx
push eax
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4581f6
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4581f6
push 0x463c77
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x4581f6
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.00458dc0
add esp, 0xc
mov esi, eax
jmp 0x4581f6
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x457f10
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x457f10
inc ecx
cmp ecx, edx
jb 0x457f03
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x457f28
sub eax, 2
je 0x457f2d
xor esi, esi
jmp 0x4581f2
mov edi, 0x4725d8
cmp ecx, edx
jb 0x457f38
xor esi, esi
jmp 0x4581f2
cmp byte [ecx], 0x5a
jne 0x457f49
mov ecx, 0x4725dc
mov edx, 0x4725df
jmp 0x457f4a
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.00437e70
add esp, 0x28
mov esi, eax
jmp 0x4581f2
mov ebp, dword [esp + 0x98]
mov esi, 0x463c77
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x457fad
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x457fad
inc ecx
cmp ecx, edi
jb 0x457fa0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x457fdb
sub eax, 1
je 0x457fd6
sub eax, 1
je 0x457fcf
xor esi, esi
jmp 0x4581f2
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x457fdd
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x45803c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x457ff1
cmp bl, 0x2c
jne 0x458021
inc ecx
inc eax
cmp eax, edi
jae 0x458003
mov dl, byte [eax]
cmp dl, 0x30
jl 0x458003
cmp dl, 0x39
jle 0x457ff2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x458021
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x45801c
dec esi
sub edx, 1
jne 0x458011
mov esi, 0x463c77
cmp eax, edi
jae 0x45803c
cmp byte [eax], 0x5a
jne 0x458036
mov eax, str._GMT
mov edi, 0x4725a8
jmp 0x45803c
mov esi, 0x463b50
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x463c77
mov eax, 0x46784c
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.00437e70
add esp, 0x38
mov esi, eax
jmp 0x4581f2
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.0x4580ae.13
movzx eax, byte [eax + 0x4589e4]
jmp dword [eax*4 + 0x4589d4]
mov ecx, 2
jmp 0x4580c1
mov ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4580ae.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4580ae.13
lea eax, [eax*4 + 1]
push eax
call dword [0x479094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x4580ae.13
cmp ebp, 0xc
jne 0x45811a
test edi, edi
je 0x458111
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x4581eb
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x458111
mov ebp, dword [esp + 0x14]
nop dword [eax]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x45814d
sub eax, 2
jne 0x458156
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 0x4581c4
cmp ecx, 0x800
jb 0x4581b0
cmp ecx, 0x10000
jb 0x45819c
cmp ecx, 0x200000
jae 0x4581dc
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 0x458130
mov byte [edi + ebx], 0
jmp 0x4581eb
push ebx
call dword [0x479098]
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.0x4582d5.7
cmp byte [edi + 0x89c], 0
mov ebp, dword [esp + 0x12c]
je 0x45821e
push esi
push str.Expire_Date
push ebp
push edi
call fcn.00422fe0
add esp, 0x10
test ebp, ebp
jne 0x458231
push esi
push str.___Expire_Date:__s_n
push edi
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
push dword [esp + 0xd0]
lea eax, [esp + 0x11c]
push dword [esp + 0xd0]
push eax
call fcn.004596a0
mov esi, eax
add esp, 0x10
test esi, esi
je case.0x4582d5.7
cmp byte [edi + 0x89c], 0
je 0x458279
push esi
push str.Public_Key_Algorithm
push ebp
push edi
call fcn.00422fe0
add esp, 0x10
test ebp, ebp
jne 0x45828c
push esi
push str.___Public_Key_Algorithm:__s_n
push edi
call fcn.00428330
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebp
push edi
call fcn.00458f30
push esi
call dword [0x479098]
add esp, 0x18
cmp byte [esp + 0x72], 0
jne case.0x4582d5.7
movzx ecx, byte [esp + 0x71]
mov dword [esp + 0x14], ecx
lea eax, [ecx - 1]
cmp eax, 0x1d
ja case.0x4582d5.7
movzx eax, byte [eax + 0x458a20]
jmp dword [eax*4 + 0x4589f8]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x4582f2
xor esi, esi
jmp 0x4586c0
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x4586c0
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x458328
xor esi, esi
jmp 0x4586c0
cmp eax, 4
jbe 0x45833e
push esi
push edx
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4586c0
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x458344
push ecx
cmp ecx, 0xa
mov eax, 0x472598
mov ecx, 0x463c77
cmovb eax, ecx
push eax
push str._s_lx
call fcn.00437e70
add esp, 0xc
mov esi, eax
jmp 0x4586c0
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x45838b
xor esi, esi
jmp 0x4586c0
push ecx
push eax
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4586c0
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0045a590
add esp, 8
mov esi, eax
jmp 0x4586c0
push 0x463c77
call dword [0x4790a0]
add esp, 4
mov esi, eax
jmp 0x4586c0
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.00458dc0
add esp, 0xc
mov esi, eax
jmp 0x4586c0
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x4583fd
nop
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4583fd
inc ecx
cmp ecx, edx
jb 0x4583f0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x458415
sub eax, 2
je 0x45841a
xor esi, esi
jmp 0x4586bc
mov edi, 0x4725d8
cmp ecx, edx
jb 0x458425
xor esi, esi
jmp 0x4586bc
cmp byte [ecx], 0x5a
jne 0x458436
mov ecx, 0x4725dc
mov edx, 0x4725df
jmp 0x458437
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.00437e70
add esp, 0x28
mov esi, eax
jmp 0x4586bc
mov ebp, dword [esp + 0x68]
mov edi, 0x463c77
mov esi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, esi
jae 0x45848d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x45848d
inc ecx
cmp ecx, esi
jb 0x458480
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4584bb
sub eax, 1
je 0x4584b6
sub eax, 1
je 0x4584af
xor esi, esi
jmp 0x4586b5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4584bd
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, esi
jae 0x45851c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4584d1
cmp bl, 0x2c
jne 0x458501
inc ecx
inc eax
cmp eax, esi
jae 0x4584e3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4584e3
cmp dl, 0x39
jle 0x4584d2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x458501
lea edi, [ecx - 1]
add edi, edx
cmp byte [edi], 0x30
jne 0x4584fc
dec edi
sub edx, 1
jne 0x4584f1
mov edi, 0x463c77
cmp eax, esi
jae 0x45851c
cmp byte [eax], 0x5a
jne 0x458516
mov eax, str._GMT
mov esi, 0x4725a8
jmp 0x45851c
mov edi, 0x463b50
inc eax
push eax
sub esi, eax
test edx, edx
push esi
push edi
push ecx
push edx
mov ecx, 0x463c77
mov eax, 0x46784c
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.00437e70
add esp, 0x38
mov esi, eax
jmp 0x4586b5
mov edi, dword [esp + 0x6c]
add ecx, 0xfffffff4
mov esi, dword [esp + 0x68]
mov ebp, 1
sub edi, esi
cmp ecx, 0x12
ja case.0x458584.13
movzx eax, byte [ecx + 0x458a50]
jmp dword [eax*4 + 0x458a40]
mov ebp, 2
jmp case.0x458584.12
mov ebp, 4
xor edx, edx
mov eax, edi
div ebp
test edx, edx
jne case.0x458584.13
mov eax, edi
div ebp
cmp eax, 0x3fffffff
ja case.0x458584.13
lea eax, [eax*4 + 1]
push eax
call dword [0x479094]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x458584.13
cmp dword [esp + 0x14], 0xc
jne 0x4585ee
test edi, edi
je 0x4585e5
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x4586ae
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x4585e5
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x458613
sub eax, 2
jne 0x45861c
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 0x45868a
cmp ecx, 0x800
jb 0x458676
cmp ecx, 0x10000
jb 0x458662
cmp ecx, 0x200000
jae 0x45869f
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 0x4585f6
mov byte [edi + ebx], 0
jmp 0x4586ae
push ebx
call dword [0x479098]
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.0x4582d5.7
cmp byte [edi + 0x89c], 0
je 0x4586e1
push esi
push str.Signature
push ebp
push edi
call fcn.00422fe0
add esp, 0x10
test ebp, ebp
jne 0x4586f4
push esi
push str.___Signature:__s_n
push edi
call fcn.00428330
add esp, 0xc
push esi
call dword [0x479098]
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.0043e4f0
add esp, 0x18
test eax, eax
jne 0x45874f
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x479094]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x45875a
push dword [esp + 0x20]
call dword [0x479098]
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 0x4587b8
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x4587b7
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x4587b2
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4587ad
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x458764
jmp 0x4587b8
add esi, 3
jmp 0x4587b8
add esi, 2
jmp 0x4587b8
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x4587e5
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.00458ea0
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x4587c7
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 0x458846
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x458845
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x458840
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x45883b
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4587f2
jmp 0x458846
add esi, 3
jmp 0x458846
add esi, 2
jmp 0x458846
inc esi
mov byte [esi + ebp], 0xa
lea eax, [esi + ebx]
mov byte [eax + edi + 1], 0
push dword [esp + 0x20]
call dword [0x479098]
mov ebp, dword [esp + 0x1c]
add esp, 4
cmp byte [ebp + 0x89c], 0
je 0x458882
push ebx
push str.Cert
push dword [esp + 0x134]
push ebp
call fcn.00422fe0
add esp, 0x10
cmp dword [esp + 0x12c], 0
jne 0x45889b
push ebx
push 0x4674f0
push ebp
call fcn.00428330
add esp, 0xc
push ebx
call dword [0x479098]
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x114
ret