Function at 0x4645f0
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 + 0x424], bl
jne 0x464625
test edi, edi
je 0x464625
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.00465e90
add esp, 0xc
test eax, eax
je 0x464653
pop edi
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.00466190
mov esi, eax
add esp, 4
test esi, esi
je case.0x4656c2.7
cmp byte [ebp + 0x424], bl
je 0x4646a8
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x464680
sub ecx, edx
push ecx
push esi
push str.Subject
push edi
push ebp
call fcn.00426310
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x46477d
test edi, edi
jne 0x4646bc
push esi
push edi
push str._2d_Subject:__s
push ebp
call fcn.0042c1b0
add esp, 0x10
push esi
call dword [0x484004]
lea eax, [esp + 0x78]
push eax
call fcn.00466190
mov esi, eax
add esp, 8
test esi, esi
je case.0x4656c2.7
cmp byte [ebp + 0x424], 0
je 0x4646f9
push esi
push str.Issuer
push edi
push ebp
call fcn.00467b60
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test edi, edi
jne 0x46470c
push esi
push str.___Issuer:__s
push ebp
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test ebx, ebx
jne 0x46477d
mov ecx, dword [esp + 0x38]
xor esi, esi
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x464735
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x464728
cmp byte [ebp + 0x424], 0
je 0x464791
push esi
push 0x47ae3c
call fcn.00430620
mov edi, eax
add esp, 8
test edi, edi
je case.0x4656c2.7
push edi
push str.Version
push dword [esp + 0x134]
push ebp
call fcn.00467b60
mov ebx, eax
push edi
mov dword [esp + 0x28], ebx
call dword [0x484004]
add esp, 0x14
test ebx, ebx
je 0x46478a
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x114
ret
mov edi, dword [esp + 0x12c]
test edi, edi
jne 0x4647a8
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__u__0x_x_
push ebp
call fcn.0042c1b0
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x4656c2.7
movzx ebp, byte [esp + 0x51]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4656c2.7
movzx eax, byte [eax + 0x465d04]
mov ebx, 0x47d228
mov edx, str.FALSE
jmp dword [eax*4 + 0x465cdc]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x4647f2
xor esi, esi
jmp 0x464bbc
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x464bbc
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x464823
xor esi, esi
jmp 0x464bbc
cmp eax, 4
jbe 0x464839
push esi
push edx
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x464bbc
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x464840
cmp ecx, 0xa
mov eax, 0x47c518
push ecx
cmovb eax, ebx
push eax
push str._s_x
call fcn.00430620
add esp, 0xc
mov esi, eax
jmp 0x464bbc
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x464882
xor esi, esi
jmp 0x464bbc
push ecx
push eax
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x464bbc
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x464bbc
push 0x47d228
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x464bbc
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.004661f0
add esp, 0xc
mov esi, eax
jmp 0x464bbc
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x4648f3
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4648f3
inc ecx
cmp ecx, edx
jb 0x4648e6
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x46490b
sub eax, 2
je 0x464910
xor esi, esi
jmp 0x464bb5
mov edi, 0x47c558
cmp ecx, edx
jb 0x46491b
xor esi, esi
jmp 0x464bb5
cmp byte [ecx], 0x5a
jne 0x46492c
mov ecx, 0x47c55c
mov edx, 0x47c55f
jmp 0x46492d
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.00430620
add esp, 0x28
mov esi, eax
jmp 0x464bb5
mov ebp, dword [esp + 0x48]
mov esi, 0x47d228
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x464983
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x464983
inc ecx
cmp ecx, edi
jb 0x464976
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4649b1
sub eax, 1
je 0x4649ac
sub eax, 1
je 0x4649a5
xor esi, esi
jmp 0x464bb5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4649b3
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x464a12
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4649c7
cmp bl, 0x2c
jne 0x4649f7
inc ecx
inc eax
cmp eax, edi
jae 0x4649d9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4649d9
cmp dl, 0x39
jle 0x4649c8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4649f7
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4649f2
dec esi
sub edx, 1
jne 0x4649e7
mov esi, 0x47d228
cmp eax, edi
jae 0x464a12
cmp byte [eax], 0x5a
jne 0x464a0c
mov eax, str._GMT
mov edi, 0x47c528
jmp 0x464a12
mov esi, 0x47d350
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x47d228
mov eax, 0x47d27c
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.00430620
add esp, 0x38
mov esi, eax
jmp 0x464bb5
mov edi, dword [esp + 0x4c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x48]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x464a7e.13
movzx eax, byte [eax + 0x465d34]
jmp dword [eax*4 + 0x465d24]
mov ecx, 2
jmp 0x464a91
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x464a7e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x464a7e.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x464a7e.13
cmp ebp, 0xc
jne 0x464aea
test edi, edi
je 0x464ae1
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x464bae
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x464ae1
mov ebp, dword [esp + 0x18]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x464b13
sub eax, 2
jne 0x464b1c
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 0x464b8a
cmp ecx, 0x800
jb 0x464b76
cmp ecx, 0x10000
jb 0x464b62
cmp ecx, 0x200000
jae 0x464b9f
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 0x464af6
mov byte [edi + ebx], 0
jmp 0x464bae
push ebx
call dword [0x484004]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov edi, dword [esp + 0x12c]
test esi, esi
je case.0x4656c2.7
mov ebx, dword [esp + 0x128]
cmp byte [ebx + 0x424], 0
je 0x464bec
push esi
push str.Serial_Number
push edi
push ebx
call fcn.00467b60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x14], edi
jmp 0x464bf0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x12c]
test ebp, ebp
jne 0x464c0a
push esi
push str.___Serial_Number:__s
push ebx
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test edi, edi
jne 0x465b00
push dword [esp + 0x5c]
lea eax, [esp + 0x118]
push dword [esp + 0x5c]
push eax
call fcn.00466c00
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x4656c2.7
cmp byte [ebx + 0x424], 0
je 0x464c5d
push esi
push str.Signature_Algorithm
push ebp
push ebx
call fcn.00467b60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x14], edi
test ebp, ebp
jne 0x464c70
push esi
push str.___Signature_Algorithm:__s
push ebx
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test edi, edi
jne 0x465b00
cmp byte [esp + 0x92], 0
jne case.0x4656c2.7
movzx ebp, byte [esp + 0x91]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4656c2.7
movzx eax, byte [eax + 0x465d70]
jmp dword [eax*4 + 0x465d48]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x464cce
xor esi, esi
jmp 0x4650d6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x4650d6
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x464d0a
xor esi, esi
jmp 0x4650d6
cmp eax, 4
jbe 0x464d20
push esi
push edx
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x4650d6
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x464d26
push ecx
cmp ecx, 0xa
mov eax, 0x47c518
mov ecx, 0x47d228
cmovb eax, ecx
push eax
push str._s_x
call fcn.00430620
add esp, 0xc
mov esi, eax
jmp 0x4650d6
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x464d73
xor esi, esi
jmp 0x4650d6
push ecx
push eax
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x4650d6
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x4650d6
push 0x47d228
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x4650d6
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.004661f0
add esp, 0xc
mov esi, eax
jmp 0x4650d6
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x464dfd
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x464dfd
inc ecx
cmp ecx, edx
jb 0x464df0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x464e15
sub eax, 2
je 0x464e1a
xor esi, esi
jmp 0x4650d2
mov edi, 0x47c558
cmp ecx, edx
jb 0x464e25
xor esi, esi
jmp 0x4650d2
cmp byte [ecx], 0x5a
jne 0x464e36
mov ecx, 0x47c55c
mov edx, 0x47c55f
jmp 0x464e37
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.00430620
add esp, 0x28
mov esi, eax
jmp 0x4650d2
mov ebp, dword [esp + 0x88]
mov esi, 0x47d228
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x464e93
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x464e93
inc ecx
cmp ecx, edi
jb 0x464e86
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x464ec1
sub eax, 1
je 0x464ebc
sub eax, 1
je 0x464eb5
xor esi, esi
jmp 0x4650d2
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x464ec3
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x464f22
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x464ed7
cmp bl, 0x2c
jne 0x464f07
inc ecx
inc eax
cmp eax, edi
jae 0x464ee9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x464ee9
cmp dl, 0x39
jle 0x464ed8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x464f07
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x464f02
dec esi
sub edx, 1
jne 0x464ef7
mov esi, 0x47d228
cmp eax, edi
jae 0x464f22
cmp byte [eax], 0x5a
jne 0x464f1c
mov eax, str._GMT
mov edi, 0x47c528
jmp 0x464f22
mov esi, 0x47d350
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x47d228
mov eax, 0x47d27c
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.00430620
add esp, 0x38
mov esi, eax
jmp 0x4650d2
mov edi, dword [esp + 0x8c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x88]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x464f94.13
movzx eax, byte [eax + 0x465da0]
jmp dword [eax*4 + 0x465d90]
mov ecx, 2
jmp 0x464fa7
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x464f94.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x464f94.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x464f94.13
cmp ebp, 0xc
jne 0x465000
test edi, edi
je 0x464ff7
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x4650cb
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x464ff7
mov ebp, dword [esp + 0x18]
nop
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x46502d
sub eax, 2
jne 0x465036
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 0x4650a4
cmp ecx, 0x800
jb 0x465090
cmp ecx, 0x10000
jb 0x46507c
cmp ecx, 0x200000
jae 0x4650bc
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 0x465010
mov byte [edi + ebx], 0
jmp 0x4650cb
push ebx
call dword [0x484004]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov edi, dword [esp + 0x14]
test esi, esi
je case.0x4656c2.7
mov ebx, dword [esp + 0x128]
cmp byte [ebx + 0x424], 0
je 0x46510a
push esi
push str.Start_Date
push dword [esp + 0x134]
push ebx
call fcn.00467b60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x14], edi
cmp dword [esp + 0x12c], 0
jne 0x465123
push esi
push str.___Start_Date:__s
push ebx
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test edi, edi
jne 0x465b00
cmp byte [esp + 0xa2], 0
jne case.0x4656c2.7
movzx ebp, byte [esp + 0xa1]
lea eax, [ebp - 1]
cmp eax, 0x1d
ja case.0x4656c2.7
movzx eax, byte [eax + 0x465ddc]
jmp dword [eax*4 + 0x465db4]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x465181
xor esi, esi
jmp 0x465596
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x465596
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x4651bd
xor esi, esi
jmp 0x465596
cmp eax, 4
jbe 0x4651d3
push esi
push edx
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465596
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 0x4651e0
push ecx
cmp ecx, 0xa
mov eax, 0x47c518
mov ecx, 0x47d228
cmovb eax, ecx
push eax
push str._s_x
call fcn.00430620
add esp, 0xc
mov esi, eax
jmp 0x465596
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x46522d
xor esi, esi
jmp 0x465596
push ecx
push eax
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465596
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465596
push 0x47d228
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x465596
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.004661f0
add esp, 0xc
mov esi, eax
jmp 0x465596
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x4652b0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4652b0
inc ecx
cmp ecx, edx
jb 0x4652a3
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4652c8
sub eax, 2
je 0x4652cd
xor esi, esi
jmp 0x465592
mov edi, 0x47c558
cmp ecx, edx
jb 0x4652d8
xor esi, esi
jmp 0x465592
cmp byte [ecx], 0x5a
jne 0x4652e9
mov ecx, 0x47c55c
mov edx, 0x47c55f
jmp 0x4652ea
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.00430620
add esp, 0x28
mov esi, eax
jmp 0x465592
mov ebp, dword [esp + 0x98]
mov esi, 0x47d228
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x46534d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46534d
inc ecx
cmp ecx, edi
jb 0x465340
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x46537b
sub eax, 1
je 0x465376
sub eax, 1
je 0x46536f
xor esi, esi
jmp 0x465592
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x46537d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4653dc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x465391
cmp bl, 0x2c
jne 0x4653c1
inc ecx
inc eax
cmp eax, edi
jae 0x4653a3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4653a3
cmp dl, 0x39
jle 0x465392
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4653c1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4653bc
dec esi
sub edx, 1
jne 0x4653b1
mov esi, 0x47d228
cmp eax, edi
jae 0x4653dc
cmp byte [eax], 0x5a
jne 0x4653d6
mov eax, str._GMT
mov edi, 0x47c528
jmp 0x4653dc
mov esi, 0x47d350
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x47d228
mov eax, 0x47d27c
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.00430620
add esp, 0x38
mov esi, eax
jmp 0x465592
mov edi, dword [esp + 0x9c]
lea eax, [ebp - 0xc]
mov esi, dword [esp + 0x98]
mov ecx, 1
sub edi, esi
mov dword [esp + 0x18], ecx
cmp eax, 0x12
ja case.0x46544e.13
movzx eax, byte [eax + 0x465e0c]
jmp dword [eax*4 + 0x465dfc]
mov ecx, 2
jmp 0x465461
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x46544e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x46544e.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x46544e.13
cmp ebp, 0xc
jne 0x4654ba
test edi, edi
je 0x4654b1
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x46558b
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x4654b1
mov ebp, dword [esp + 0x18]
nop dword [eax]
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x4654ed
sub eax, 2
jne 0x4654f6
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 0x465564
cmp ecx, 0x800
jb 0x465550
cmp ecx, 0x10000
jb 0x46553c
cmp ecx, 0x200000
jae 0x46557c
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 0x4654d0
mov byte [edi + ebx], 0
jmp 0x46558b
push ebx
call dword [0x484004]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov edi, dword [esp + 0x14]
test esi, esi
je case.0x4656c2.7
mov ebp, dword [esp + 0x128]
mov ebx, dword [esp + 0x12c]
cmp byte [ebp + 0x424], 0
je 0x4655cb
push esi
push str.Expire_Date
push ebx
push ebp
call fcn.00467b60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x14], edi
test ebx, ebx
jne 0x4655de
push esi
push str.___Expire_Date:__s
push ebp
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test edi, edi
jne 0x465b00
push dword [esp + 0xcc]
lea eax, [esp + 0x118]
push dword [esp + 0xcc]
push eax
call fcn.00466c00
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x4656c2.7
cmp byte [ebp + 0x424], 0
je 0x46563b
push esi
push str.Public_Key_Algorithm
push ebx
push ebp
call fcn.00467b60
mov edi, eax
add esp, 0x10
mov dword [esp + 0x14], edi
test edi, edi
jne 0x465689
test ebx, ebx
jne 0x46564e
push esi
push str.___Public_Key_Algorithm:__s
push ebp
call fcn.0042c1b0
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push ebp
call fcn.00466360
add esp, 0x14
test eax, eax
je 0x465689
push esi
mov edi, 0x1b
call dword [0x484004]
add esp, 4
mov eax, edi
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
push esi
call dword [0x484004]
add esp, 4
test edi, edi
jne 0x465b00
cmp byte [esp + 0x72], 0
jne case.0x4656c2.7
movzx ecx, byte [esp + 0x71]
mov dword [esp + 0x18], ecx
lea eax, [ecx - 1]
cmp eax, 0x1d
ja case.0x4656c2.7
movzx eax, byte [eax + 0x465e48]
jmp dword [eax*4 + 0x465e20]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x4656df
xor esi, esi
jmp 0x465ab0
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x465ab0
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x465715
xor esi, esi
jmp 0x465ab0
cmp eax, 4
jbe 0x46572b
push esi
push edx
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465ab0
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x465731
push ecx
cmp ecx, 0xa
mov eax, 0x47c518
mov ecx, 0x47d228
cmovb eax, ecx
push eax
push str._s_x
call fcn.00430620
add esp, 0xc
mov esi, eax
jmp 0x465ab0
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x465778
xor esi, esi
jmp 0x465ab0
push ecx
push eax
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465ab0
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.00467af0
add esp, 8
mov esi, eax
jmp 0x465ab0
push 0x47d228
call dword [0x48400c]
add esp, 4
mov esi, eax
jmp 0x465ab0
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.004661f0
add esp, 0xc
mov esi, eax
jmp 0x465ab0
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x4657ed
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4657ed
inc ecx
cmp ecx, edx
jb 0x4657e0
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x465805
sub eax, 2
je 0x46580a
xor esi, esi
jmp 0x465aac
mov edi, 0x47c558
cmp ecx, edx
jb 0x465815
xor esi, esi
jmp 0x465aac
cmp byte [ecx], 0x5a
jne 0x465826
mov ecx, 0x47c55c
mov edx, 0x47c55f
jmp 0x465827
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.00430620
add esp, 0x28
mov esi, eax
jmp 0x465aac
mov ebp, dword [esp + 0x68]
mov esi, 0x47d228
mov edi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, edi
jae 0x46587d
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x46587d
inc ecx
cmp ecx, edi
jb 0x465870
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4658ab
sub eax, 1
je 0x4658a6
sub eax, 1
je 0x46589f
xor esi, esi
jmp 0x465aa5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4658ad
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x46590c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4658c1
cmp bl, 0x2c
jne 0x4658f1
inc ecx
inc eax
cmp eax, edi
jae 0x4658d3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4658d3
cmp dl, 0x39
jle 0x4658c2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4658f1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4658ec
dec esi
sub edx, 1
jne 0x4658e1
mov esi, 0x47d228
cmp eax, edi
jae 0x46590c
cmp byte [eax], 0x5a
jne 0x465906
mov eax, str._GMT
mov edi, 0x47c528
jmp 0x46590c
mov esi, 0x47d350
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x47d228
mov eax, 0x47d27c
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.00430620
add esp, 0x38
mov esi, eax
jmp 0x465aa5
mov edi, dword [esp + 0x6c]
add ecx, 0xfffffff4
mov esi, dword [esp + 0x68]
mov ebp, 1
sub edi, esi
cmp ecx, 0x12
ja case.0x465974.13
movzx eax, byte [ecx + 0x465e78]
jmp dword [eax*4 + 0x465e68]
mov ebp, 2
jmp case.0x465974.12
mov ebp, 4
xor edx, edx
mov eax, edi
div ebp
test edx, edx
jne case.0x465974.13
mov eax, edi
div ebp
cmp eax, 0x3fffffff
ja case.0x465974.13
lea eax, [eax*4 + 1]
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
je case.0x465974.13
cmp dword [esp + 0x18], 0xc
jne 0x4659de
test edi, edi
je 0x4659d5
push edi
push esi
push ebx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [edi + ebx], 0
jmp 0x465a9e
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x4659d5
mov eax, ebp
xor ecx, ecx
sub eax, 2
je 0x465a03
sub eax, 2
jne 0x465a0c
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 0x465a7a
cmp ecx, 0x800
jb 0x465a66
cmp ecx, 0x10000
jb 0x465a52
cmp ecx, 0x200000
jae 0x465a8f
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 0x4659e6
mov byte [edi + ebx], 0
jmp 0x465a9e
push ebx
call dword [0x484004]
add esp, 4
or edi, 0xffffffff
xor ebx, ebx
xor esi, esi
test edi, edi
cmovns esi, ebx
mov ebp, dword [esp + 0x128]
mov edi, dword [esp + 0x14]
test esi, esi
je case.0x4656c2.7
cmp byte [ebp + 0x424], 0
je 0x465ad9
push esi
push str.Signature
push dword [esp + 0x134]
push ebp
call fcn.00467b60
add esp, 0x10
mov edi, eax
cmp dword [esp + 0x12c], 0
jne 0x465af2
push esi
push str.___Signature:__s
push ebp
call fcn.0042c1b0
add esp, 0xc
push esi
call dword [0x484004]
add esp, 4
test edi, edi
je 0x465b0d
pop esi
mov eax, edi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
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.00442a20
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x465ccd
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [section..data]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x465b71
push dword [esp + 0x20]
call dword [0x484004]
add esp, 4
pop esi
pop edi
pop ebp
mov eax, 0x1b
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 0x465bd4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x465bd3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x465bce
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x465bc9
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x465b80
jmp 0x465bd4
add esi, 3
jmp 0x465bd4
add esi, 2
jmp 0x465bd4
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x465c01
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.004662d0
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x465be3
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 0x465c64
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x465c63
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x465c5e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x465c59
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x465c10
jmp 0x465c64
add esi, 3
jmp 0x465c64
add esi, 2
jmp 0x465c64
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 [0x484004]
mov eax, dword [esp + 0x12c]
add esp, 4
mov esi, dword [esp + 0x12c]
cmp byte [eax + 0x424], 0
je 0x465cb0
push ebx
push str.Cert
push esi
push eax
call fcn.00467b60
mov ebp, eax
add esp, 0x10
mov eax, dword [esp + 0x128]
test esi, esi
jne 0x465cc3
push ebx
push 0x4709a4
push eax
call fcn.0042c1b0
add esp, 0xc
push ebx
call dword [0x484004]
add esp, 4
pop esi
pop edi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x114
ret