Function at 0x63b710
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 + 0x42c], bl
jne 0x63b745
test edi, edi
je 0x63b745
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.0063cfd0
add esp, 0xc
test eax, eax
je 0x63b773
pop edi
pop ebp
mov eax, 0x3c
pop ebx
add esp, 0x114
ret
lea eax, [esp + 0xa0]
push esi
push eax
call fcn.0063d2e0
mov esi, eax
add esp, 4
test esi, esi
je case.0x63c7f7.7
cmp byte [ebp + 0x42c], bl
je 0x63b7c8
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x63b7a0
sub ecx, edx
push ecx
push esi
push str.Subject
push edi
push ebp
call fcn.005fd850
mov ebx, eax
add esp, 0x14
mov dword [esp + 0x14], ebx
test ebx, ebx
jne 0x63b89e
test edi, edi
jne 0x63b7dc
push esi
push edi
push str._2d_Subject:__s
push ebp
call fcn.00603100
add esp, 0x10
push esi
call dword [0x73c760]
lea eax, [esp + 0x78]
push eax
call fcn.0063d2e0
mov esi, eax
add esp, 8
test esi, esi
je case.0x63c7f7.7
cmp byte [ebp + 0x42c], 0
je 0x63b819
push esi
push str.Issuer
push edi
push ebp
call fcn.0063ecf0
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x14], ebx
test edi, edi
jne 0x63b82c
push esi
push str.___Issuer:__s
push ebp
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebx, ebx
jne 0x63b89e
mov ecx, dword [esp + 0x38]
xor esi, esi
mov edx, dword [esp + 0x3c]
cmp ecx, edx
jae 0x63b855
movzx eax, byte [ecx]
inc ecx
shl esi, 8
or esi, eax
cmp ecx, edx
jb 0x63b848
cmp byte [ebp + 0x42c], 0
je 0x63b8b2
push esi
push 0x6f286c
call fcn.00613180
mov edi, eax
add esp, 8
test edi, edi
je case.0x63c7f7.7
mov ebx, dword [esp + 0x12c]
push edi
push str.Version
push ebx
push ebp
call fcn.0063ecf0
mov ebx, eax
push edi
mov dword [esp + 0x28], ebx
call dword [0x73c760]
add esp, 0x14
test ebx, ebx
je 0x63b8ab
pop esi
pop edi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x114
ret
mov edi, dword [esp + 0x12c]
test edi, edi
jne 0x63b8c9
push esi
lea eax, [esi + 1]
push eax
push str.___Version:__u__0x_x_
push ebp
call fcn.00603100
add esp, 0x10
cmp byte [esp + 0x52], 0
jne case.0x63c7f7.7
movzx ebx, byte [esp + 0x51]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x63c7f7.7
movzx eax, byte [eax + 0x63ce40]
mov ebp, 0x6b111e
mov edx, str.FALSE
jmp dword [eax*4 + 0x63ce18]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
sub eax, ecx
cmp eax, 1
je 0x63b913
xor esi, esi
jmp 0x63bce5
cmp byte [ecx], 0
mov eax, str.TRUE
cmove eax, edx
push eax
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63bce5
mov esi, dword [esp + 0x4c]
mov eax, esi
mov edx, dword [esp + 0x48]
sub eax, edx
jne 0x63b944
xor esi, esi
jmp 0x63bce5
cmp eax, 4
jbe 0x63b95a
push esi
push edx
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63bce5
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x63b960
cmp ecx, 0xa
mov eax, 0x6e1c40
push ecx
cmovb eax, ebp
push eax
push str._s_x
call fcn.00613180
add esp, 0xc
mov esi, eax
jmp 0x63bce5
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
inc eax
cmp eax, ecx
jbe 0x63b9a2
xor esi, esi
jmp 0x63bce5
push ecx
push eax
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63bce5
push dword [esp + 0x4c]
push dword [esp + 0x4c]
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63bce5
push 0x6b111e
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63bce5
push 1
push dword [esp + 0x50]
push dword [esp + 0x50]
call fcn.0063d340
add esp, 0xc
mov esi, eax
jmp 0x63bce5
mov esi, dword [esp + 0x48]
mov ecx, esi
mov edx, dword [esp + 0x4c]
cmp ecx, edx
jae 0x63ba13
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63ba13
inc ecx
cmp ecx, edx
jb 0x63ba06
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x63ba2b
sub eax, 2
je 0x63ba30
xor esi, esi
jmp 0x63bce5
mov edi, 0x6f2748
cmp ecx, edx
jb 0x63ba3b
xor esi, esi
jmp 0x63bce5
cmp byte [ecx], 0x5a
jne 0x63ba4c
mov ecx, 0x6f274c
mov edx, 0x6f274f
jmp 0x63ba4d
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.00613180
add esp, 0x28
mov esi, eax
jmp 0x63bce5
mov ebp, dword [esp + 0x48]
mov esi, 0x6b111e
mov edi, dword [esp + 0x4c]
mov ecx, ebp
cmp ecx, edi
jae 0x63baa3
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63baa3
inc ecx
cmp ecx, edi
jb 0x63ba96
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x63bad1
sub eax, 1
je 0x63bacc
sub eax, 1
je 0x63bac5
xor esi, esi
jmp 0x63bce5
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x63bad3
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x63bb32
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x63bae7
cmp bl, 0x2c
jne 0x63bb17
inc ecx
inc eax
cmp eax, edi
jae 0x63baf9
mov dl, byte [eax]
cmp dl, 0x30
jl 0x63baf9
cmp dl, 0x39
jle 0x63bae8
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x63bb17
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x63bb12
dec esi
sub edx, 1
jne 0x63bb07
mov esi, 0x6b111e
cmp eax, edi
jae 0x63bb32
cmp byte [eax], 0x5a
jne 0x63bb2c
mov eax, str._GMT
mov edi, 0x6f2718
jmp 0x63bb32
mov esi, 0x6c2c90
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x6b111e
mov eax, 0x6c866c
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.00613180
add esp, 0x38
mov esi, eax
jmp 0x63bce5
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.0x63bb9e.13
movzx eax, byte [eax + 0x63ce70]
jmp dword [eax*4 + 0x63ce60]
mov ecx, 2
jmp 0x63bbb1
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x63bb9e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x63bb9e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x73c75c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x63bb9e.13
cmp ebx, 0xc
jne 0x63bc0a
test edi, edi
je 0x63bc01
push edi
push esi
push ebp
call fcn.00643a30
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x63bcde
xor edi, edi
cmp esi, dword [esp + 0x4c]
jae 0x63bc01
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x63bc31
sub eax, 2
jne 0x63bc3a
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 0x63bcb8
cmp ecx, 0x800
jb 0x63bca0
cmp ecx, 0x10000
jb 0x63bc84
cmp ecx, 0x200000
jae 0x63bccf
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 0x63bc8c
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 0x63bca3
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 0x63bcbb
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x4c]
jb 0x63bc12
mov byte [edi + ebp], 0
jmp 0x63bcde
push ebp
call dword [0x73c760]
add esp, 4
or edi, 0xffffffff
xor ebp, ebp
xor esi, esi
test edi, edi
cmovns esi, ebp
test esi, esi
je case.0x63c7f7.7
mov edi, dword [esp + 0x128]
mov ebx, dword [esp + 0x12c]
cmp byte [edi + 0x42c], 0
je 0x63bd1c
push esi
push str.Serial_Number
push ebx
push edi
call fcn.0063ecf0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
jmp 0x63bd20
mov ebp, dword [esp + 0x14]
test ebx, ebx
jne 0x63bd33
push esi
push str.___Serial_Number:__s
push edi
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
push dword [esp + 0x5c]
lea eax, [esp + 0x118]
push dword [esp + 0x5c]
push eax
call fcn.0063dd70
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x63c7f7.7
cmp byte [edi + 0x42c], 0
je 0x63bd86
push esi
push str.Signature_Algorithm
push ebx
push edi
call fcn.0063ecf0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x63bd99
push esi
push str.___Signature_Algorithm:__s
push edi
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
cmp byte [esp + 0x92], 0
jne case.0x63c7f7.7
movzx ebx, byte [esp + 0x91]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x63c7f7.7
movzx eax, byte [eax + 0x63ceac]
jmp dword [eax*4 + 0x63ce84]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
sub eax, ecx
cmp eax, 1
je 0x63bdf7
xor esi, esi
jmp 0x63c216
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63c216
mov esi, dword [esp + 0x8c]
mov eax, esi
mov edx, dword [esp + 0x88]
sub eax, edx
jne 0x63be33
xor esi, esi
jmp 0x63c216
cmp eax, 4
jbe 0x63be49
push esi
push edx
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c216
movsx ecx, byte [edx]
sar ecx, 0x1f
nop
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x63be50
push ecx
cmp ecx, 0xa
mov eax, 0x6e1c40
mov ecx, 0x6b111e
cmovb eax, ecx
push eax
push str._s_x
call fcn.00613180
add esp, 0xc
mov esi, eax
jmp 0x63c216
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
inc eax
cmp eax, ecx
jbe 0x63be9d
xor esi, esi
jmp 0x63c216
push ecx
push eax
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c216
push dword [esp + 0x8c]
push dword [esp + 0x8c]
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c216
push 0x6b111e
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63c216
push 1
push dword [esp + 0x90]
push dword [esp + 0x90]
call fcn.0063d340
add esp, 0xc
mov esi, eax
jmp 0x63c216
mov esi, dword [esp + 0x88]
mov ecx, esi
mov edx, dword [esp + 0x8c]
cmp ecx, edx
jae 0x63bf20
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63bf20
inc ecx
cmp ecx, edx
jb 0x63bf13
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x63bf38
sub eax, 2
je 0x63bf3d
xor esi, esi
jmp 0x63c20f
mov edi, 0x6f2748
cmp ecx, edx
jb 0x63bf48
xor esi, esi
jmp 0x63c20f
cmp byte [ecx], 0x5a
jne 0x63bf59
mov ecx, 0x6f274c
mov edx, 0x6f274f
jmp 0x63bf5a
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.00613180
add esp, 0x28
mov esi, eax
jmp 0x63c20f
mov ebp, dword [esp + 0x88]
mov esi, 0x6b111e
mov edi, dword [esp + 0x8c]
mov ecx, ebp
cmp ecx, edi
jae 0x63bfbd
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63bfbd
inc ecx
cmp ecx, edi
jb 0x63bfb0
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x63bfeb
sub eax, 1
je 0x63bfe6
sub eax, 1
je 0x63bfdf
xor esi, esi
jmp 0x63c20b
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x63bfed
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x63c04c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x63c001
cmp bl, 0x2c
jne 0x63c031
inc ecx
inc eax
cmp eax, edi
jae 0x63c013
mov dl, byte [eax]
cmp dl, 0x30
jl 0x63c013
cmp dl, 0x39
jle 0x63c002
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x63c031
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x63c02c
dec esi
sub edx, 1
jne 0x63c021
mov esi, 0x6b111e
cmp eax, edi
jae 0x63c04c
cmp byte [eax], 0x5a
jne 0x63c046
mov eax, str._GMT
mov edi, 0x6f2718
jmp 0x63c04c
mov esi, 0x6c2c90
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x6b111e
mov eax, 0x6c866c
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.00613180
add esp, 0x38
mov esi, eax
jmp 0x63c20b
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.0x63c0be.13
movzx eax, byte [eax + 0x63cedc]
jmp dword [eax*4 + 0x63cecc]
mov ecx, 2
jmp 0x63c0d1
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x63c0be.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x63c0be.13
lea eax, [eax*4 + 1]
push eax
call dword [0x73c75c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x63c0be.13
cmp ebx, 0xc
jne 0x63c12a
test edi, edi
je 0x63c121
push edi
push esi
push ebp
call fcn.00643a30
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x63c204
xor edi, edi
cmp esi, dword [esp + 0x8c]
jae 0x63c121
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x63c154
sub eax, 2
jne 0x63c15d
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 0x63c1db
cmp ecx, 0x800
jb 0x63c1c3
cmp ecx, 0x10000
jb 0x63c1a7
cmp ecx, 0x200000
jae 0x63c1f5
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 0x63c1af
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 0x63c1c6
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 0x63c1de
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x8c]
jb 0x63c135
mov byte [edi + ebp], 0
jmp 0x63c204
push ebp
call dword [0x73c760]
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.0x63c7f7.7
cmp byte [edi + 0x42c], 0
mov ebx, dword [esp + 0x12c]
je 0x63c244
push esi
push str.Start_Date
push ebx
push edi
call fcn.0063ecf0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x63c257
push esi
push str.___Start_Date:__s
push edi
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
cmp byte [esp + 0xa2], 0
jne case.0x63c7f7.7
movzx ebx, byte [esp + 0xa1]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x63c7f7.7
movzx eax, byte [eax + 0x63cf18]
jmp dword [eax*4 + 0x63cef0]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x98]
sub eax, ecx
cmp eax, 1
je 0x63c2b5
xor esi, esi
jmp 0x63c6d6
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63c6d6
mov esi, dword [esp + 0x9c]
mov eax, esi
mov edx, dword [esp + 0x98]
sub eax, edx
jne 0x63c2f1
xor esi, esi
jmp 0x63c6d6
cmp eax, 4
jbe 0x63c307
push esi
push edx
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c6d6
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 0x63c310
push ecx
cmp ecx, 0xa
mov eax, 0x6e1c40
mov ecx, 0x6b111e
cmovb eax, ecx
push eax
push str._s_x
call fcn.00613180
add esp, 0xc
mov esi, eax
jmp 0x63c6d6
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x9c]
inc eax
cmp eax, ecx
jbe 0x63c35d
xor esi, esi
jmp 0x63c6d6
push ecx
push eax
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c6d6
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63c6d6
push 0x6b111e
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63c6d6
push 1
push dword [esp + 0xa0]
push dword [esp + 0xa0]
call fcn.0063d340
add esp, 0xc
mov esi, eax
jmp 0x63c6d6
mov esi, dword [esp + 0x98]
mov ecx, esi
mov edx, dword [esp + 0x9c]
cmp ecx, edx
jae 0x63c3e0
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63c3e0
inc ecx
cmp ecx, edx
jb 0x63c3d3
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x63c3f8
sub eax, 2
je 0x63c3fd
xor esi, esi
jmp 0x63c6cf
mov edi, 0x6f2748
cmp ecx, edx
jb 0x63c408
xor esi, esi
jmp 0x63c6cf
cmp byte [ecx], 0x5a
jne 0x63c419
mov ecx, 0x6f274c
mov edx, 0x6f274f
jmp 0x63c41a
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.00613180
add esp, 0x28
mov esi, eax
jmp 0x63c6cf
mov ebp, dword [esp + 0x98]
mov esi, 0x6b111e
mov edi, dword [esp + 0x9c]
mov ecx, ebp
cmp ecx, edi
jae 0x63c47d
nop dword [eax]
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63c47d
inc ecx
cmp ecx, edi
jb 0x63c470
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x63c4ab
sub eax, 1
je 0x63c4a6
sub eax, 1
je 0x63c49f
xor esi, esi
jmp 0x63c6cb
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x63c4ad
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x63c50c
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x63c4c1
cmp bl, 0x2c
jne 0x63c4f1
inc ecx
inc eax
cmp eax, edi
jae 0x63c4d3
mov dl, byte [eax]
cmp dl, 0x30
jl 0x63c4d3
cmp dl, 0x39
jle 0x63c4c2
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x63c4f1
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x63c4ec
dec esi
sub edx, 1
jne 0x63c4e1
mov esi, 0x6b111e
cmp eax, edi
jae 0x63c50c
cmp byte [eax], 0x5a
jne 0x63c506
mov eax, str._GMT
mov edi, 0x6f2718
jmp 0x63c50c
mov esi, 0x6c2c90
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x6b111e
mov eax, 0x6c866c
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.00613180
add esp, 0x38
mov esi, eax
jmp 0x63c6cb
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.0x63c57e.13
movzx eax, byte [eax + 0x63cf48]
jmp dword [eax*4 + 0x63cf38]
mov ecx, 2
jmp 0x63c591
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x63c57e.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x63c57e.13
lea eax, [eax*4 + 1]
push eax
call dword [0x73c75c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x63c57e.13
cmp ebx, 0xc
jne 0x63c5ea
test edi, edi
je 0x63c5e1
push edi
push esi
push ebp
call fcn.00643a30
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x63c6c4
xor edi, edi
cmp esi, dword [esp + 0x9c]
jae 0x63c5e1
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x63c614
sub eax, 2
jne 0x63c61d
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 0x63c69b
cmp ecx, 0x800
jb 0x63c683
cmp ecx, 0x10000
jb 0x63c667
cmp ecx, 0x200000
jae 0x63c6b5
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 0x63c66f
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 0x63c686
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 0x63c69e
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x9c]
jb 0x63c5f5
mov byte [edi + ebp], 0
jmp 0x63c6c4
push ebp
call dword [0x73c760]
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.0x63c7f7.7
cmp byte [edi + 0x42c], 0
mov ebx, dword [esp + 0x12c]
je 0x63c704
push esi
push str.Expire_Date
push ebx
push edi
call fcn.0063ecf0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebx, ebx
jne 0x63c717
push esi
push str.___Expire_Date:__s
push edi
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
push dword [esp + 0xcc]
lea eax, [esp + 0x118]
push dword [esp + 0xcc]
push eax
call fcn.0063dd70
mov esi, eax
add esp, 0xc
test esi, esi
je case.0x63c7f7.7
cmp byte [edi + 0x42c], 0
je 0x63c774
push esi
push str.Public_Key_Algorithm
push ebx
push edi
call fcn.0063ecf0
mov ebp, eax
add esp, 0x10
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x63c7c2
test ebx, ebx
jne 0x63c787
push esi
push str.___Public_Key_Algorithm:__s
push edi
call fcn.00603100
add esp, 0xc
lea eax, [esp + 0xd4]
push eax
lea eax, [esp + 0x118]
push eax
push esi
push ebx
push edi
call fcn.0063d4b0
add esp, 0x14
test eax, eax
je 0x63c7c2
push esi
mov ebp, 0x1b
call dword [0x73c760]
add esp, 4
mov eax, ebp
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x114
ret
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
cmp byte [esp + 0x72], 0
jne case.0x63c7f7.7
movzx ebx, byte [esp + 0x71]
lea eax, [ebx - 1]
cmp eax, 0x1d
ja case.0x63c7f7.7
movzx eax, byte [eax + 0x63cf84]
jmp dword [eax*4 + 0x63cf5c]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
sub eax, ecx
cmp eax, 1
je 0x63c814
xor esi, esi
jmp 0x63cbfe
cmp byte [ecx], 0
mov eax, str.TRUE
mov ecx, str.FALSE
cmove eax, ecx
push eax
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63cbfe
mov esi, dword [esp + 0x6c]
mov eax, esi
mov edx, dword [esp + 0x68]
sub eax, edx
jne 0x63c84a
xor esi, esi
jmp 0x63cbfe
cmp eax, 4
jbe 0x63c860
push esi
push edx
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63cbfe
movsx ecx, byte [edx]
sar ecx, 0x1f
movzx eax, byte [edx]
inc edx
shl ecx, 8
or ecx, eax
cmp edx, esi
jb 0x63c866
push ecx
cmp ecx, 0xa
mov eax, 0x6e1c40
mov ecx, 0x6b111e
cmovb eax, ecx
push eax
push str._s_x
call fcn.00613180
add esp, 0xc
mov esi, eax
jmp 0x63cbfe
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
inc eax
cmp eax, ecx
jbe 0x63c8ad
xor esi, esi
jmp 0x63cbfe
push ecx
push eax
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63cbfe
push dword [esp + 0x6c]
push dword [esp + 0x6c]
call fcn.0063ec80
add esp, 8
mov esi, eax
jmp 0x63cbfe
push 0x6b111e
call dword [0x73c768]
add esp, 4
mov esi, eax
jmp 0x63cbfe
push 1
push dword [esp + 0x70]
push dword [esp + 0x70]
call fcn.0063d340
add esp, 0xc
mov esi, eax
jmp 0x63cbfe
mov esi, dword [esp + 0x68]
mov ecx, esi
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jae 0x63c91e
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63c91e
inc ecx
cmp ecx, edx
jb 0x63c911
lea edi, [esi + 0xa]
mov eax, ecx
sub eax, edi
sub eax, 0
je 0x63c936
sub eax, 2
je 0x63c93b
xor esi, esi
jmp 0x63cbf7
mov edi, 0x6f2748
cmp ecx, edx
jb 0x63c946
xor esi, esi
jmp 0x63cbf7
cmp byte [ecx], 0x5a
jne 0x63c957
mov ecx, 0x6f274c
mov edx, 0x6f274f
jmp 0x63c958
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.00613180
add esp, 0x28
mov esi, eax
jmp 0x63cbf7
mov ebp, dword [esp + 0x68]
mov esi, 0x6b111e
mov edi, dword [esp + 0x6c]
mov ecx, ebp
cmp ecx, edi
jae 0x63c9ae
mov al, byte [ecx]
sub al, 0x30
cmp al, 9
ja 0x63c9ae
inc ecx
cmp ecx, edi
jb 0x63c9a1
mov eax, ecx
mov byte [esp + 0x13], 0x30
sub eax, ebp
sub eax, 0xc
sub eax, 0
je 0x63c9dc
sub eax, 1
je 0x63c9d7
sub eax, 1
je 0x63c9d0
xor esi, esi
jmp 0x63cbf3
mov al, byte [ecx - 2]
mov byte [esp + 0x13], al
mov bh, byte [ecx - 1]
jmp 0x63c9de
mov bh, 0x30
xor edx, edx
mov eax, ecx
cmp ecx, edi
jae 0x63ca3d
mov bl, byte [ecx]
cmp bl, 0x2e
je 0x63c9f2
cmp bl, 0x2c
jne 0x63ca22
inc ecx
inc eax
cmp eax, edi
jae 0x63ca04
mov dl, byte [eax]
cmp dl, 0x30
jl 0x63ca04
cmp dl, 0x39
jle 0x63c9f3
mov edx, eax
sub edx, ecx
sub edx, 1
je 0x63ca22
lea esi, [ecx - 1]
add esi, edx
cmp byte [esi], 0x30
jne 0x63ca1d
dec esi
sub edx, 1
jne 0x63ca12
mov esi, 0x6b111e
cmp eax, edi
jae 0x63ca3d
cmp byte [eax], 0x5a
jne 0x63ca37
mov eax, str._GMT
mov edi, 0x6f2718
jmp 0x63ca3d
mov esi, 0x6c2c90
inc eax
push eax
sub edi, eax
test edx, edx
push edi
push esi
push ecx
push edx
mov ecx, 0x6b111e
mov eax, 0x6c866c
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.00613180
add esp, 0x38
mov esi, eax
jmp 0x63cbf3
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.0x63caa9.13
movzx eax, byte [eax + 0x63cfb4]
jmp dword [eax*4 + 0x63cfa4]
mov ecx, 2
jmp 0x63cabc
mov ecx, 4
mov dword [esp + 0x18], ecx
xor edx, edx
mov eax, edi
div ecx
test edx, edx
jne case.0x63caa9.13
mov eax, edi
div ecx
cmp eax, 0x3fffffff
ja case.0x63caa9.13
lea eax, [eax*4 + 1]
push eax
call dword [0x73c75c]
mov ebp, eax
add esp, 4
test ebp, ebp
je case.0x63caa9.13
cmp ebx, 0xc
jne 0x63cb15
test edi, edi
je 0x63cb0c
push edi
push esi
push ebp
call fcn.00643a30
add esp, 0xc
mov byte [edi + ebp], 0
jmp 0x63cbec
xor edi, edi
cmp esi, dword [esp + 0x6c]
jae 0x63cb0c
nop dword [eax]
mov eax, dword [esp + 0x18]
xor ecx, ecx
sub eax, 2
je 0x63cb3f
sub eax, 2
jne 0x63cb48
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 0x63cbc6
cmp ecx, 0x800
jb 0x63cbae
cmp ecx, 0x10000
jb 0x63cb92
cmp ecx, 0x200000
jae 0x63cbdd
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 0x63cb9a
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 0x63cbb1
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 0x63cbc9
lea edx, [edi + ebp]
add edi, ebx
mov byte [edx], cl
cmp esi, dword [esp + 0x6c]
jb 0x63cb20
mov byte [edi + ebp], 0
jmp 0x63cbec
push ebp
call dword [0x73c760]
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.0x63c7f7.7
cmp byte [edi + 0x42c], 0
mov ebx, dword [esp + 0x12c]
je 0x63cc28
push esi
push str.Signature
push ebx
push edi
call fcn.0063ecf0
add esp, 0x10
mov ebp, eax
test ebx, ebx
jne 0x63cc3b
push esi
push str.___Signature:__s
push edi
call fcn.00603100
add esp, 0xc
push esi
call dword [0x73c760]
add esp, 4
test ebp, ebp
jne 0x63ce0b
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.00619e00
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x63ce0b
mov ecx, dword [esp + 0x1c]
lea eax, [ecx + 0x3f]
add ecx, 0x37
shr eax, 6
add eax, ecx
push eax
call dword [0x73c75c]
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x63ccb1
push dword [esp + 0x20]
call dword [0x73c760]
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 0x63cd14
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x63cd13
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x63cd0e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x63cd09
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x63ccc0
jmp 0x63cd14
add esi, 3
jmp 0x63cd14
add esi, 2
jmp 0x63cd14
inc esi
mov byte [esi + ebx], 0xa
lea edi, [esi + 1]
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x63cd41
mov eax, dword [esp + 0x20]
add eax, esi
push eax
lea eax, [ebx + edi]
push eax
call fcn.0063d420
add esi, 0x40
add esp, 8
add edi, eax
cmp esi, dword [esp + 0x1c]
jb 0x63cd23
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 0x63cda4
movzx eax, byte [ecx + 1]
mov byte [edx - 1], al
movzx eax, byte [ecx + 1]
test al, al
je 0x63cda3
movzx eax, byte [ecx + 2]
mov byte [edx], al
movzx eax, byte [ecx + 2]
test al, al
je 0x63cd9e
movzx eax, byte [ecx + 3]
mov byte [edx + 1], al
movzx eax, byte [ecx + 3]
add ecx, 4
test al, al
je 0x63cd99
add esi, 4
add edx, 4
cmp esi, 0x40
jb 0x63cd50
jmp 0x63cda4
add esi, 3
jmp 0x63cda4
add esi, 2
jmp 0x63cda4
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 [0x73c760]
mov esi, dword [esp + 0x12c]
add esp, 4
cmp byte [esi + 0x42c], 0
je 0x63cde8
push ebx
push str.Cert
push dword [esp + 0x134]
push esi
call fcn.0063ecf0
add esp, 0x10
mov ebp, eax
cmp dword [esp + 0x12c], 0
jne 0x63ce01
push ebx
push 0x6c468c
push esi
call fcn.00603100
add esp, 0xc
push ebx
call dword [0x73c760]
add esp, 4
pop esi
pop edi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x114
ret