Function at 0x4f56e0
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 + 0x450], bl
jne 0x4f5715
test edi, edi
je 0x4f5715
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.004f6f90
add esp, 0xc
test eax, eax
je 0x4f5743
pop edi
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.004f72a0
mov esi, eax
add esp, 4
test esi, esi
je case.0x4f67b7.7
cmp byte [ebp + 0x450], bl
je 0x4f5784
push esi
push str.Subject
push edi
push ebp
call fcn.004b9a00
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x4f6c66
test edi, edi
jne 0x4f5798
push esi
push edi
push str._2d_Subject:__s
push ebp
call fcn.004bebb0
add esp, 0x10
push esi
call dword [0x67f010]
lea eax, [esp + 0x78]
push eax
call fcn.004f72a0
mov esi, eax
add esp, 8
test esi, esi
je case.0x4f67b7.7
cmp byte [ebp + 0x450], 0
je 0x4f57d5
push esi
push str.Issuer
push edi
push ebp
call fcn.004b9a00
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test edi, edi
jne 0x4f57e8
push esi
push str.___Issuer:__s
push ebp
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebx, ebx
jne 0x4f585a
mov ecx, dword [esp + 0x38]
xor esi, esi
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x4f5811
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x4f5804
cmp byte [ebp + 0x450], 0
je 0x4f586e
push esi
push 0x55614c
call fcn.004d3860
mov edi, eax
add esp, 8
test edi, edi
je case.0x4f67b7.7
mov ebx, dword [esp + 0x12c]
push edi
push str.Version
push ebx
push ebp
call fcn.004b9a00
mov ebx, eax
push edi
mov dword [esp + 0x28], ebx
call dword [0x67f010]
add esp, 0x14
test ebx, ebx
je 0x4f5867
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x114
ret
mov edi, dword [esp + 0x12c]
test edi, edi
jne 0x4f5885
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__lu__0x_lx_
push ebp
call fcn.004bebb0
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x4f67b7.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4f67b7.7
movzx eax, byte [eax + 0x4f6e00]
mov ebp, 0x574d55
mov edx, str.FALSE
jmp dword [eax*4 + 0x4f6dd8]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x4f58cf
xor esi, esi
jmp 0x4f5ca5
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f5ca5
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x4f5900
xor esi, esi
jmp 0x4f5ca5
cmp eax, 4
jbe 0x4f5916
push esi
push edx
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f5ca5
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 0x4f5920
cmp ecx, 0xa
mov eax, 0x576c84
push ecx
cmovb eax, ebp
push eax
push str._s_lx
call fcn.004d3860
add esp, 0xc
mov esi, eax
jmp 0x4f5ca5
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x4f5962
xor esi, esi
jmp 0x4f5ca5
push ecx
push eax
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f5ca5
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f5ca5
push 0x574d55
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f5ca5
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.004f7300
add esp, 0xc
mov esi, eax
jmp 0x4f5ca5
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x4f59d3
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f59d3
inc ecx
cmp ecx, edx
jb 0x4f59c6
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4f59eb
sub eax, 2
je 0x4f59f0
xor esi, esi
jmp 0x4f5ca5
mov edi, 0x557c98
cmp ecx, edx
jb 0x4f59fb
xor esi, esi
jmp 0x4f5ca5
cmp byte [ecx], 0x5a
jne 0x4f5a0c
mov ecx, 0x557c9c
mov edx, 0x557c9f
jmp 0x4f5a0d
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.004d3860
add esp, 0x28
mov esi, eax
jmp 0x4f5ca5
mov ebp, dword [esp + 0x48]
mov esi, 0x574d55
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x4f5a63
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f5a63
inc ecx
cmp ecx, edi
jb 0x4f5a56
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4f5a91
sub eax, 1
je 0x4f5a8c
sub eax, 1
je 0x4f5a85
xor esi, esi
jmp 0x4f5ca5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4f5a93
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4f5af2
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4f5aa7
cmp bl, 0x2c
jne 0x4f5ad7
inc ecx
inc eax
cmp eax, edi
jae 0x4f5ab9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4f5ab9
cmp dl, 0x39
jle 0x4f5aa8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4f5ad7
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4f5ad2
dec esi
sub edx, 1
jne 0x4f5ac7
mov esi, 0x574d55
cmp eax, edi
jae 0x4f5af2
cmp byte [eax], 0x5a
jne 0x4f5aec
mov eax, str._GMT
mov edi, 0x557c68
jmp 0x4f5af2
mov esi, 0x54c278
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x574d55
mov eax, 0x574e14
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.004d3860
add esp, 0x38
mov esi, eax
jmp 0x4f5ca5
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.0x4f5b5e.13
movzx eax, byte [eax + 0x4f6e30]
jmp dword [eax*4 + 0x4f6e20]
mov ecx, 2
jmp 0x4f5b71
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4f5b5e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4f5b5e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x67f00c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4f5b5e.13
cmp ebx, 0xc
jne 0x4f5bca
test edi, edi
je 0x4f5bc1
push edi
push esi
push ebp
call fcn.00513870
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4f5c9e
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x4f5bc1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x4f5bf1
sub eax, 2
jne 0x4f5bfa
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 0x4f5c78
cmp ecx, 0x800
jb 0x4f5c60
cmp ecx, 0x10000
jb 0x4f5c44
cmp ecx, 0x200000
jae 0x4f5c8f
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 0x4f5c4c
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 0x4f5c63
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 0x4f5c7b
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x4c]
jb 0x4f5bd2
mov byte [edi + ebp], 0
jmp 0x4f5c9e
push ebp
call dword [0x67f010]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
test esi, esi
je case.0x4f67b7.7
mov edi, dword [esp + 0x128]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x450], 0
je 0x4f5cdc
push esi
push str.Serial_Number
push ebx
push edi
call fcn.004b9a00
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
jmp 0x4f5ce0
mov ebp, dword [esp + 0x14]
test ebx, ebx
jne 0x4f5cf3
push esi
push str.___Serial_Number:__s
push edi
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
push dword [esp + 0x5c]
lea eax, [esp + 0x118]
push dword [esp + 0x5c]
push eax
call fcn.004f7cf0
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x4f67b7.7
cmp byte [edi + 0x450], 0
je 0x4f5d46
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.004b9a00
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x4f5d59
push esi
push str.___Signature_Algorithm:__s
push edi
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
cmp byte [esp + 0x92], 0
jne case.0x4f67b7.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4f67b7.7
movzx eax, byte [eax + 0x4f6e6c]
jmp dword [eax*4 + 0x4f6e44]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x4f5db7
xor esi, esi
jmp 0x4f61d6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f61d6
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x4f5df3
xor esi, esi
jmp 0x4f61d6
cmp eax, 4
jbe 0x4f5e09
push esi
push edx
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f61d6
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4f5e10
push ecx
cmp ecx, 0xa
mov eax, 0x576c84
mov ecx, 0x574d55
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004d3860
add esp, 0xc
mov esi, eax
jmp 0x4f61d6
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x4f5e5d
xor esi, esi
jmp 0x4f61d6
push ecx
push eax
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f61d6
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f61d6
push 0x574d55
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f61d6
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.004f7300
add esp, 0xc
mov esi, eax
jmp 0x4f61d6
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x4f5ee0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f5ee0
inc ecx
cmp ecx, edx
jb 0x4f5ed3
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4f5ef8
sub eax, 2
je 0x4f5efd
xor esi, esi
jmp 0x4f61cf
mov edi, 0x557c98
cmp ecx, edx
jb 0x4f5f08
xor esi, esi
jmp 0x4f61cf
cmp byte [ecx], 0x5a
jne 0x4f5f19
mov ecx, 0x557c9c
mov edx, 0x557c9f
jmp 0x4f5f1a
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.004d3860
add esp, 0x28
mov esi, eax
jmp 0x4f61cf
mov ebp, dword [esp + 0x88]
mov esi, 0x574d55
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x4f5f7d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f5f7d
inc ecx
cmp ecx, edi
jb 0x4f5f70
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4f5fab
sub eax, 1
je 0x4f5fa6
sub eax, 1
je 0x4f5f9f
xor esi, esi
jmp 0x4f61cb
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4f5fad
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4f600c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4f5fc1
cmp bl, 0x2c
jne 0x4f5ff1
inc ecx
inc eax
cmp eax, edi
jae 0x4f5fd3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4f5fd3
cmp dl, 0x39
jle 0x4f5fc2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4f5ff1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4f5fec
dec esi
sub edx, 1
jne 0x4f5fe1
mov esi, 0x574d55
cmp eax, edi
jae 0x4f600c
cmp byte [eax], 0x5a
jne 0x4f6006
mov eax, str._GMT
mov edi, 0x557c68
jmp 0x4f600c
mov esi, 0x54c278
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x574d55
mov eax, 0x574e14
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.004d3860
add esp, 0x38
mov esi, eax
jmp 0x4f61cb
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.0x4f607e.13
movzx eax, byte [eax + 0x4f6e9c]
jmp dword [eax*4 + 0x4f6e8c]
mov ecx, 2
jmp 0x4f6091
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4f607e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4f607e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x67f00c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4f607e.13
cmp ebx, 0xc
jne 0x4f60ea
test edi, edi
je 0x4f60e1
push edi
push esi
push ebp
call fcn.00513870
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4f61c4
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x4f60e1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x4f6114
sub eax, 2
jne 0x4f611d
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 0x4f619b
cmp ecx, 0x800
jb 0x4f6183
cmp ecx, 0x10000
jb 0x4f6167
cmp ecx, 0x200000
jae 0x4f61b5
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 0x4f616f
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 0x4f6186
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 0x4f619e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x4f60f5
mov byte [edi + ebp], 0
jmp 0x4f61c4
push ebp
call dword [0x67f010]
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.0x4f67b7.7
cmp byte [edi + 0x450], 0
mov ebx, dword [esp + 0x12c]
je 0x4f6204
push esi
push str.Start_Date
push ebx
push edi
call fcn.004b9a00
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x4f6217
push esi
push str.___Start_Date:__s
push edi
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
cmp byte [esp + 0xa2], 0
jne case.0x4f67b7.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4f67b7.7
movzx eax, byte [eax + 0x4f6ed8]
jmp dword [eax*4 + 0x4f6eb0]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x4f6275
xor esi, esi
jmp 0x4f6696
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f6696
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x4f62b1
xor esi, esi
jmp 0x4f6696
cmp eax, 4
jbe 0x4f62c7
push esi
push edx
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6696
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 0x4f62d0
push ecx
cmp ecx, 0xa
mov eax, 0x576c84
mov ecx, 0x574d55
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004d3860
add esp, 0xc
mov esi, eax
jmp 0x4f6696
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x4f631d
xor esi, esi
jmp 0x4f6696
push ecx
push eax
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6696
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6696
push 0x574d55
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f6696
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.004f7300
add esp, 0xc
mov esi, eax
jmp 0x4f6696
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x4f63a0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f63a0
inc ecx
cmp ecx, edx
jb 0x4f6393
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4f63b8
sub eax, 2
je 0x4f63bd
xor esi, esi
jmp 0x4f668f
mov edi, 0x557c98
cmp ecx, edx
jb 0x4f63c8
xor esi, esi
jmp 0x4f668f
cmp byte [ecx], 0x5a
jne 0x4f63d9
mov ecx, 0x557c9c
mov edx, 0x557c9f
jmp 0x4f63da
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.004d3860
add esp, 0x28
mov esi, eax
jmp 0x4f668f
mov ebp, dword [esp + 0x98]
mov esi, 0x574d55
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x4f643d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f643d
inc ecx
cmp ecx, edi
jb 0x4f6430
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4f646b
sub eax, 1
je 0x4f6466
sub eax, 1
je 0x4f645f
xor esi, esi
jmp 0x4f668b
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4f646d
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4f64cc
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4f6481
cmp bl, 0x2c
jne 0x4f64b1
inc ecx
inc eax
cmp eax, edi
jae 0x4f6493
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4f6493
cmp dl, 0x39
jle 0x4f6482
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4f64b1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4f64ac
dec esi
sub edx, 1
jne 0x4f64a1
mov esi, 0x574d55
cmp eax, edi
jae 0x4f64cc
cmp byte [eax], 0x5a
jne 0x4f64c6
mov eax, str._GMT
mov edi, 0x557c68
jmp 0x4f64cc
mov esi, 0x54c278
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x574d55
mov eax, 0x574e14
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.004d3860
add esp, 0x38
mov esi, eax
jmp 0x4f668b
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.0x4f653e.13
movzx eax, byte [eax + 0x4f6f08]
jmp dword [eax*4 + 0x4f6ef8]
mov ecx, 2
jmp 0x4f6551
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4f653e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4f653e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x67f00c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4f653e.13
cmp ebx, 0xc
jne 0x4f65aa
test edi, edi
je 0x4f65a1
push edi
push esi
push ebp
call fcn.00513870
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4f6684
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x4f65a1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x4f65d4
sub eax, 2
jne 0x4f65dd
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 0x4f665b
cmp ecx, 0x800
jb 0x4f6643
cmp ecx, 0x10000
jb 0x4f6627
cmp ecx, 0x200000
jae 0x4f6675
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 0x4f662f
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 0x4f6646
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 0x4f665e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x9c]
jb 0x4f65b5
mov byte [edi + ebp], 0
jmp 0x4f6684
push ebp
call dword [0x67f010]
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.0x4f67b7.7
cmp byte [edi + 0x450], 0
mov ebx, dword [esp + 0x12c]
je 0x4f66c4
push esi
push str.Expire_Date
push ebx
push edi
call fcn.004b9a00
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x4f66d7
push esi
push str.___Expire_Date:__s
push edi
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
push dword [esp + 0xcc]
lea eax, [esp + 0x118]
push dword [esp + 0xcc]
push eax
call fcn.004f7cf0
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x4f67b7.7
cmp byte [edi + 0x450], 0
je 0x4f6734
push esi
push str.Public_Key_Algorithm
push ebx
push edi
call fcn.004b9a00
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x4f6782
test ebx, ebx
jne 0x4f6747
push esi
push str.___Public_Key_Algorithm:__s
push edi
call fcn.004bebb0
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push edi
call fcn.004f7470
add esp, 0x14
test eax, eax
je 0x4f6782
push esi
mov ebp, 0x1b
call dword [0x67f010]
add esp, 4
mov eax, ebp
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
cmp byte [esp + 0x72], 0
jne case.0x4f67b7.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x4f67b7.7
movzx eax, byte [eax + 0x4f6f44]
jmp dword [eax*4 + 0x4f6f1c]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x4f67d4
xor esi, esi
jmp 0x4f6bbe
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f6bbe
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x4f680a
xor esi, esi
jmp 0x4f6bbe
cmp eax, 4
jbe 0x4f6820
push esi
push edx
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6bbe
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x4f6826
push ecx
cmp ecx, 0xa
mov eax, 0x576c84
mov ecx, 0x574d55
cmovb eax, ecx
push eax
push str._s_lx
call fcn.004d3860
add esp, 0xc
mov esi, eax
jmp 0x4f6bbe
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x4f686d
xor esi, esi
jmp 0x4f6bbe
push ecx
push eax
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6bbe
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.004f8c00
add esp, 8
mov esi, eax
jmp 0x4f6bbe
push 0x574d55
call dword [0x67f018]
add esp, 4
mov esi, eax
jmp 0x4f6bbe
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.004f7300
add esp, 0xc
mov esi, eax
jmp 0x4f6bbe
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x4f68de
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f68de
inc ecx
cmp ecx, edx
jb 0x4f68d1
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x4f68f6
sub eax, 2
je 0x4f68fb
xor esi, esi
jmp 0x4f6bb7
mov edi, 0x557c98
cmp ecx, edx
jb 0x4f6906
xor esi, esi
jmp 0x4f6bb7
cmp byte [ecx], 0x5a
jne 0x4f6917
mov ecx, 0x557c9c
mov edx, 0x557c9f
jmp 0x4f6918
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.004d3860
add esp, 0x28
mov esi, eax
jmp 0x4f6bb7
mov ebp, dword [esp + 0x68]
mov esi, 0x574d55
mov edi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, edi
jae 0x4f696e
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x4f696e
inc ecx
cmp ecx, edi
jb 0x4f6961
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x4f699c
sub eax, 1
je 0x4f6997
sub eax, 1
je 0x4f6990
xor esi, esi
jmp 0x4f6bb3
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x4f699e
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x4f69fd
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x4f69b2
cmp bl, 0x2c
jne 0x4f69e2
inc ecx
inc eax
cmp eax, edi
jae 0x4f69c4
mov dl, byte [eax]
cmp dl, 0x30
jl 0x4f69c4
cmp dl, 0x39
jle 0x4f69b3
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x4f69e2
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x4f69dd
dec esi
sub edx, 1
jne 0x4f69d2
mov esi, 0x574d55
cmp eax, edi
jae 0x4f69fd
cmp byte [eax], 0x5a
jne 0x4f69f7
mov eax, str._GMT
mov edi, 0x557c68
jmp 0x4f69fd
mov esi, 0x54c278
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x574d55
mov eax, 0x574e14
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.004d3860
add esp, 0x38
mov esi, eax
jmp 0x4f6bb3
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.0x4f6a69.13
movzx eax, byte [eax + 0x4f6f74]
jmp dword [eax*4 + 0x4f6f64]
mov ecx, 2
jmp 0x4f6a7c
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x4f6a69.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x4f6a69.13
lea eax, [eax*4 + 1]
push eax
call dword [0x67f00c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x4f6a69.13
cmp ebx, 0xc
jne 0x4f6ad5
test edi, edi
je 0x4f6acc
push edi
push esi
push ebp
call fcn.00513870
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x4f6bac
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x4f6acc
nop dword [eax]
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x4f6aff
sub eax, 2
jne 0x4f6b08
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 0x4f6b86
cmp ecx, 0x800
jb 0x4f6b6e
cmp ecx, 0x10000
jb 0x4f6b52
cmp ecx, 0x200000
jae 0x4f6b9d
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 0x4f6b5a
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 0x4f6b71
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 0x4f6b89
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x4f6ae0
mov byte [edi + ebp], 0
jmp 0x4f6bac
push ebp
call dword [0x67f010]
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.0x4f67b7.7
cmp byte [edi + 0x450], 0
mov ebx, dword [esp + 0x12c]
je 0x4f6be8
push esi
push str.Signature
push ebx
push edi
call fcn.004b9a00
add esp, 0x10
mov ebp, eax
test ebx, ebx
jne 0x4f6bfb
push esi
push str.___Signature:__s
push edi
call fcn.004bebb0
add esp, 0xc
push esi
call dword [0x67f010]
add esp, 4
test ebp, ebp
jne 0x4f6dcb
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.004db0b0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4f6dcb
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x67f00c]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x4f6c71
push dword [esp + 0x20]
call dword [0x67f010]
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 0x4f6cd4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x4f6cd3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x4f6cce
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4f6cc9
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4f6c80
jmp 0x4f6cd4
add esi, 3
jmp 0x4f6cd4
add esi, 2
jmp 0x4f6cd4
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x4f6d01
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.004f73e0
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x4f6ce3
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 0x4f6d64
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x4f6d63
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x4f6d5e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x4f6d59
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x4f6d10
jmp 0x4f6d64
add esi, 3
jmp 0x4f6d64
add esi, 2
jmp 0x4f6d64
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 [0x67f010]
mov esi, dword [esp + 0x12c]
add esp, 4
cmp byte [esi + 0x450], 0
je 0x4f6da8
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.004b9a00
add esp, 0x10
mov ebp, eax
cmp dword [esp + 0x12c], 0
jne 0x4f6dc1
push ebx
push 0x5470ac
push esi
call fcn.004bebb0
add esp, 0xc
push ebx
call dword [0x67f010]
add esp, 4
pop esi
pop edi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x114
ret